PR c++/86342 - -Wdeprecated-copy and system headers.
[official-gcc.git] / libgomp / testsuite / libgomp.oacc-c-c++-common / combined-directives-1.c
blobdad6d13eb6089de505b0f5326fbbc78bb4ae1d6f
1 /* This test exercises combined directives. */
3 /* { dg-do run } */
5 #include <stdlib.h>
7 int
8 main (int argc, char **argv)
10 const int N = 32;
11 float a[N], b[N];
12 int i;
14 for (i = 0; i < N; i++)
16 a[i] = 1.0;
17 b[i] = 0.0;
20 #pragma acc parallel loop copy (a[0:N]) copy (b[0:N])
21 for (i = 0; i < N; i++)
23 b[i] = 2.0;
24 a[i] = a[i] + b[i];
27 for (i = 0; i < N; i++)
29 if (a[i] != 3.0)
30 abort ();
32 if (b[i] != 2.0)
33 abort ();
36 #pragma acc kernels loop copy (a[0:N]) copy (b[0:N])
37 for (i = 0; i < N; i++)
39 b[i] = 3.0;
40 a[i] = a[i] + b[i];
43 for (i = 0; i < N; i++)
45 if (a[i] != 6.0)
46 abort ();
48 if (b[i] != 3.0)
49 abort ();
52 return 0;