diff options
author | Richard Sandiford <richard.sandiford@arm.com> | 2019-11-15 14:37:57 +0000 |
---|---|---|
committer | Richard Sandiford <rsandifo@gcc.gnu.org> | 2019-11-15 14:37:57 +0000 |
commit | f31e515fd519fe6ec3dc0b5cf5b1388fd1373ba4 (patch) | |
tree | 634ce276a3251413184a9402f80b56a7bad672a8 /gcc/cp/class.c | |
parent | 63841daf70b8f5d9ab3014956ea2c0f22488660e (diff) | |
download | gcc-f31e515fd519fe6ec3dc0b5cf5b1388fd1373ba4.zip gcc-f31e515fd519fe6ec3dc0b5cf5b1388fd1373ba4.tar.gz gcc-f31e515fd519fe6ec3dc0b5cf5b1388fd1373ba4.tar.bz2 |
Fix vector/scalar to vector/vector conversion (PR92515)
r278235 broke conversions of vector/scalar shifts into vector/vector
shifts on targets that only provide the latter. We need to record
whether a conversion is required in that case too.
Also, the old useless_type_conversion_p condition seemed unnecessarily
strong, since the shift amount can have a different signedness from
the shifted value and its vector type is never assumed to be identical
to vectype. The patch therefore uses tree_nop_conversion_p instead.
2019-11-15 Richard Sandiford <richard.sandiford@arm.com>
gcc/
PR tree-optimization/92515
* tree-vect-stmts.c (vectorizable_shift): Record incompatible op1
types when converting a vector/scalar shift into a vector/vector one,
using tree_nop_conversion_p instead of useless_type_conversion_p.
Move the conversion code to the transform block.
From-SVN: r278295
Diffstat (limited to 'gcc/cp/class.c')
0 files changed, 0 insertions, 0 deletions