This patch replaces target-independent uses of XVECEXP with uses
of CONST_VECTOR_ELT.  This kind of replacement isn't necessary
for code specific to targets other than AArch64.


2017-12-28  Richard Sandiford  <richard.sandif...@linaro.org>

gcc/
        * simplify-rtx.c (simplify_const_binary_operation): Use
        CONST_VECTOR_ELT instead of XVECEXP.

Index: gcc/simplify-rtx.c
===================================================================
--- gcc/simplify-rtx.c  2017-12-21 18:36:04.778333159 +0000
+++ gcc/simplify-rtx.c  2017-12-22 13:08:49.287660877 +0000
@@ -4070,9 +4070,9 @@ simplify_const_binary_operation (enum rt
          gcc_assert (op0_n_elts + op1_n_elts == n_elts);
 
          for (i = 0; i < op0_n_elts; ++i)
-           RTVEC_ELT (v, i) = XVECEXP (op0, 0, i);
+           RTVEC_ELT (v, i) = CONST_VECTOR_ELT (op0, i);
          for (i = 0; i < op1_n_elts; ++i)
-           RTVEC_ELT (v, op0_n_elts+i) = XVECEXP (op1, 0, i);
+           RTVEC_ELT (v, op0_n_elts+i) = CONST_VECTOR_ELT (op1, i);
        }
 
       return gen_rtx_CONST_VECTOR (mode, v);

Reply via email to