aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRichard Biener <rguenther@suse.de>2024-05-28 15:55:59 +0200
committerRichard Biener <rguenther@suse.de>2024-05-28 15:59:06 +0200
commitd8d70b783765361a8acef70fc9b54db526cd6ff5 (patch)
tree9062c289e8c7069ae7905d7556f678f55022f5b2
parentc08b0d3f7b3539b26031de31d88dea6b94474577 (diff)
downloadgcc-d8d70b783765361a8acef70fc9b54db526cd6ff5.zip
gcc-d8d70b783765361a8acef70fc9b54db526cd6ff5.tar.gz
gcc-d8d70b783765361a8acef70fc9b54db526cd6ff5.tar.bz2
target/115254 - fix gcc.dg/vect/vect-gather-4.c dump scanning
The dump scanning is supposed to check that we do not merge two sligtly different gathers into one SLP node but since we now SLP the store scanning for "ectorizing stmts using SLP" is no longer good. Instead the following makes us look for "stmt 1 .* = .MASK" which would be how the second lane of an SLP node looks like. We have to handle both .MASK_GATHER_LOAD (for targets with ifun mask gathers) and .MASK_LOAD (for ones without). Tested on x86_64-linux with and without native gather and on GCN where this now avoids a FAIL. PR target/115254 * gcc.dg/vect/vect-gather-4.c: Adjust dump scan.
-rw-r--r--gcc/testsuite/gcc.dg/vect/vect-gather-4.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/gcc/testsuite/gcc.dg/vect/vect-gather-4.c b/gcc/testsuite/gcc.dg/vect/vect-gather-4.c
index d18094d..edd9a67 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-gather-4.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-gather-4.c
@@ -45,4 +45,7 @@ f3 (int *restrict y, int *restrict x, int *restrict indices)
}
}
-/* { dg-final { scan-tree-dump-not "vectorizing stmts using SLP" vect } } */
+/* We do not want to see a two-lane .MASK_LOAD or .MASK_GATHER_LOAD since
+ the gathers are different on each lane. This is a bit fragile and
+ should possibly be turned into a runtime test. */
+/* { dg-final { scan-tree-dump-not "stmt 1 \[^\r\n\]* = .MASK" vect } } */