From: Richard Sandiford Date: Fri, 9 Apr 2021 12:43:18 +0000 (+0100) Subject: testsuite: Add some vect_variable_length XFAILs X-Git-Tag: basepoints/gcc-12~166 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=00138f9b2b96b61f49605fa261012a330b2668b1;p=thirdparty%2Fgcc.git testsuite: Add some vect_variable_length XFAILs This patch adds XFAILs for some tests that fail with variable-length vectors. For pr96573.c I'd wondered about instead extending the regexp. The code we generate isn't very good though, so it doesn't seem worth matching. (Fixing the bad code is on the todo list.) gcc/testsuite/ * g++.dg/tree-ssa/pr83518.C: XFAIL for vect_variable_length. * gcc.dg/pr96573.c: Likewise. * gcc.dg/tree-ssa/pr84512.c: Likewise. * gcc.dg/vect/bb-slp-43.c: Likewise. * gcc.dg/vect/slp-reduc-11.c: Likewise. --- diff --git a/gcc/testsuite/g++.dg/tree-ssa/pr83518.C b/gcc/testsuite/g++.dg/tree-ssa/pr83518.C index 3e153c51369f..b8a2bd1ebbd9 100644 --- a/gcc/testsuite/g++.dg/tree-ssa/pr83518.C +++ b/gcc/testsuite/g++.dg/tree-ssa/pr83518.C @@ -24,4 +24,4 @@ unsigned test() return sum; } -/* { dg-final { scan-tree-dump "return 15;" "optimized" } } */ +/* { dg-final { scan-tree-dump "return 15;" "optimized" { xfail vect_variable_length } } } */ diff --git a/gcc/testsuite/gcc.dg/pr96573.c b/gcc/testsuite/gcc.dg/pr96573.c index 63db69df0291..c7d8f9eb994c 100644 --- a/gcc/testsuite/gcc.dg/pr96573.c +++ b/gcc/testsuite/gcc.dg/pr96573.c @@ -2,7 +2,7 @@ /* { dg-do compile { target { lp64 || ilp32 } } } */ /* { dg-require-effective-target bswap } */ /* { dg-options "-O3 -fdump-tree-optimized" } */ -/* { dg-final { scan-tree-dump "__builtin_bswap\|VEC_PERM_EXPR\[^\n\r]*7, 6, 5, 4, 3, 2, 1, 0" "optimized" } } */ +/* { dg-final { scan-tree-dump "__builtin_bswap\|VEC_PERM_EXPR\[^\n\r]*7, 6, 5, 4, 3, 2, 1, 0" "optimized" { xfail vect_variable_length } } } */ typedef __SIZE_TYPE__ size_t; diff --git a/gcc/testsuite/gcc.dg/tree-ssa/pr84512.c b/gcc/testsuite/gcc.dg/tree-ssa/pr84512.c index 3c0270126702..496c78b28dc7 100644 --- a/gcc/testsuite/gcc.dg/tree-ssa/pr84512.c +++ b/gcc/testsuite/gcc.dg/tree-ssa/pr84512.c @@ -13,4 +13,4 @@ int foo() } /* Listed targets xfailed due to PR84958. */ -/* { dg-final { scan-tree-dump "return 285;" "optimized" { xfail { amdgcn*-*-* } } } } */ +/* { dg-final { scan-tree-dump "return 285;" "optimized" { xfail { amdgcn*-*-* || vect_variable_length } } } } */ diff --git a/gcc/testsuite/gcc.dg/vect/bb-slp-43.c b/gcc/testsuite/gcc.dg/vect/bb-slp-43.c index 40bd2e0dfbf2..a65d9513c4d5 100644 --- a/gcc/testsuite/gcc.dg/vect/bb-slp-43.c +++ b/gcc/testsuite/gcc.dg/vect/bb-slp-43.c @@ -14,4 +14,4 @@ f (int *restrict x, short *restrict y) } /* { dg-final { scan-tree-dump-not "mixed mask and nonmask" "slp2" } } */ -/* { dg-final { scan-tree-dump-not "vector operands from scalars" "slp2" { target { { vect_int && vect_bool_cmp } && { vect_unpack && vect_hw_misalign } } } } } */ +/* { dg-final { scan-tree-dump-not "vector operands from scalars" "slp2" { target { { vect_int && vect_bool_cmp } && { vect_unpack && vect_hw_misalign } } xfail vect_variable_length } } } */ diff --git a/gcc/testsuite/gcc.dg/vect/slp-reduc-11.c b/gcc/testsuite/gcc.dg/vect/slp-reduc-11.c index a2f86fb8d660..260d65cd4972 100644 --- a/gcc/testsuite/gcc.dg/vect/slp-reduc-11.c +++ b/gcc/testsuite/gcc.dg/vect/slp-reduc-11.c @@ -16,5 +16,5 @@ double dotprod(const double *a, const double *b, unsigned long long n) /* We should use a SLP reduction even without -ffast-math by using a VF of one. */ -/* { dg-final { scan-tree-dump "vectorizing stmts using SLP" "vect" } } */ +/* { dg-final { scan-tree-dump "vectorizing stmts using SLP" "vect" { xfail vect_variable_length } } } */ /* { dg-final { scan-tree-dump "vectorized 1 loops" "vect" } } */