1 /* { dg-additional-options "-fopenmp-simd -fno-tree-vectorize" } */
2 /* { dg-additional-options "-mavx" { target avx_runtime } } */
3 /* { dg-final { scan-tree-dump "vectorized 1 loops" "vect" { target i?86-*-* x86_64-*-* } } } */
7 __attribute__((noipa
)) int
8 foo (int s
, int m
, int n
, int *p
)
11 #pragma omp simd reduction (+:r) linear(l)
12 for (i
= m
; i
< n
; i
+= s
)
20 int p
[10000 / 78 + 1];
27 r
= foo (78, 0, 10000, p
);
29 for (i
= 0; i
< 10000 / 78; i
++)
32 if (r
!= (10000 / 78) * (10000 / 78 + 1) / 2 * 78 * 3)
34 r
= foo (87, 0, 10000, p
);
36 for (i
= 0; i
< 10000 / 87; i
++)
39 if (r
!= (10000 / 87) * (10000 / 87 + 1) / 2 * 87 * 3)