]> git.ipfire.org Git - thirdparty/gcc.git/commit
aarch64: Use VNx16BI for svcmp*_wide
authorRichard Sandiford <richard.sandiford@arm.com>
Mon, 4 Aug 2025 10:45:32 +0000 (11:45 +0100)
committerRichard Sandiford <richard.sandiford@arm.com>
Mon, 4 Aug 2025 10:45:32 +0000 (11:45 +0100)
commit690586e7960a9fb0b9939a770a37b6c9bf74a8bf
tree1cba38e62f5dc77b189e89ff5a633c461319a093
parentdec30d6f9bf5600d221a73926d0c00bf12a5b6f5
aarch64: Use VNx16BI for svcmp*_wide

This patch continues the work of making ACLE intrinsics use VNx16BI
for svbool_t results.  It deals with the svcmp*_wide intrinsics.

Since the only uses of these patterns are for ACLE intrinsics,
there didn't seem much point adding an "_acle" suffix.

gcc/
* config/aarch64/aarch64-sve.md (@aarch64_pred_cmp<cmp_op><mode>_wide):
Split into VNx16QI_ONLY and SVE_FULL_HSI patterns.  Use VNx16BI
results for both.
(*aarch64_pred_cmp<cmp_op><mode>_wide): New pattern.
(*aarch64_pred_cmp<cmp_op><mode>_wide_cc): Likewise.

gcc/testsuite/
* gcc.target/aarch64/sve/acle/general/cmpeq_5.c: New test.
* gcc.target/aarch64/sve/acle/general/cmpge_7.c: Likewise.
* gcc.target/aarch64/sve/acle/general/cmpge_8.c: Likewise.
* gcc.target/aarch64/sve/acle/general/cmpgt_7.c: Likewise.
* gcc.target/aarch64/sve/acle/general/cmpgt_8.c: Likewise.
* gcc.target/aarch64/sve/acle/general/cmple_7.c: Likewise.
* gcc.target/aarch64/sve/acle/general/cmple_8.c: Likewise.
* gcc.target/aarch64/sve/acle/general/cmplt_7.c: Likewise.
* gcc.target/aarch64/sve/acle/general/cmplt_8.c: Likewise.
* gcc.target/aarch64/sve/acle/general/cmpne_4.c: Likewise.
gcc/config/aarch64/aarch64-sve.md
gcc/testsuite/gcc.target/aarch64/sve/acle/general/cmpeq_5.c [new file with mode: 0644]
gcc/testsuite/gcc.target/aarch64/sve/acle/general/cmpge_7.c [new file with mode: 0644]
gcc/testsuite/gcc.target/aarch64/sve/acle/general/cmpge_8.c [new file with mode: 0644]
gcc/testsuite/gcc.target/aarch64/sve/acle/general/cmpgt_7.c [new file with mode: 0644]
gcc/testsuite/gcc.target/aarch64/sve/acle/general/cmpgt_8.c [new file with mode: 0644]
gcc/testsuite/gcc.target/aarch64/sve/acle/general/cmple_7.c [new file with mode: 0644]
gcc/testsuite/gcc.target/aarch64/sve/acle/general/cmple_8.c [new file with mode: 0644]
gcc/testsuite/gcc.target/aarch64/sve/acle/general/cmplt_7.c [new file with mode: 0644]
gcc/testsuite/gcc.target/aarch64/sve/acle/general/cmplt_8.c [new file with mode: 0644]
gcc/testsuite/gcc.target/aarch64/sve/acle/general/cmpne_4.c [new file with mode: 0644]