1 /* PR tree-optimization/58392 */
3 /* { dg-options "-O2" } */
4 /* { dg-additional-options "-msse2" { target sse2_runtime } } */
5 /* { dg-additional-options "-mavx" { target avx_runtime } } */
7 extern void abort (void);
10 __attribute__((noinline
, noclone
)) int
14 #pragma omp parallel for reduction(+: c)
15 for (j
= 0; j
< a
; j
+= 32)
18 #pragma omp simd reduction(+: c)
19 for (l
= 0; l
< b
; ++l
)
25 __attribute__((noinline
, noclone
)) int
29 #pragma omp parallel for simd reduction(+: c)
30 for (j
= 0; j
< a
; ++j
)
35 __attribute__((noinline
)) static int
39 #pragma omp simd reduction(+: c)
40 for (j
= 0; j
< a
; ++j
)
49 for (i
= 0; i
< 32 * 32; i
++)
51 if (foo (32 * 32, 32) != (31 * 32 / 2) * 32)
53 if (bar (32 * 32) != (31 * 32 / 2) * 32)
55 if (baz (32 * 32) != (31 * 32 / 2) * 32)