diff options
author | Christophe Lyon <christophe.lyon@linaro.org> | 2020-11-13 12:34:12 +0000 |
---|---|---|
committer | Christophe Lyon <christophe.lyon@linaro.org> | 2020-12-11 16:22:28 +0000 |
commit | 75de6a2895f503905589934e30c68b9a5ec41f2f (patch) | |
tree | c9afb08bd9a03561439f0b5299ef3a1c437adce1 /gcc/ada/sinput-c.adb | |
parent | f7ad4446274831234e5acd3506fd2e01c7594c6a (diff) | |
download | gcc-75de6a2895f503905589934e30c68b9a5ec41f2f.zip gcc-75de6a2895f503905589934e30c68b9a5ec41f2f.tar.gz gcc-75de6a2895f503905589934e30c68b9a5ec41f2f.tar.bz2 |
arm: Auto-vectorization for MVE: vorr
This patch enables MVE vorrq instructions for auto-vectorization. MVE
vorrq insns in mve.md are modified to use ior instead of unspec
expression to support ior<mode>3. The ior<mode>3 expander is added to
vec-common.md
2020-12-03 Christophe Lyon <christophe.lyon@linaro.org>
gcc/
* config/arm/iterators.md (supf): Remove VORRQ_S and VORRQ_U.
(VORRQ): Remove.
* config/arm/mve.md (mve_vorrq_s<mode>): New entry for vorr
instruction using expression ior.
(mve_vorrq_u<mode>): New expander.
(mve_vorrq_f<mode>): Use ior code instead of unspec.
* config/arm/neon.md (ior<mode>3): Renamed into ior<mode>3_neon.
* config/arm/predicates.md (imm_for_neon_logic_operand): Enable
for MVE.
* config/arm/unspecs.md (VORRQ_S, VORRQ_U, VORRQ_F): Remove.
* config/arm/vec-common.md (ior<mode>3): New expander.
gcc/testsuite/
* gcc.target/arm/simd/mve-vorr.c: Add vorr tests.
Diffstat (limited to 'gcc/ada/sinput-c.adb')
0 files changed, 0 insertions, 0 deletions