aboutsummaryrefslogtreecommitdiff
path: root/libatomic
diff options
context:
space:
mode:
authorChristophe Lyon <christophe.lyon@linaro.org>2020-11-19 16:25:48 +0000
committerChristophe Lyon <christophe.lyon@linaro.org>2021-01-15 10:37:44 +0000
commitbfab355012ca0f5219da8beb04f2fdaf757d34b7 (patch)
treea82d4863be7568fb2360e959eacd99c8f59c438b /libatomic
parent7432f255b70811dafaf325d94036ac580891de69 (diff)
downloadgcc-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