libgomp testsuite: OpenACC C++ testing.
[official-gcc.git] / libgomp / testsuite / libgomp.oacc-c-c++-common / lib-44.c
blob0cabb0d31d9739246d0df5d7ed21c98ba2579de3
1 /* { dg-do run } */
3 #include <stdlib.h>
4 #include <openacc.h>
6 int
7 main (int argc, char **argv)
9 const int N = 256;
10 int i;
11 unsigned char *h;
12 void *d;
14 h = (unsigned char *) malloc (N);
16 for (i = 0; i < N; i++)
18 h[i] = i;
21 d = acc_copyin (h, N);
22 if (!d)
23 abort ();
25 for (i = 0; i < N; i++)
27 h[i] = 0xab;
30 acc_update_device (h, 0);
32 acc_copyout (h, N);
34 for (i = 0; i < N; i++)
36 if (h[i] != 0xab)
37 abort ();
40 free (h);
42 return 0;
45 /* { dg-shouldfail "libgomp: \[\h+,0\] is not mapped" } */