aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTamar Christina <tamar.christina@arm.com>2025-02-26 07:31:28 +0000
committerTamar Christina <tamar.christina@arm.com>2025-02-26 07:31:28 +0000
commitebe7cd9f2833a79877fbc56829c4f37a518a9b1d (patch)
tree6c6ab319b37023f50cc9d7f3c51c045849382c49
parent7de2f64d72f02c0a7e69b9d48a834e0c78517a50 (diff)
downloadgcc-ebe7cd9f2833a79877fbc56829c4f37a518a9b1d.zip
gcc-ebe7cd9f2833a79877fbc56829c4f37a518a9b1d.tar.gz
gcc-ebe7cd9f2833a79877fbc56829c4f37a518a9b1d.tar.bz2
testsuite: Add pragma novector to more tests [PR118464]
These loops will now vectorize the entry finding loops. As such we get more failures because they were not expecting to be vectorized. Fixed by adding #pragma GCC novector. gcc/testsuite/ChangeLog: PR tree-optimization/118464 PR tree-optimization/116855 * g++.dg/ext/pragma-unroll-lambda-lto.C: Add pragma novector. * gcc.dg/tree-ssa/gen-vect-2.c: Likewise. * gcc.dg/tree-ssa/gen-vect-25.c: Likewise. * gcc.dg/tree-ssa/gen-vect-32.c: Likewise. * gcc.dg/tree-ssa/ivopt_mult_2g.c: Likewise. * gcc.dg/tree-ssa/ivopts-5.c: Likewise. * gcc.dg/tree-ssa/ivopts-6.c: Likewise. * gcc.dg/tree-ssa/ivopts-7.c: Likewise. * gcc.dg/tree-ssa/ivopts-8.c: Likewise. * gcc.dg/tree-ssa/ivopts-9.c: Likewise. * gcc.dg/tree-ssa/predcom-dse-1.c: Likewise. * gcc.dg/tree-ssa/predcom-dse-10.c: Likewise. * gcc.dg/tree-ssa/predcom-dse-11.c: Likewise. * gcc.dg/tree-ssa/predcom-dse-12.c: Likewise. * gcc.dg/tree-ssa/predcom-dse-2.c: Likewise. * gcc.dg/tree-ssa/predcom-dse-3.c: Likewise. * gcc.dg/tree-ssa/predcom-dse-4.c: Likewise. * gcc.dg/tree-ssa/predcom-dse-5.c: Likewise. * gcc.dg/tree-ssa/predcom-dse-6.c: Likewise. * gcc.dg/tree-ssa/predcom-dse-7.c: Likewise. * gcc.dg/tree-ssa/predcom-dse-8.c: Likewise. * gcc.dg/tree-ssa/predcom-dse-9.c: Likewise. * gcc.target/i386/pr90178.c: Likewise.
-rw-r--r--gcc/testsuite/g++.dg/ext/pragma-unroll-lambda-lto.C1
-rw-r--r--gcc/testsuite/gcc.dg/tree-ssa/gen-vect-2.c1
-rw-r--r--gcc/testsuite/gcc.dg/tree-ssa/gen-vect-25.c2
-rw-r--r--gcc/testsuite/gcc.dg/tree-ssa/gen-vect-32.c1
-rw-r--r--gcc/testsuite/gcc.dg/tree-ssa/ivopt_mult_2g.c2
-rw-r--r--gcc/testsuite/gcc.dg/tree-ssa/ivopts-5.c1
-rw-r--r--gcc/testsuite/gcc.dg/tree-ssa/ivopts-6.c1
-rw-r--r--gcc/testsuite/gcc.dg/tree-ssa/ivopts-7.c1
-rw-r--r--gcc/testsuite/gcc.dg/tree-ssa/ivopts-8.c1
-rw-r--r--gcc/testsuite/gcc.dg/tree-ssa/ivopts-9.c1
-rw-r--r--gcc/testsuite/gcc.dg/tree-ssa/predcom-dse-1.c1
-rw-r--r--gcc/testsuite/gcc.dg/tree-ssa/predcom-dse-10.c1
-rw-r--r--gcc/testsuite/gcc.dg/tree-ssa/predcom-dse-11.c1
-rw-r--r--gcc/testsuite/gcc.dg/tree-ssa/predcom-dse-12.c1
-rw-r--r--gcc/testsuite/gcc.dg/tree-ssa/predcom-dse-2.c1
-rw-r--r--gcc/testsuite/gcc.dg/tree-ssa/predcom-dse-3.c1
-rw-r--r--gcc/testsuite/gcc.dg/tree-ssa/predcom-dse-4.c1
-rw-r--r--gcc/testsuite/gcc.dg/tree-ssa/predcom-dse-5.c1
-rw-r--r--gcc/testsuite/gcc.dg/tree-ssa/predcom-dse-6.c1
-rw-r--r--gcc/testsuite/gcc.dg/tree-ssa/predcom-dse-7.c1
-rw-r--r--gcc/testsuite/gcc.dg/tree-ssa/predcom-dse-8.c1
-rw-r--r--gcc/testsuite/gcc.dg/tree-ssa/predcom-dse-9.c1
-rw-r--r--gcc/testsuite/gcc.target/i386/pr90178.c1
23 files changed, 24 insertions, 1 deletions
diff --git a/gcc/testsuite/g++.dg/ext/pragma-unroll-lambda-lto.C b/gcc/testsuite/g++.dg/ext/pragma-unroll-lambda-lto.C
index 0db57c8..5980bf3 100644
--- a/gcc/testsuite/g++.dg/ext/pragma-unroll-lambda-lto.C
+++ b/gcc/testsuite/g++.dg/ext/pragma-unroll-lambda-lto.C
@@ -10,6 +10,7 @@ inline Iter
my_find(Iter first, Iter last, Pred pred)
{
#pragma GCC unroll 4
+#pragma GCC novector
while (first != last && !pred(*first))
++first;
return first;
diff --git a/gcc/testsuite/gcc.dg/tree-ssa/gen-vect-2.c b/gcc/testsuite/gcc.dg/tree-ssa/gen-vect-2.c
index a35999a..00fc8f0 100644
--- a/gcc/testsuite/gcc.dg/tree-ssa/gen-vect-2.c
+++ b/gcc/testsuite/gcc.dg/tree-ssa/gen-vect-2.c
@@ -29,6 +29,7 @@ int main ()
}
/* check results: */
+#pragma GCC novector
for (i = 0; i < N; i++)
{
if (ca[i] != cb[i])
diff --git a/gcc/testsuite/gcc.dg/tree-ssa/gen-vect-25.c b/gcc/testsuite/gcc.dg/tree-ssa/gen-vect-25.c
index 9f14a54..99d5e62 100644
--- a/gcc/testsuite/gcc.dg/tree-ssa/gen-vect-25.c
+++ b/gcc/testsuite/gcc.dg/tree-ssa/gen-vect-25.c
@@ -27,6 +27,7 @@ int main_1 (int n, int *p)
}
/* check results: */
+#pragma GCC novector
for (i = 0; i < N; i++)
{
if (ia[i] != n)
@@ -40,6 +41,7 @@ int main_1 (int n, int *p)
}
/* check results: */
+#pragma GCC novector
for (i = 0; i < N; i++)
{
if (ib[i] != k)
diff --git a/gcc/testsuite/gcc.dg/tree-ssa/gen-vect-32.c b/gcc/testsuite/gcc.dg/tree-ssa/gen-vect-32.c
index 62d2b50..1202ec3 100644
--- a/gcc/testsuite/gcc.dg/tree-ssa/gen-vect-32.c
+++ b/gcc/testsuite/gcc.dg/tree-ssa/gen-vect-32.c
@@ -23,6 +23,7 @@ int main ()
}
/* check results: */
+#pragma GCC novector
for (i = 0; i < N; i++)
{
if (s.ca[i] != 5)
diff --git a/gcc/testsuite/gcc.dg/tree-ssa/ivopt_mult_2g.c b/gcc/testsuite/gcc.dg/tree-ssa/ivopt_mult_2g.c
index dd06e59..b79bd10 100644
--- a/gcc/testsuite/gcc.dg/tree-ssa/ivopt_mult_2g.c
+++ b/gcc/testsuite/gcc.dg/tree-ssa/ivopt_mult_2g.c
@@ -1,5 +1,5 @@
/* { dg-do compile { target {{ i?86-*-* x86_64-*-* } && lp64 } } } */
-/* { dg-options "-O2 -fgimple -m64 -fdump-tree-ivopts-details" } */
+/* { dg-options "-O2 -fgimple -m64 -fdump-tree-ivopts-details -fno-tree-vectorize" } */
/* Exit tests 'i < N1' and 'p2 > p_limit2' can be replaced, so
* two ivs i and p2 can be eliminate. */
diff --git a/gcc/testsuite/gcc.dg/tree-ssa/ivopts-5.c b/gcc/testsuite/gcc.dg/tree-ssa/ivopts-5.c
index a6af497..7b9615f 100644
--- a/gcc/testsuite/gcc.dg/tree-ssa/ivopts-5.c
+++ b/gcc/testsuite/gcc.dg/tree-ssa/ivopts-5.c
@@ -5,6 +5,7 @@ int*
foo (int* mem, int sz, int val)
{
int i;
+#pragma GCC novector
for (i = 0; i < sz; i++)
if (mem[i] == val)
return &mem[i];
diff --git a/gcc/testsuite/gcc.dg/tree-ssa/ivopts-6.c b/gcc/testsuite/gcc.dg/tree-ssa/ivopts-6.c
index 8383154..0830429 100644
--- a/gcc/testsuite/gcc.dg/tree-ssa/ivopts-6.c
+++ b/gcc/testsuite/gcc.dg/tree-ssa/ivopts-6.c
@@ -5,6 +5,7 @@ int*
foo (int* mem, int sz, int val)
{
int i;
+#pragma GCC novector
for (i = 0; i != sz; i++)
if (mem[i] == val)
return &mem[i];
diff --git a/gcc/testsuite/gcc.dg/tree-ssa/ivopts-7.c b/gcc/testsuite/gcc.dg/tree-ssa/ivopts-7.c
index 44f5603..03160f2 100644
--- a/gcc/testsuite/gcc.dg/tree-ssa/ivopts-7.c
+++ b/gcc/testsuite/gcc.dg/tree-ssa/ivopts-7.c
@@ -5,6 +5,7 @@ int*
foo (int* mem, int beg, int end, int val)
{
int i;
+#pragma GCC novector
for (i = beg; i < end; i++)
if (mem[i] == val)
return &mem[i];
diff --git a/gcc/testsuite/gcc.dg/tree-ssa/ivopts-8.c b/gcc/testsuite/gcc.dg/tree-ssa/ivopts-8.c
index b2556ea..a7fd3c9 100644
--- a/gcc/testsuite/gcc.dg/tree-ssa/ivopts-8.c
+++ b/gcc/testsuite/gcc.dg/tree-ssa/ivopts-8.c
@@ -5,6 +5,7 @@ int*
foo (int* mem, char sz, int val)
{
char i;
+#pragma GCC novector
for (i = 0; i < sz; i++)
if (mem[i] == val)
return &mem[i];
diff --git a/gcc/testsuite/gcc.dg/tree-ssa/ivopts-9.c b/gcc/testsuite/gcc.dg/tree-ssa/ivopts-9.c
index d26d994..fb9656b 100644
--- a/gcc/testsuite/gcc.dg/tree-ssa/ivopts-9.c
+++ b/gcc/testsuite/gcc.dg/tree-ssa/ivopts-9.c
@@ -5,6 +5,7 @@ int*
foo (int* mem, unsigned char sz, int val)
{
unsigned char i;
+#pragma GCC novector
for (i = 0; i < sz; i++)
if (mem[i] == val)
return &mem[i];
diff --git a/gcc/testsuite/gcc.dg/tree-ssa/predcom-dse-1.c b/gcc/testsuite/gcc.dg/tree-ssa/predcom-dse-1.c
index a0a04a0..b660f9d 100644
--- a/gcc/testsuite/gcc.dg/tree-ssa/predcom-dse-1.c
+++ b/gcc/testsuite/gcc.dg/tree-ssa/predcom-dse-1.c
@@ -32,6 +32,7 @@ void check (int *a, int *res, int len)
{
int i;
+#pragma GCC novector
for (i = 0; i < len; i++)
if (a[i] != res[i])
abort ();
diff --git a/gcc/testsuite/gcc.dg/tree-ssa/predcom-dse-10.c b/gcc/testsuite/gcc.dg/tree-ssa/predcom-dse-10.c
index f770a8a..8e5a3a4 100644
--- a/gcc/testsuite/gcc.dg/tree-ssa/predcom-dse-10.c
+++ b/gcc/testsuite/gcc.dg/tree-ssa/predcom-dse-10.c
@@ -23,6 +23,7 @@ void check (int *a, int *res, int len)
{
int i;
+#pragma GCC novector
for (i = 0; i < len; i++)
if (a[i] != res[i])
abort ();
diff --git a/gcc/testsuite/gcc.dg/tree-ssa/predcom-dse-11.c b/gcc/testsuite/gcc.dg/tree-ssa/predcom-dse-11.c
index ed2b96a..fd56fd9 100644
--- a/gcc/testsuite/gcc.dg/tree-ssa/predcom-dse-11.c
+++ b/gcc/testsuite/gcc.dg/tree-ssa/predcom-dse-11.c
@@ -29,6 +29,7 @@ void check (int *a, int *res, int len, int sum, int val)
if (sum != val)
abort ();
+#pragma GCC novector
for (i = 0; i < len; i++)
if (a[i] != res[i])
abort ();
diff --git a/gcc/testsuite/gcc.dg/tree-ssa/predcom-dse-12.c b/gcc/testsuite/gcc.dg/tree-ssa/predcom-dse-12.c
index 2487c1c..5eac905 100644
--- a/gcc/testsuite/gcc.dg/tree-ssa/predcom-dse-12.c
+++ b/gcc/testsuite/gcc.dg/tree-ssa/predcom-dse-12.c
@@ -37,6 +37,7 @@ void check (int *a, int *res, int len, int sval)
if (sum != sval)
abort ();
+#pragma GCC novector
for (i = 0; i < len; i++)
if (a[i] != res[i])
abort ();
diff --git a/gcc/testsuite/gcc.dg/tree-ssa/predcom-dse-2.c b/gcc/testsuite/gcc.dg/tree-ssa/predcom-dse-2.c
index 020ca70..801acad 100644
--- a/gcc/testsuite/gcc.dg/tree-ssa/predcom-dse-2.c
+++ b/gcc/testsuite/gcc.dg/tree-ssa/predcom-dse-2.c
@@ -32,6 +32,7 @@ void check (int *a, int *res, int len)
{
int i;
+#pragma GCC novector
for (i = 0; i < len; i++)
if (a[i] != res[i])
abort ();
diff --git a/gcc/testsuite/gcc.dg/tree-ssa/predcom-dse-3.c b/gcc/testsuite/gcc.dg/tree-ssa/predcom-dse-3.c
index 667cc33..8b82bdb 100644
--- a/gcc/testsuite/gcc.dg/tree-ssa/predcom-dse-3.c
+++ b/gcc/testsuite/gcc.dg/tree-ssa/predcom-dse-3.c
@@ -40,6 +40,7 @@ void check (int *a, int *res, int len)
{
int i;
+#pragma GCC novector
for (i = 0; i < len; i++)
if (a[i] != res[i])
abort ();
diff --git a/gcc/testsuite/gcc.dg/tree-ssa/predcom-dse-4.c b/gcc/testsuite/gcc.dg/tree-ssa/predcom-dse-4.c
index 8118461..0d64bc7 100644
--- a/gcc/testsuite/gcc.dg/tree-ssa/predcom-dse-4.c
+++ b/gcc/testsuite/gcc.dg/tree-ssa/predcom-dse-4.c
@@ -31,6 +31,7 @@ void check (int *a, int *res, int len)
{
int i;
+#pragma GCC novector
for (i = 0; i < len; i++)
if (a[i] != res[i])
abort ();
diff --git a/gcc/testsuite/gcc.dg/tree-ssa/predcom-dse-5.c b/gcc/testsuite/gcc.dg/tree-ssa/predcom-dse-5.c
index 03fa646..7db3bca 100644
--- a/gcc/testsuite/gcc.dg/tree-ssa/predcom-dse-5.c
+++ b/gcc/testsuite/gcc.dg/tree-ssa/predcom-dse-5.c
@@ -33,6 +33,7 @@ void check (int *a, int *res, int len)
{
int i;
+#pragma GCC novector
for (i = 0; i < len; i++)
if (a[i] != res[i])
abort ();
diff --git a/gcc/testsuite/gcc.dg/tree-ssa/predcom-dse-6.c b/gcc/testsuite/gcc.dg/tree-ssa/predcom-dse-6.c
index ab2fd40..1267bae 100644
--- a/gcc/testsuite/gcc.dg/tree-ssa/predcom-dse-6.c
+++ b/gcc/testsuite/gcc.dg/tree-ssa/predcom-dse-6.c
@@ -35,6 +35,7 @@ void check (int *a, int *res, int len)
{
int i;
+#pragma GCC novector
for (i = 0; i < len; i++)
if (a[i] != res[i])
abort ();
diff --git a/gcc/testsuite/gcc.dg/tree-ssa/predcom-dse-7.c b/gcc/testsuite/gcc.dg/tree-ssa/predcom-dse-7.c
index c746ebd..cfe44a0 100644
--- a/gcc/testsuite/gcc.dg/tree-ssa/predcom-dse-7.c
+++ b/gcc/testsuite/gcc.dg/tree-ssa/predcom-dse-7.c
@@ -33,6 +33,7 @@ void check (int *a, int *res, int len)
{
int i;
+#pragma GCC novector
for (i = 0; i < len; i++)
if (a[i] != res[i])
abort ();
diff --git a/gcc/testsuite/gcc.dg/tree-ssa/predcom-dse-8.c b/gcc/testsuite/gcc.dg/tree-ssa/predcom-dse-8.c
index 6c4e9af..646e43d 100644
--- a/gcc/testsuite/gcc.dg/tree-ssa/predcom-dse-8.c
+++ b/gcc/testsuite/gcc.dg/tree-ssa/predcom-dse-8.c
@@ -31,6 +31,7 @@ void check (int *a, int *res, int len)
{
int i;
+#pragma GCC novector
for (i = 0; i < len; i++)
if (a[i] != res[i])
abort ();
diff --git a/gcc/testsuite/gcc.dg/tree-ssa/predcom-dse-9.c b/gcc/testsuite/gcc.dg/tree-ssa/predcom-dse-9.c
index 9c5e8ca..30daf82 100644
--- a/gcc/testsuite/gcc.dg/tree-ssa/predcom-dse-9.c
+++ b/gcc/testsuite/gcc.dg/tree-ssa/predcom-dse-9.c
@@ -69,6 +69,7 @@ void check (int *a, int *res, int len)
{
int i;
+#pragma GCC novector
for (i = 0; i < len; i++)
if (a[i] != res[i])
abort ();
diff --git a/gcc/testsuite/gcc.target/i386/pr90178.c b/gcc/testsuite/gcc.target/i386/pr90178.c
index 1df36af..e9fea04 100644
--- a/gcc/testsuite/gcc.target/i386/pr90178.c
+++ b/gcc/testsuite/gcc.target/i386/pr90178.c
@@ -4,6 +4,7 @@
int*
find_ptr (int* mem, int sz, int val)
{
+#pragma GCC novector
for (int i = 0; i < sz; i++)
if (mem[i] == val)
return &mem[i];