c++: prvalue of array type [PR111286]
[official-gcc.git] / gcc / testsuite / c-c++-common / gomp / reduction-task-1.c
blob3c509d661769c33033bc10a8154aed498e969095
1 int v;
2 extern void foo (int);
4 void
5 bar (void)
7 int i;
8 #pragma omp for reduction (task, +: v)
9 for (i = 0; i < 64; i++)
10 foo (i);
11 #pragma omp sections reduction (task, +: v)
13 foo (-2);
14 #pragma omp section
15 foo (-3);
17 #pragma omp parallel reduction (task, +: v)
18 foo (-1);
19 #pragma omp parallel for reduction (task, +: v)
20 for (i = 0; i < 64; i++)
21 foo (i);
22 #pragma omp parallel sections reduction (task, +: v)
24 foo (-2);
25 #pragma omp section
26 foo (-3);
28 #pragma omp teams distribute parallel for reduction (task, +: v)
29 for (i = 0; i < 64; i++)
30 foo (i);
31 #pragma omp for reduction (default, +: v)
32 for (i = 0; i < 64; i++)
33 foo (i);
34 #pragma omp sections reduction (default, +: v)
36 foo (-2);
37 #pragma omp section
38 foo (-3);
40 #pragma omp parallel reduction (default, +: v)
41 foo (-1);
42 #pragma omp parallel for reduction (default, +: v)
43 for (i = 0; i < 64; i++)
44 foo (i);
45 #pragma omp parallel sections reduction (default, +: v)
47 foo (-2);
48 #pragma omp section
49 foo (-3);
51 #pragma omp teams distribute parallel for reduction (default, +: v)
52 for (i = 0; i < 64; i++)
53 foo (i);
54 #pragma omp for reduction (default, +: v) nowait
55 for (i = 0; i < 64; i++)
56 foo (i);
57 #pragma omp sections nowait reduction (default, +: v)
59 foo (-2);
60 #pragma omp section
61 foo (-3);
63 #pragma omp simd reduction (default, +: v)
64 for (i = 0; i < 64; i++)
65 v++;
66 #pragma omp for simd reduction (default, +: v)
67 for (i = 0; i < 64; i++)
68 v++;
69 #pragma omp parallel for simd reduction (default, +: v)
70 for (i = 0; i < 64; i++)
71 v++;
72 #pragma omp teams distribute parallel for simd reduction (default, +: v)
73 for (i = 0; i < 64; i++)
74 v++;
75 #pragma omp taskloop reduction (default, +: v)
76 for (i = 0; i < 64; i++)
77 foo (i);
78 #pragma omp taskloop simd reduction (default, +: v)
79 for (i = 0; i < 64; i++)
80 v++;
81 #pragma omp teams reduction (default, +: v)
82 foo (i);
83 #pragma omp teams distribute reduction (default, +: v)
84 for (i = 0; i < 64; i++)
85 foo (i);