Update in V3.
>The testcase looks bogus:
>
> b[i+k] = b[i+k-5] + 2;
>
>accesses b[-3], can you instead adjust the inner loop to start with k == 4?
Changed, also adjust b[100] to b[200] to avoid array out of bound.
>Please remove this testcase - even with fully masking we'd need alias
>versioning.
Changed.
Ready push to trunk.
gcc/testsuite/ChangeLog:
* gcc.dg/fstack-protector-strong.c: Adjust
scan-assembler-times.
* gcc.dg/graphite/scop-6.c: Refine the testcase to avoid array
out of bounds.
* gcc.dg/graphite/scop-9.c: Ditto.
* gcc.dg/tree-ssa/ivopts-lt-2.c: Add -fno-tree-vectorize.
* gcc.dg/tree-ssa/ivopts-lt.c: Ditto.
* gcc.dg/tree-ssa/loop-16.c: Ditto.
* gcc.dg/tree-ssa/loop-28.c: Ditto.
* gcc.dg/tree-ssa/loop-bound-2.c: Ditto.
* gcc.dg/tree-ssa/loop-bound-4.c: Ditto.
* gcc.dg/tree-ssa/loop-bound-6.c: Ditto.
* gcc.dg/tree-ssa/predcom-4.c: Ditto.
* gcc.dg/tree-ssa/predcom-5.c: Ditto.
* gcc.dg/tree-ssa/scev-11.c: Ditto.
* gcc.dg/tree-ssa/scev-9.c: Ditto.
* gcc.dg/tree-ssa/split-path-11.c: Ditto.
* gcc.dg/unroll-8.c: Ditto.
* gcc.dg/var-expand1.c: Ditto.
* gcc.dg/vect/vect-cost-model-6.c: Removed.
* gcc.target/i386/pr86270.c: Ditto.
* gcc.target/i386/pr86722.c: Ditto.
* gcc.target/x86_64/abi/callabi/leaf-2.c: Ditto.
---
gcc/testsuite/gcc.dg/fstack-protector-strong.c | 2 +-
gcc/testsuite/gcc.dg/graphite/scop-6.c | 7 +++----
gcc/testsuite/gcc.dg/graphite/scop-9.c | 4 ++--
gcc/testsuite/gcc.dg/tree-ssa/ivopts-lt-2.c | 2 +-
gcc/testsuite/gcc.dg/tree-ssa/ivopts-lt.c | 2 +-
gcc/testsuite/gcc.dg/tree-ssa/loop-16.c | 2 +-
gcc/testsuite/gcc.dg/tree-ssa/loop-28.c | 2 +-
gcc/testsuite/gcc.dg/tree-ssa/loop-bound-2.c | 2 +-
gcc/testsuite/gcc.dg/tree-ssa/loop-bound-4.c | 2 +-
gcc/testsuite/gcc.dg/tree-ssa/loop-bound-6.c | 2 +-
gcc/testsuite/gcc.dg/tree-ssa/predcom-4.c | 2 +-
gcc/testsuite/gcc.dg/tree-ssa/predcom-5.c | 2 +-
gcc/testsuite/gcc.dg/tree-ssa/scev-11.c | 2 +-
gcc/testsuite/gcc.dg/tree-ssa/scev-9.c | 2 +-
gcc/testsuite/gcc.dg/tree-ssa/split-path-11.c | 2 +-
gcc/testsuite/gcc.dg/unroll-8.c | 3 +--
gcc/testsuite/gcc.dg/var-expand1.c | 2 +-
gcc/testsuite/gcc.dg/vect/vect-cost-model-6.c | 12 ------------
gcc/testsuite/gcc.target/i386/pr86270.c | 2 +-
gcc/testsuite/gcc.target/i386/pr86722.c | 2 +-
gcc/testsuite/gcc.target/x86_64/abi/callabi/leaf-2.c | 2 +-
21 files changed, 23 insertions(+), 37 deletions(-)
delete mode 100644 gcc/testsuite/gcc.dg/vect/vect-cost-model-6.c
diff --git a/gcc/testsuite/gcc.dg/fstack-protector-strong.c
b/gcc/testsuite/gcc.dg/fstack-protector-strong.c
index 94dc3508f1a..b9f63966b7c 100644
--- a/gcc/testsuite/gcc.dg/fstack-protector-strong.c
+++ b/gcc/testsuite/gcc.dg/fstack-protector-strong.c
@@ -154,4 +154,4 @@ void foo12 ()
global3 ();
}
-/* { dg-final { scan-assembler-times "stack_chk_fail" 12 } } */
+/* { dg-final { scan-assembler-times "stack_chk_fail" 11 } } */
diff --git a/gcc/testsuite/gcc.dg/graphite/scop-6.c
b/gcc/testsuite/gcc.dg/graphite/scop-6.c
index 9bc1d9f4ccd..e7e0a080c5f 100644
--- a/gcc/testsuite/gcc.dg/graphite/scop-6.c
+++ b/gcc/testsuite/gcc.dg/graphite/scop-6.c
@@ -4,7 +4,7 @@ int toto()
{
int i, j, k;
int a[100][100];
- int b[100];
+ int b[200];
for (i = 1; i < 100; i++)
{
@@ -18,9 +18,8 @@ int toto()
for (k = 1; k < 100; k++)
b[i+k] = b[i+k-1] + 2;
}
-
- for (k = 1; k < 100; k++)
- b[i+k] = b[i+k-5] + 2;
+ for (k = 4; k < 100; k++)
+ b[i+k] = b[i+k-5] + 2;
}
return a[3][5] + b[2];
diff --git a/gcc/testsuite/gcc.dg/graphite/scop-9.c
b/gcc/testsuite/gcc.dg/graphite/scop-9.c
index b19291be2f8..2676452b1e6 100644
--- a/gcc/testsuite/gcc.dg/graphite/scop-9.c
+++ b/gcc/testsuite/gcc.dg/graphite/scop-9.c
@@ -4,7 +4,7 @@ int toto()
{
int i, j, k;
int a[100][100];
- int b[100];
+ int b[200];
for (i = 1; i < 100; i++)
{
@@ -14,7 +14,7 @@ int toto()
if (i * 2 == i + 8)
a[i][i] = 2;
- for (k = 1; k < 100; k++)
+ for (k = 4; k < 100; k++)
b[i+k] = b[i+k-5] + 2;
}
diff --git a/gcc/testsuite/gcc.dg/tree-ssa/ivopts-lt-2.c
b/gcc/testsuite/gcc.dg/tree-ssa/ivopts-lt-2.c
index bdbdbff19ff..be325775fbb 100644
--- a/gcc/testsuite/gcc.dg/tree-ssa/ivopts-lt-2.c
+++ b/gcc/testsuite/gcc.dg/tree-ssa/ivopts-lt-2.c
@@ -1,5 +1,5 @@
/* { dg-do compile } */
-/* { dg-options "-O2 -fno-tree-loop-distribute-patterns -fdump-tree-ivopts" }
*/
+/* { dg-options "-O2 -fno-tree-vectorize -fno-tree-loop-distribute-patterns
-fdump-tree-ivopts" } */
/* { dg-skip-if "PR68644" { hppa*-*-* powerpc*-*-* } } */
void
diff --git a/gcc/testsuite/gcc.dg/tree-ssa/ivopts-lt.c
b/gcc/testsuite/gcc.dg/tree-ssa/ivopts-lt.c
index 71d7f672c44..8d2b9d39355 100644
--- a/gcc/testsuite/gcc.dg/tree-ssa/ivopts-lt.c
+++ b/gcc/testsuite/gcc.dg/tree-ssa/ivopts-lt.c
@@ -1,5 +1,5 @@
/* { dg-do compile } */
-/* { dg-options "-O2 -fno-tree-loop-distribute-patterns -fdump-tree-ivopts" }
*/
+/* { dg-options "-O2 -fno-tree-vectorize -fno-tree-loop-distribute-patterns
-fdump-tree-ivopts" } */
/* { dg-require-effective-target stdint_types } */
#include "stdint.h"
diff --git a/gcc/testsuite/gcc.dg/tree-ssa/loop-16.c
b/gcc/testsuite/gcc.dg/tree-ssa/loop-16.c
index 6bcb56cf3a9..92587f17df0 100644
--- a/gcc/testsuite/gcc.dg/tree-ssa/loop-16.c
+++ b/gcc/testsuite/gcc.dg/tree-ssa/loop-16.c
@@ -2,7 +2,7 @@
at most 100 times, thus the (32-bit) induction variables do not overflow,
and we may use 64-bit variable to represent them. */
-/* { dg-options "-O2 -fdump-tree-optimized" } */
+/* { dg-options "-O2 -fno-tree-vectorize -fdump-tree-optimized" } */
/* { dg-do compile { target i?86-*-* x86_64-*-* } } */
unsigned a[100];
diff --git a/gcc/testsuite/gcc.dg/tree-ssa/loop-28.c
b/gcc/testsuite/gcc.dg/tree-ssa/loop-28.c
index 3ca0ab8ea5f..85769c914c3 100644
--- a/gcc/testsuite/gcc.dg/tree-ssa/loop-28.c
+++ b/gcc/testsuite/gcc.dg/tree-ssa/loop-28.c
@@ -1,5 +1,5 @@
/* { dg-do compile { target { i?86-*-* x86_64-*-* } } } */
-/* { dg-options "-O2 -fprefetch-loop-arrays -march=amdfam10
-fdump-tree-optimized -fdump-tree-aprefetch --param max-unrolled-insns=1000" }
*/
+/* { dg-options "-O2 -fno-tree-vectorize -fprefetch-loop-arrays
-march=amdfam10 -fdump-tree-optimized -fdump-tree-aprefetch --param
max-unrolled-insns=1000" } */
char x[100000];
diff --git a/gcc/testsuite/gcc.dg/tree-ssa/loop-bound-2.c
b/gcc/testsuite/gcc.dg/tree-ssa/loop-bound-2.c
index 802dd290e50..d93e5654e7a 100644
--- a/gcc/testsuite/gcc.dg/tree-ssa/loop-bound-2.c
+++ b/gcc/testsuite/gcc.dg/tree-ssa/loop-bound-2.c
@@ -1,5 +1,5 @@
/* { dg-do compile } */
-/* { dg-options "-O2 -fdump-tree-ivopts-details" } */
+/* { dg-options "-O2 -fno-tree-vectorize -fdump-tree-ivopts-details" } */
int *a;
diff --git a/gcc/testsuite/gcc.dg/tree-ssa/loop-bound-4.c
b/gcc/testsuite/gcc.dg/tree-ssa/loop-bound-4.c
index b9d7d4196aa..543d9a5120b 100644
--- a/gcc/testsuite/gcc.dg/tree-ssa/loop-bound-4.c
+++ b/gcc/testsuite/gcc.dg/tree-ssa/loop-bound-4.c
@@ -1,5 +1,5 @@
/* { dg-do compile } */
-/* { dg-options "-O2 -fdump-tree-ivopts-details" } */
+/* { dg-options "-O2 -fno-tree-vectorize -fdump-tree-ivopts-details" } */
int *a;
diff --git a/gcc/testsuite/gcc.dg/tree-ssa/loop-bound-6.c
b/gcc/testsuite/gcc.dg/tree-ssa/loop-bound-6.c
index 8319434985d..74f88f17f78 100644
--- a/gcc/testsuite/gcc.dg/tree-ssa/loop-bound-6.c
+++ b/gcc/testsuite/gcc.dg/tree-ssa/loop-bound-6.c
@@ -1,5 +1,5 @@
/* { dg-do compile } */
-/* { dg-options "-O2 -fdump-tree-ivopts-details" } */
+/* { dg-options "-O2 -fno-tree-vectorize -fdump-tree-ivopts-details" } */
int *a;
diff --git a/gcc/testsuite/gcc.dg/tree-ssa/predcom-4.c
b/gcc/testsuite/gcc.dg/tree-ssa/predcom-4.c
index af9ae0e0f3d..7c99ccd109a 100644
--- a/gcc/testsuite/gcc.dg/tree-ssa/predcom-4.c
+++ b/gcc/testsuite/gcc.dg/tree-ssa/predcom-4.c
@@ -1,5 +1,5 @@
/* { dg-do run } */
-/* { dg-options "-O2 -funroll-loops --param max-unroll-times=8
-fpredictive-commoning -fdump-tree-pcom-details-blocks" } */
+/* { dg-options "-O2 -fno-tree-vectorize -funroll-loops --param
max-unroll-times=8 -fpredictive-commoning -fdump-tree-pcom-details-blocks" } */
/* Test for predictive commoning of expressions, without reassociation. */
diff --git a/gcc/testsuite/gcc.dg/tree-ssa/predcom-5.c
b/gcc/testsuite/gcc.dg/tree-ssa/predcom-5.c
index 52adb59d669..6b8a13fe830 100644
--- a/gcc/testsuite/gcc.dg/tree-ssa/predcom-5.c
+++ b/gcc/testsuite/gcc.dg/tree-ssa/predcom-5.c
@@ -1,5 +1,5 @@
/* { dg-do run } */
-/* { dg-options "-O2 -funroll-loops --param max-unroll-times=8
-fpredictive-commoning -fdump-tree-pcom-details-blocks" } */
+/* { dg-options "-O2 -fno-tree-vectorize -funroll-loops --param
max-unroll-times=8 -fpredictive-commoning -fdump-tree-pcom-details-blocks" } */
/* Test for predictive commoning of expressions, with reassociation. */
diff --git a/gcc/testsuite/gcc.dg/tree-ssa/scev-11.c
b/gcc/testsuite/gcc.dg/tree-ssa/scev-11.c
index f15688538ea..2506eb89b74 100644
--- a/gcc/testsuite/gcc.dg/tree-ssa/scev-11.c
+++ b/gcc/testsuite/gcc.dg/tree-ssa/scev-11.c
@@ -1,5 +1,5 @@
/* { dg-do compile } */
-/* { dg-options "-O2 -fdump-tree-ivopts-details" } */
+/* { dg-options "-O2 -fno-tree-vectorize -fdump-tree-ivopts-details" } */
int a[128];
extern int b[];
diff --git a/gcc/testsuite/gcc.dg/tree-ssa/scev-9.c
b/gcc/testsuite/gcc.dg/tree-ssa/scev-9.c
index cbd7c85edfa..7381e961e93 100644
--- a/gcc/testsuite/gcc.dg/tree-ssa/scev-9.c
+++ b/gcc/testsuite/gcc.dg/tree-ssa/scev-9.c
@@ -1,5 +1,5 @@
/* { dg-do compile } */
-/* { dg-options "-O2 -fdump-tree-ivopts-details" } */
+/* { dg-options "-O2 -fno-tree-vectorize -fdump-tree-ivopts-details" } */
int *a;
diff --git a/gcc/testsuite/gcc.dg/tree-ssa/split-path-11.c
b/gcc/testsuite/gcc.dg/tree-ssa/split-path-11.c
index 6c15c16151b..1f042414467 100644
--- a/gcc/testsuite/gcc.dg/tree-ssa/split-path-11.c
+++ b/gcc/testsuite/gcc.dg/tree-ssa/split-path-11.c
@@ -1,5 +1,5 @@
/* { dg-do compile } */
-/* { dg-options "-O2 -fsplit-paths -fdump-tree-split-paths-details -w" } */
+/* { dg-options "-O2 -fno-tree-vectorize -fsplit-paths
-fdump-tree-split-paths-details -w" } */
void foo(unsigned long long *M)
{
diff --git a/gcc/testsuite/gcc.dg/unroll-8.c b/gcc/testsuite/gcc.dg/unroll-8.c
index 4388f47d4c7..6cd8dacc365 100644
--- a/gcc/testsuite/gcc.dg/unroll-8.c
+++ b/gcc/testsuite/gcc.dg/unroll-8.c
@@ -1,6 +1,5 @@
/* { dg-do compile } */
-/* { dg-options "-O2 -fdump-rtl-loop2_unroll-details-blocks -funroll-loops" }
*/
-/* { dg-additional-options "-fno-tree-vectorize" { target amdgcn-*-* } } */
+/* { dg-options "-O2 -fno-tree-vectorize
-fdump-rtl-loop2_unroll-details-blocks -funroll-loops" } */
struct a {int a[7];};
int t(struct a *a, int n)
diff --git a/gcc/testsuite/gcc.dg/var-expand1.c
b/gcc/testsuite/gcc.dg/var-expand1.c
index 3d536cef2b3..1f3f3b3338c 100644
--- a/gcc/testsuite/gcc.dg/var-expand1.c
+++ b/gcc/testsuite/gcc.dg/var-expand1.c
@@ -2,7 +2,7 @@
/* We don't (and don't want to) perform this optimisation on soft-float
targets, where each addition is a library call. */
/* { dg-require-effective-target hard_float } */
-/* { dg-options "-O2 -funroll-loops --fast-math
-fvariable-expansion-in-unroller -fdump-rtl-loop2_unroll" } */
+/* { dg-options "-O2 -fno-tree-vectorize -funroll-loops --fast-math
-fvariable-expansion-in-unroller -fdump-rtl-loop2_unroll" } */
/* { dg-additional-options "--param max-completely-peel-times=16 --param
max-unroll-times=8" { target s390*-*-* } } */
extern void abort (void);
diff --git a/gcc/testsuite/gcc.dg/vect/vect-cost-model-6.c
b/gcc/testsuite/gcc.dg/vect/vect-cost-model-6.c
deleted file mode 100644
index 552febb5fee..00000000000
--- a/gcc/testsuite/gcc.dg/vect/vect-cost-model-6.c
+++ /dev/null
@@ -1,12 +0,0 @@
-/* { dg-do compile } */
-/* { dg-additional-options "-O2 -ftree-vectorize -fvect-cost-model=very-cheap"
} */
-
-void
-f (int *restrict x, int *restrict y)
-{
- for (unsigned int i = 0; i < 1023; ++i)
- x[i] += y[i];
-}
-
-/* { dg-final { scan-tree-dump {LOOP VECTORIZED} vect { target { vect_int &&
vect_partial_vectors_usage_2 } } } } */
-/* { dg-final { scan-tree-dump-not {LOOP VECTORIZED} vect { target { vect_int
&& { ! vect_partial_vectors_usage_2 } } } } } */
diff --git a/gcc/testsuite/gcc.target/i386/pr86270.c
b/gcc/testsuite/gcc.target/i386/pr86270.c
index 98b012caf23..68562446fa4 100644
--- a/gcc/testsuite/gcc.target/i386/pr86270.c
+++ b/gcc/testsuite/gcc.target/i386/pr86270.c
@@ -1,5 +1,5 @@
/* { dg-do compile } */
-/* { dg-options "-O2 -fno-unroll-loops" } */
+/* { dg-options "-O2 -fno-tree-vectorize -fno-unroll-loops" } */
int *a;
long len;
diff --git a/gcc/testsuite/gcc.target/i386/pr86722.c
b/gcc/testsuite/gcc.target/i386/pr86722.c
index 95ddbd8ddb9..dd01ceaa0df 100644
--- a/gcc/testsuite/gcc.target/i386/pr86722.c
+++ b/gcc/testsuite/gcc.target/i386/pr86722.c
@@ -1,5 +1,5 @@
/* { dg-do compile { target { ! ia32 } } } */
-/* { dg-options "-O2 -mno-avx -msse" } */
+/* { dg-options "-O2 -fno-tree-vectorize -mno-avx -msse" } */
void f(double*d,double*e){
for(;d<e;++d)
diff --git a/gcc/testsuite/gcc.target/x86_64/abi/callabi/leaf-2.c
b/gcc/testsuite/gcc.target/x86_64/abi/callabi/leaf-2.c
index 2a54bc89cfc..5f3d3e166af 100644
--- a/gcc/testsuite/gcc.target/x86_64/abi/callabi/leaf-2.c
+++ b/gcc/testsuite/gcc.target/x86_64/abi/callabi/leaf-2.c
@@ -1,5 +1,5 @@
/* { dg-do compile } */
-/* { dg-options "-O2 -mabi=sysv" } */
+/* { dg-options "-O2 -fno-tree-vectorize -mabi=sysv" } */
extern int glb1, gbl2, gbl3;
--
2.31.1