Message ID | 87wp16h90p.fsf@linaro.org |
---|---|
State | New |
Headers | show |
Series | Use new vector constant encoding for CONST_VECTOR | expand |
On Thu, Dec 28, 2017 at 9:50 PM, Richard Sandiford <richard.sandiford@linaro.org> wrote: > 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. Ok. > > 2017-12-28 Richard Sandiford <richard.sandiford@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);
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);