This is the mail archive of the
mailing list for the GCC project.
r242083 - /branches/ARM/sve-branch/gcc/combine.c
- From: rsandifo at gcc dot gnu dot org
- To: gcc-cvs at gcc dot gnu dot org
- Date: Fri, 11 Nov 2016 16:56:51 -0000
- Subject: r242083 - /branches/ARM/sve-branch/gcc/combine.c
Date: Fri Nov 11 16:56:51 2016
New Revision: 242083
Fix simplify_shift_const_1 handling of vector shifts
simplify_shift_const_1 handles both shifts of scalars by scalars
and shifts of vectors by scalars. For vectors this means that
each element is shifted by the same amount.
(a) the two cases weren't always distinguished, so we'd try
things for vectors that only made sense for scalars.
(b) a lot of the range and bitcount checks were based on the
bitsize or precision of the full shifted operand, rather
than the mode of each element.
Fixing (b) accidentally exposed more optimisation opportunities,
although that wasn't the point of the patch.