aboutsummaryrefslogtreecommitdiff
path: root/gcc/function-tests.c
diff options
context:
space:
mode:
authorChristophe Lyon <christophe.lyon@linaro.org>2021-06-03 12:06:38 +0000
committerChristophe Lyon <christophe.lyon@linaro.org>2021-06-03 12:06:38 +0000
commitf4242710c7966a965bbd14cd50ecdba28fd5717e (patch)
tree6680644bbeaba68bfc680b6a61e00a702c81c79c /gcc/function-tests.c
parent1eff5289b273041c9d71a4829c2600d283186ab6 (diff)
downloadgcc-f4242710c7966a965bbd14cd50ecdba28fd5717e.zip
gcc-f4242710c7966a965bbd14cd50ecdba28fd5717e.tar.gz
gcc-f4242710c7966a965bbd14cd50ecdba28fd5717e.tar.bz2
arm: Auto-vectorization for MVE: vabs
This patch adds support for auto-vectorization of absolute value computation using vabs. We use a similar pattern to what is used in neon.md and extend the existing neg<mode>2 expander to match both 'neg' and 'abs'. This implies renaming the existing abs<mode>2 define_insn in neon.md to avoid a clash with the new expander with the same name. 2021-06-03 Christophe Lyon <christophe.lyon@linaro.org> gcc/ * config/arm/mve.md (mve_vabsq_f<mode>): Use 'abs' instead of unspec. (mve_vabsq_s<mode>): Likewise. * config/arm/neon.md (abs<mode>2): Rename to neon_abs<mode>2. * config/arm/unspecs.md (VABSQ_F, VABSQ_S): Delete. * config/arm/vec-common.md (neg<mode>2): Rename to <absneg_str><mode>2. gcc/testsuite/ * gcc.target/arm/simd/mve-vabs.c: New test.
Diffstat (limited to 'gcc/function-tests.c')
0 files changed, 0 insertions, 0 deletions