diff options
author | Richard Sandiford <richard.sandiford@arm.com> | 2020-01-06 18:00:15 +0000 |
---|---|---|
committer | Richard Sandiford <rsandifo@gcc.gnu.org> | 2020-01-06 18:00:15 +0000 |
commit | a0643f028e43aa2a5b09907295ecaadedac2d295 (patch) | |
tree | be2c3cd841d6c76521bace096462f0309b2d060f /gcc/cp/class.c | |
parent | 8a0ae3c130cd1e6beb0087a6967d33d8203f0dce (diff) | |
download | gcc-a0643f028e43aa2a5b09907295ecaadedac2d295.zip gcc-a0643f028e43aa2a5b09907295ecaadedac2d295.tar.gz gcc-a0643f028e43aa2a5b09907295ecaadedac2d295.tar.bz2 |
Require equal shift amounts for IFN_DIV_POW2
IFN_DIV_POW2 currently requires all elements to be shifted by the
same amount, in a similar way as for WIDEN_LSHIFT_EXPR. This patch
enforces that when building the SLP tree.
If in future targets want to support IFN_DIV_POW2 without this
restriction, we'll probably need the kind of vector-vector/
vector-scalar split that we already have for normal shifts.
2020-01-06 Richard Sandiford <richard.sandiford@arm.com>
gcc/
* tree-vect-slp.c (vect_build_slp_tree_1): Require all shifts
in an IFN_DIV_POW2 node to be equal.
gcc/testsuite/
* gcc.target/aarch64/sve/asrdiv_1.c: Remove trailing %s.
* gcc.target/aarch64/sve/asrdiv_2.c: New test.
* gcc.target/aarch64/sve/asrdiv_3.c: Likewise.
From-SVN: r279908
Diffstat (limited to 'gcc/cp/class.c')
0 files changed, 0 insertions, 0 deletions