From 3e14c126de157fe9b87a1ada6e689003735088e1 Mon Sep 17 00:00:00 2001 From: Richard Biener Date: Fri, 6 Dec 2024 09:37:35 +0100 Subject: [PATCH] testsuite/117714 - gcc.dg/vect/slp-reduc-4.c FAILs on 32-bit SPARC The testcase tries to ensure we can elide all permutations when vectorizing a MAX reduction. For SPARC the issue is that the MAX reduction isn't supported and since we're trying to fall back to single-lane SLP the dumps contain VEC_PERM_EXPR for the interleaving permute lowering. Before all-SLP that wouldn't be in the dumps when doing non-SLP, but eventually we'd fail to vectorize so no VEC_PERM_EXPRs would be in the dumps either. The following adds vect_no_int_min_max to the set of xfails for this particular scan as well, like the existing check for vectorizing. PR testsuite/117714 * gcc.dg/vect/slp-reduc-4.c: Add vect_no_int_min_max to the XFAIL for the VEC_PERM_EXPR scan. --- gcc/testsuite/gcc.dg/vect/slp-reduc-4.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gcc/testsuite/gcc.dg/vect/slp-reduc-4.c b/gcc/testsuite/gcc.dg/vect/slp-reduc-4.c index e2fe01bb13d..23c1a7373d7 100644 --- a/gcc/testsuite/gcc.dg/vect/slp-reduc-4.c +++ b/gcc/testsuite/gcc.dg/vect/slp-reduc-4.c @@ -61,5 +61,5 @@ int main (void) reduction exceeds the number of elements in a 128-bit granule. */ /* { dg-final { scan-tree-dump-times "vectorizing stmts using SLP" 1 "vect" { target { ! vect_multiple_sizes } xfail { vect_no_int_min_max || { aarch64_sve && vect_variable_length } } } } } */ /* { dg-final { scan-tree-dump "vectorizing stmts using SLP" "vect" { target { vect_multiple_sizes && { ! { vect_load_lanes && vect_strided8 } } } } } } */ -/* { dg-final { scan-tree-dump-times "VEC_PERM_EXPR" 0 "vect" { xfail { aarch64_sve && vect_variable_length } } } } */ +/* { dg-final { scan-tree-dump-times "VEC_PERM_EXPR" 0 "vect" { xfail { { aarch64_sve && vect_variable_length } || vect_no_int_min_max } } } } */