1 #include <stdlib.h>
2
3 #define N 100
4
5 int a[N][N];
6
7 void __attribute__((noinline, noclone))
8 foo (int m, int n)
9 {
10 int i, j;
11 #pragma acc kernels
12 {
13 #pragma acc loop collapse(2)
14 for (i = 0; i < m; i++)
15 for (j = 0; j < n; j++)
16 a[i][j] = 1;
17 }
18 }
19
20 int
21 main (void)
22 {
23 int i, j;
24
25 for (i = 0; i < N; i++)
26 for (j = 0; j < N; j++)
27 a[i][j] = 0;
28
29 foo (N, N);
30
31 for (i = 0; i < N; i++)
32 for (j = 0; j < N; j++)
33 if (a[i][j] != 1)
34 abort ();
35
36 return 0;
37 }