1 /* { dg-do compile } */
4 foo (int a
, int b
, int *p
, int *q
)
7 #pragma omp parallel if (a)
9 #pragma omp parallel if (parallel:a)
11 #pragma omp parallel for simd if (a)
12 for (i
= 0; i
< 16; i
++)
14 #pragma omp parallel for simd if (parallel : a)
15 for (i
= 0; i
< 16; i
++)
17 #pragma omp task if (a)
19 #pragma omp task if (task: a)
21 #pragma omp taskloop if (a)
22 for (i
= 0; i
< 16; i
++)
24 #pragma omp taskloop if (taskloop : a)
25 for (i
= 0; i
< 16; i
++)
27 #pragma omp target if (a)
29 #pragma omp target if (target: a)
31 #pragma omp target teams distribute parallel for simd if (a)
32 for (i
= 0; i
< 16; i
++)
34 #pragma omp target teams distribute parallel for simd if (parallel : a) if (target: b)
35 for (i
= 0; i
< 16; i
++)
37 #pragma omp target data if (a) map (p[0:2])
39 #pragma omp target data if (target data: a) map (p[0:2])
41 #pragma omp target enter data if (a) map (to: p[0:2])
42 #pragma omp target enter data if (target enter data: a) map (to: p[0:2])
43 #pragma omp target exit data if (a) map (from: p[0:2])
44 #pragma omp target exit data if (target exit data: a) map (from: p[0:2])
45 #pragma omp target update if (a) to (q[0:3])
46 #pragma omp target update if (target update:a) to (q[0:3])