diff options
author | Christophe Lyon <christophe.lyon@linaro.org> | 2020-11-19 16:25:48 +0000 |
---|---|---|
committer | Christophe Lyon <christophe.lyon@linaro.org> | 2021-01-15 10:37:44 +0000 |
commit | bfab355012ca0f5219da8beb04f2fdaf757d34b7 (patch) | |
tree | a82d4863be7568fb2360e959eacd99c8f59c438b /libatomic | |
parent | 7432f255b70811dafaf325d94036ac580891de69 (diff) | |
download | gcc-bfab355012ca0f5219da8beb04f2fdaf757d34b7.zip gcc-bfab355012ca0f5219da8beb04f2fdaf757d34b7.tar.gz gcc-bfab355012ca0f5219da8beb04f2fdaf757d34b7.tar.bz2 |
arm: Auto-vectorization for MVE: vshr
This patch enables MVE vshr instructions for auto-vectorization. New
MVE patterns are introduced that take a vector of constants as second
operand, all constants being equal.
The existing mve_vshrq_n_<supf><mode> is kept, as it takes a single
immediate as second operand, and is used by arm_mve.h.
The vashr<mode>3 and vlshr<mode>3 expanders are moved fron neon.md to
vec-common.md, updated to rely on the normal expansion scheme to
generate shifts by immediate.
2020-12-03 Christophe Lyon <christophe.lyon@linaro.org>
gcc/
* config/arm/mve.md (mve_vshrq_n_s<mode>_imm): New entry.
(mve_vshrq_n_u<mode>_imm): Likewise.
* config/arm/neon.md (vashr<mode>3, vlshr<mode>3): Move to ...
* config/arm/vec-common.md: ... here.
gcc/testsuite/
* gcc.target/arm/simd/mve-vshr.c: Add tests for vshr.
Diffstat (limited to 'libatomic')
0 files changed, 0 insertions, 0 deletions