https://gcc.gnu.org/g:4c276896d646c2dbc8047fd81d6e65f8c5ecf01d

commit r14-9569-g4c276896d646c2dbc8047fd81d6e65f8c5ecf01d
Author: Hao Liu <h...@os.amperecomputing.com>
Date:   Wed Mar 20 17:37:01 2024 +0800

    testsuite: add the case to cover the vectorization of A[(i+x)*stride] 
[PR114322]
    
    This issues has been fixed by r14-9540-ge0e9499a in PR114151. Tested on
    aarch64-linux-gnu.
    
    gcc/testsuite/ChangeLog:
    
            PR tree-optimization/114322
            * gcc.dg/vect/pr114322.c: New testcase.

Diff:
---
 gcc/testsuite/gcc.dg/vect/pr114322.c | 20 ++++++++++++++++++++
 1 file changed, 20 insertions(+)

diff --git a/gcc/testsuite/gcc.dg/vect/pr114322.c 
b/gcc/testsuite/gcc.dg/vect/pr114322.c
new file mode 100644
index 00000000000..2642abf3718
--- /dev/null
+++ b/gcc/testsuite/gcc.dg/vect/pr114322.c
@@ -0,0 +1,20 @@
+/* PR tree-optimization/114322 */
+/* { dg-do compile } */
+/* { dg-require-effective-target vect_int } */
+
+int
+foo (int *A, int *B, int x, int stride)
+{
+  int sum = 0;
+
+  if (stride > 1)
+    {
+      for (int i = 0; i < 1024; ++i)
+        sum += A[(i + x) * stride] + B[i];
+    }
+
+  return sum;
+}
+
+/* { dg-final { scan-tree-dump-not "failed: evolution of base is not affine." 
"vect" } } */
+/* { dg-final { scan-tree-dump "LOOP VECTORIZED" "vect" } } */

Reply via email to