aboutsummaryrefslogtreecommitdiff
path: root/libcpp
diff options
context:
space:
mode:
authorKyrylo Tkachov <kyrylo.tkachov@arm.com>2023-05-04 15:22:04 +0100
committerKyrylo Tkachov <kyrylo.tkachov@arm.com>2023-05-04 15:22:04 +0100
commit4657977541de1056a1cb651d6e2ba22472f62d04 (patch)
treea12fca8447f76aa27126b230501922a96f922adf /libcpp
parentfe3e4557471dfc7e617884186f41e18d6b4023c1 (diff)
downloadgcc-4657977541de1056a1cb651d6e2ba22472f62d04.zip
gcc-4657977541de1056a1cb651d6e2ba22472f62d04.tar.gz
gcc-4657977541de1056a1cb651d6e2ba22472f62d04.tar.bz2
[2/2] aarch64: Reimplement (R){ADD,SUB}HN2 patterns with standard RTL codes
Similar to the previous patch, this one converts the high-half versions of the patterns. With this patch we can remove the UNSPEC_* codes involved entirely. Bootstrapped and tested on aarch64-none-linux-gnu. Also tested on aarch64_be-none-elf. gcc/ChangeLog: * config/aarch64/aarch64-simd.md (aarch64_<sur><addsub>hn2<mode>_insn_le): Rename and reimplement with RTL codes to... (aarch64_<optab>hn2<mode>_insn_le): .. This. (aarch64_r<optab>hn2<mode>_insn_le): New pattern. (aarch64_<sur><addsub>hn2<mode>_insn_be): Rename and reimplement with RTL codes to... (aarch64_<optab>hn2<mode>_insn_be): ... This. (aarch64_r<optab>hn2<mode>_insn_be): New pattern. (aarch64_<sur><addsub>hn2<mode>): Rename and adjust expander to... (aarch64_<optab>hn2<mode>): ... This. (aarch64_r<optab>hn2<mode>): New expander. * config/aarch64/iterators.md (UNSPEC_ADDHN, UNSPEC_RADDHN, UNSPEC_SUBHN, UNSPEC_RSUBHN): Delete unspecs. (ADDSUBHN): Delete. (sur): Remove handling of the above. (addsub): Likewise.
Diffstat (limited to 'libcpp')
0 files changed, 0 insertions, 0 deletions