Daily bump.
[official-gcc.git] / libgomp / testsuite / libgomp.c / depend-3.c
blobd565d6e461926e8178e7e3e1efaed3aeece1761d
1 #include <stdlib.h>
2 #include <unistd.h>
4 int
5 main ()
7 #pragma omp parallel
8 #pragma omp single
10 int x = 1, y = 2;
11 #pragma omp taskgroup
13 #pragma omp task shared (x) depend(in: x)
15 usleep (10000);
16 if (x != 1)
17 abort ();
19 #pragma omp taskgroup
21 #pragma omp task shared (x) depend(in: x)
23 usleep (15000);
24 if (x != 1)
25 abort ();
27 #pragma omp task shared (y) depend(inout: y)
29 if (y != 2)
30 abort ();
31 y = 3;
33 #pragma omp taskgroup
35 #pragma omp task shared (x) depend(in: x)
37 usleep (13000);
38 if (x != 1)
39 abort ();
41 #pragma omp taskgroup
43 #pragma omp task shared (x) depend(out: x)
44 x = 2;
50 return 0;