]> git.ipfire.org Git - thirdparty/gcc.git/commit
aarch64: Remove SME2.1 forms of LUTI2/4
authorRichard Sandiford <richard.sandiford@arm.com>
Tue, 5 Mar 2024 17:51:24 +0000 (17:51 +0000)
committerRichard Sandiford <richard.sandiford@arm.com>
Tue, 5 Mar 2024 17:51:24 +0000 (17:51 +0000)
commit8776468d9e57ace5f832c1368243a6dbce9984d5
tree3b9694e9294251077d80cebf1c36205a7a7792ca
parent067a012bde15bfb62d9af309d9d524ebfe91b705
aarch64: Remove SME2.1 forms of LUTI2/4

I was over-eager when adding support for strided SME2 instructions
and accidentally included forms of LUTI2 and LUTI4 that are only
available with SME2.1, not SME2.  This patch removes them for now.
We're planning to add proper support for SME2.1 in the GCC 15
timeframe.

Sorry for the blunder :(

gcc/
* config/aarch64/aarch64.md (stride_type): Remove luti_consecutive
and luti_strided.
* config/aarch64/aarch64-sme.md
(@aarch64_sme_lut<LUTI_BITS><mode>): Remove stride_type attribute.
(@aarch64_sme_lut<LUTI_BITS><mode>_strided2): Delete.
(@aarch64_sme_lut<LUTI_BITS><mode>_strided4): Likewise.
* config/aarch64/aarch64-early-ra.cc (is_stride_candidate)
(early_ra::maybe_convert_to_strided_access): Remove support for
strided LUTI2 and LUTI4.

gcc/testsuite/
* gcc.target/aarch64/sme/strided_1.c (test5): Remove.
gcc/config/aarch64/aarch64-early-ra.cc
gcc/config/aarch64/aarch64-sme.md
gcc/config/aarch64/aarch64.md
gcc/testsuite/gcc.target/aarch64/sme/strided_1.c