aboutsummaryrefslogtreecommitdiff
path: root/libgomp/testsuite/libgomp.c-c++-common/taskwait-depend-1.c
diff options
context:
space:
mode:
Diffstat (limited to 'libgomp/testsuite/libgomp.c-c++-common/taskwait-depend-1.c')
-rw-r--r--libgomp/testsuite/libgomp.c-c++-common/taskwait-depend-1.c29
1 files changed, 29 insertions, 0 deletions
diff --git a/libgomp/testsuite/libgomp.c-c++-common/taskwait-depend-1.c b/libgomp/testsuite/libgomp.c-c++-common/taskwait-depend-1.c
new file mode 100644
index 0000000..094b4b3
--- /dev/null
+++ b/libgomp/testsuite/libgomp.c-c++-common/taskwait-depend-1.c
@@ -0,0 +1,29 @@
+#ifdef __cplusplus
+extern "C"
+#endif
+void abort (void);
+
+int
+main ()
+{
+ int a, b, c, d;
+ #pragma omp parallel num_threads (4)
+ #pragma omp single
+ {
+ #pragma omp task depend(out : a)
+ a = 6;
+ #pragma omp task depend(out : b)
+ b = 7;
+ #pragma omp task depend(out : c)
+ c = 8;
+ #pragma omp taskwait depend(in : a, c)
+ d = a + c;
+ #pragma omp task depend(out : a)
+ a = 9;
+ #pragma omp task depend(out : c)
+ c = 10;
+ }
+ if (a != 9 || b != 7 || c != 10 || d != 6 + 8)
+ abort ();
+ return 0;
+}