]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
testsuite: Add some vect_variable_length XFAILs
authorRichard Sandiford <richard.sandiford@arm.com>
Fri, 9 Apr 2021 12:43:18 +0000 (13:43 +0100)
committerRichard Sandiford <richard.sandiford@arm.com>
Fri, 9 Apr 2021 12:43:18 +0000 (13:43 +0100)
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.

gcc/testsuite/g++.dg/tree-ssa/pr83518.C
gcc/testsuite/gcc.dg/pr96573.c
gcc/testsuite/gcc.dg/tree-ssa/pr84512.c
gcc/testsuite/gcc.dg/vect/bb-slp-43.c
gcc/testsuite/gcc.dg/vect/slp-reduc-11.c

index 3e153c51369f304bd08e47e176107464f9afceca..b8a2bd1ebbd9eb0df939c325164389dbf0b49493 100644 (file)
@@ -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 } } } */
index 63db69df029168366e59aba3739b7e509fb90ced..c7d8f9eb994ceedd7f288309d15694eef919af2e 100644 (file)
@@ -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;
 
index 3c027012670212eff79a5df245755605f09eaa9a..496c78b28dc760a5f6083d16c7c095bd70b6dc62 100644 (file)
@@ -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 } } } } */
index 40bd2e0dfbf2b6bed37d4d5b49662266670b3b29..a65d9513c4d519ca4bd96840e172a47ca957fa26 100644 (file)
@@ -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 } } } */
index a2f86fb8d660721da80d761e759a52d8777e0eb2..260d65cd4972733202231099ef4850f448495002 100644 (file)
@@ -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" } } */