32 lines
494 B
C
32 lines
494 B
C
![]() |
#ifdef __cplusplus
|
||
|
extern "C"
|
||
|
#else
|
||
|
extern
|
||
|
#endif
|
||
|
void abort (void);
|
||
|
|
||
|
int
|
||
|
main (void)
|
||
|
{
|
||
|
#define N 5
|
||
|
int array[N][N];
|
||
|
|
||
|
for (int i = 0; i < N; i++)
|
||
|
{
|
||
|
#pragma omp target enter data map(alloc: array[i:1][0:N])
|
||
|
|
||
|
#pragma omp target
|
||
|
for (int j = 0; j < N; j++)
|
||
|
array[i][j] = i + j;
|
||
|
|
||
|
#pragma omp target exit data map(from: array[i:1][0:N])
|
||
|
}
|
||
|
|
||
|
for (int i = 0; i < N; i++)
|
||
|
for (int j = 0; j < N; j++)
|
||
|
if (array[i][j] != i + j)
|
||
|
abort ();
|
||
|
|
||
|
return 0;
|
||
|
}
|