/* { dg-do run } */ | |
/* { dg-additional-options "-msse2" { target sse2_runtime } } */ | |
/* { dg-additional-options "-mavx" { target avx_runtime } } */ | |
int s = 0, i, j, u; | |
void | |
foo () | |
{ | |
#pragma omp for simd schedule(static, 32) reduction(+:s) lastprivate(u) collapse(2) | |
for (i = 0; i < 16; i++) | |
for (j = 0; j < 16; j++) | |
{ | |
s++; | |
u = i + j; | |
} | |
if (i != 16 || j != 16 || s != 256 || u != 30) | |
__builtin_abort (); | |
} | |
int | |
main () | |
{ | |
foo (); | |
return 0; | |
} |