| /* { dg-do run } */ | |
| #include <stdlib.h> | |
| #define n 10 | |
| static void __attribute__((noinline)) __attribute__((noclone)) | |
| foo (int beta, int *c) | |
| { | |
| #pragma acc parallel copy(c[0:(n * n) - 1]) num_gangs(2) | |
| #pragma acc loop gang | |
| for (int j = 0; j < n; ++j) | |
| if (beta != 1) | |
| { | |
| #pragma acc loop vector | |
| for (int i = 0; i < n; ++i) | |
| c[i + (j * n)] = 0; | |
| } | |
| } | |
| int | |
| main (void) | |
| { | |
| int c[n * n]; | |
| c[0] = 1; | |
| foo (0, c); | |
| if (c[0] != 0) | |
| abort (); | |
| return 0; | |
| } |