The aarch64_sve256_hw line forced the vector length, but didn't force
SVE itself. This meant that the associated:
/* { dg-final { scan-tree-dump "MASK_SCATTER_STORE" "vect" { target
aarch64_sve256_hw } } } */
wouldn't always fire. I imagine this was tested with SVE enabled by
default, which would have masked the problem.
Tested on aarch64-linux-gnu & pushed.
Richard
gcc/testsuite/
* gcc.dg/vect/pr99102.c: Force SVE when forcing the vector length.
---
gcc/testsuite/gcc.dg/vect/pr99102.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/gcc/testsuite/gcc.dg/vect/pr99102.c
b/gcc/testsuite/gcc.dg/vect/pr99102.c
index 071741f5e48..fcbf0367402 100644
--- a/gcc/testsuite/gcc.dg/vect/pr99102.c
+++ b/gcc/testsuite/gcc.dg/vect/pr99102.c
@@ -1,5 +1,5 @@
/* { dg-additional-options "-O2 -ftree-vectorize -fno-vect-cost-model
-fdump-tree-vect-details" } */
-/* { dg-additional-options "-msve-vector-bits=256" { target aarch64_sve256_hw
} } */
+/* { dg-additional-options "-march=armv8-a+sve -msve-vector-bits=256" { target
aarch64_sve256_hw } } */
long a[44];
short d, e = -7;
__attribute__((noipa)) void b(char f, short j, short k, unsigned l) {
--
2.43.0