2 foo (int &x, int *&y, int n, int v)
4 int zu[3] = { 45, 46, 47 };
9 for (i = 0; i < n; i++)
11 #pragma omp taskgroup task_reduction (+: x, y[:2], z[1:2], u, w[1:v])
13 #pragma omp task in_reduction (+: x, y[:2], z[1:2], u, w[1:v])
22 #pragma omp target in_reduction (+: x, y[:2], z[1:2], u, w[1:v])
31 #pragma omp target in_reduction (+: x, y[:v], z[1:v], u, w[1:2])
41 if (x != 56 || y[0] != 60 || y[1] != 64)
43 if (z[0] != 45 || z[1] != 62 || z[2] != 54)
45 if (u[0] != 8 || u[1] != 12 || u[2] != 18)
47 if (w[0] != 3 || w[1] != 24 || w[2] != 12)
52 bar (int &x, int *&y, int n, int v)
54 int zu[3] = { 45, 46, 47 };
59 for (i = 0; i < n; i++)
61 #pragma omp parallel master
62 #pragma omp taskgroup task_reduction (+: x, y[:2], z[1:2], u, w[1:v])
64 #pragma omp task in_reduction (+: x, y[:2], z[1:2], u, w[1:v])
73 #pragma omp target in_reduction (+: x, y[:2], z[1:2], u, w[1:v])
82 #pragma omp target in_reduction (+: x, y[:v], z[1:v], u, w[1:2])
92 if (x != 56 || y[0] != 77 || y[1] != 84)
94 if (z[0] != 45 || z[1] != 62 || z[2] != 54)
96 if (u[0] != 8 || u[1] != 12 || u[2] != 18)
98 if (w[0] != 3 || w[1] != 24 || w[2] != 12)
106 int yu[2] = { 43, 44 };
108 #pragma omp parallel master