]> git.ipfire.org Git - thirdparty/gcc.git/blame - gcc/testsuite/c-c++-common/gomp/clauses-1.c
* builtin-types.def (BT_FN_VOID_BOOL, BT_FN_VOID_SIZE_SIZE_PTR,
[thirdparty/gcc.git] / gcc / testsuite / c-c++-common / gomp / clauses-1.c
CommitLineData
43895be5 1/* { dg-do compile } */
43895be5 2/* { dg-additional-options "-std=c99" { target c } } */
3
4int t;
5#pragma omp threadprivate (t)
6
7#pragma omp declare target
7e5a76c8 8int f, l, ll, r, r2;
43895be5 9
10void
11foo (int d, int m, int i1, int i2, int p, int *idp, int s,
7e5a76c8 12 int nte, int tl, int nth, int g, int nta, int fi, int pp, int *q, int ntm)
43895be5 13{
14 #pragma omp distribute parallel for \
15 private (p) firstprivate (f) collapse(1) dist_schedule(static, 16) \
16 if (parallel: i2) default(shared) shared(s) reduction(+:r) num_threads (nth) proc_bind(spread) \
17 lastprivate (l) schedule(static, 4)
18 for (int i = 0; i < 64; i++)
19 ll++;
20 #pragma omp distribute parallel for simd \
21 private (p) firstprivate (f) collapse(1) dist_schedule(static, 16) \
7e5a76c8 22 if (parallel: i2) if(simd: i1) default(shared) shared(s) reduction(+:r) num_threads (nth) proc_bind(spread) \
23 lastprivate (l) schedule(static, 4) nontemporal(ntm) \
43895be5 24 safelen(8) simdlen(4) aligned(q: 32)
25 for (int i = 0; i < 64; i++)
26 ll++;
27 #pragma omp distribute simd \
28 private (p) firstprivate (f) collapse(1) dist_schedule(static, 16) \
7e5a76c8 29 safelen(8) simdlen(4) aligned(q: 32) reduction(+:r) if(i1) nontemporal(ntm)
43895be5 30 for (int i = 0; i < 64; i++)
31 ll++;
32}
33#pragma omp end declare target
34
35void
7e5a76c8 36baz (int d, int m, int i1, int i2, int p, int *idp, int s,
37 int nte, int tl, int nth, int g, int nta, int fi, int pp, int *q, int ntm)
38{
39 #pragma omp distribute parallel for \
40 private (p) firstprivate (f) collapse(1) dist_schedule(static, 16) \
41 if (parallel: i2) default(shared) shared(s) reduction(+:r) num_threads (nth) proc_bind(spread) \
42 lastprivate (l) schedule(static, 4) copyin(t)
43 for (int i = 0; i < 64; i++)
44 ll++;
45 #pragma omp distribute parallel for simd \
46 private (p) firstprivate (f) collapse(1) dist_schedule(static, 16) \
47 if (parallel: i2) if(simd: i1) default(shared) shared(s) reduction(+:r) num_threads (nth) proc_bind(spread) \
48 lastprivate (l) schedule(static, 4) nontemporal(ntm) \
49 safelen(8) simdlen(4) aligned(q: 32) copyin(t)
50 for (int i = 0; i < 64; i++)
51 ll++;
52 #pragma omp distribute simd \
53 private (p) firstprivate (f) collapse(1) dist_schedule(static, 16) \
54 safelen(8) simdlen(4) aligned(q: 32) reduction(+:r) if(i1) nontemporal(ntm)
55 for (int i = 0; i < 64; i++)
56 ll++;
57}
58
59void
60bar (int d, int m, int i1, int i2, int i3, int p, int *idp, int s,
61 int nte, int tl, int nth, int g, int nta, int fi, int pp, int *q, int *dd, int ntm)
43895be5 62{
63 #pragma omp for simd \
64 private (p) firstprivate (f) lastprivate (l) linear (ll:1) reduction(+:r) schedule(static, 4) collapse(1) nowait \
7e5a76c8 65 safelen(8) simdlen(4) aligned(q: 32) nontemporal(ntm) if(i1)
43895be5 66 for (int i = 0; i < 64; i++)
67 ll++;
68 #pragma omp parallel for \
69 private (p) firstprivate (f) if (parallel: i2) default(shared) shared(s) copyin(t) reduction(+:r) num_threads (nth) proc_bind(spread) \
70 lastprivate (l) linear (ll:1) ordered schedule(static, 4) collapse(1)
71 for (int i = 0; i < 64; i++)
72 ll++;
73 #pragma omp parallel for simd \
7e5a76c8 74 private (p) firstprivate (f) if (i2) default(shared) shared(s) copyin(t) reduction(+:r) num_threads (nth) proc_bind(spread) \
43895be5 75 lastprivate (l) linear (ll:1) schedule(static, 4) collapse(1) \
7e5a76c8 76 safelen(8) simdlen(4) aligned(q: 32) nontemporal(ntm)
43895be5 77 for (int i = 0; i < 64; i++)
78 ll++;
79 #pragma omp parallel sections \
80 private (p) firstprivate (f) if (parallel: i2) default(shared) shared(s) copyin(t) reduction(+:r) num_threads (nth) proc_bind(spread) \
81 lastprivate (l)
82 {
83 #pragma omp section
84 {}
85 #pragma omp section
86 {}
87 }
88 #pragma omp target parallel \
89 device(d) map (tofrom: m) if (target: i1) private (p) firstprivate (f) defaultmap(tofrom: scalar) is_device_ptr (idp) \
b6431756 90 if (parallel: i2) default(shared) shared(s) reduction(+:r) num_threads (nth) proc_bind(spread) \
91 nowait depend(inout: dd[0])
43895be5 92 ;
93 #pragma omp target parallel for \
94 device(d) map (tofrom: m) if (target: i1) private (p) firstprivate (f) defaultmap(tofrom: scalar) is_device_ptr (idp) \
95 if (parallel: i2) default(shared) shared(s) reduction(+:r) num_threads (nth) proc_bind(spread) \
b6431756 96 lastprivate (l) linear (ll:1) ordered schedule(static, 4) collapse(1) nowait depend(inout: dd[0])
43895be5 97 for (int i = 0; i < 64; i++)
98 ll++;
99 #pragma omp target parallel for simd \
100 device(d) map (tofrom: m) if (target: i1) private (p) firstprivate (f) defaultmap(tofrom: scalar) is_device_ptr (idp) \
101 if (parallel: i2) default(shared) shared(s) reduction(+:r) num_threads (nth) proc_bind(spread) \
102 lastprivate (l) linear (ll:1) schedule(static, 4) collapse(1) \
7e5a76c8 103 safelen(8) simdlen(4) aligned(q: 32) nowait depend(inout: dd[0]) nontemporal(ntm) if (simd: i3)
43895be5 104 for (int i = 0; i < 64; i++)
105 ll++;
106 #pragma omp target teams \
107 device(d) map (tofrom: m) if (target: i1) private (p) firstprivate (f) defaultmap(tofrom: scalar) is_device_ptr (idp) \
b6431756 108 shared(s) default(shared) reduction(+:r) num_teams(nte) thread_limit(tl) nowait depend(inout: dd[0])
43895be5 109 ;
110 #pragma omp target teams distribute \
111 device(d) map (tofrom: m) if (target: i1) private (p) firstprivate (f) defaultmap(tofrom: scalar) is_device_ptr (idp) \
112 shared(s) default(shared) reduction(+:r) num_teams(nte) thread_limit(tl) \
b6431756 113 collapse(1) dist_schedule(static, 16) nowait depend(inout: dd[0])
43895be5 114 for (int i = 0; i < 64; i++)
115 ;
116 #pragma omp target teams distribute parallel for \
117 device(d) map (tofrom: m) if (target: i1) private (p) firstprivate (f) defaultmap(tofrom: scalar) is_device_ptr (idp) \
118 shared(s) default(shared) reduction(+:r) num_teams(nte) thread_limit(tl) \
119 collapse(1) dist_schedule(static, 16) \
120 if (parallel: i2) num_threads (nth) proc_bind(spread) \
b6431756 121 lastprivate (l) schedule(static, 4) nowait depend(inout: dd[0])
43895be5 122 for (int i = 0; i < 64; i++)
123 ll++;
124 #pragma omp target teams distribute parallel for simd \
125 device(d) map (tofrom: m) if (target: i1) private (p) firstprivate (f) defaultmap(tofrom: scalar) is_device_ptr (idp) \
126 shared(s) default(shared) reduction(+:r) num_teams(nte) thread_limit(tl) \
127 collapse(1) dist_schedule(static, 16) \
128 if (parallel: i2) num_threads (nth) proc_bind(spread) \
129 lastprivate (l) schedule(static, 4) \
7e5a76c8 130 safelen(8) simdlen(4) aligned(q: 32) nowait depend(inout: dd[0]) nontemporal(ntm) if (simd: i3)
43895be5 131 for (int i = 0; i < 64; i++)
132 ll++;
133 #pragma omp target teams distribute simd \
7e5a76c8 134 device(d) map (tofrom: m) if (i1) private (p) firstprivate (f) defaultmap(tofrom: scalar) is_device_ptr (idp) \
43895be5 135 shared(s) default(shared) reduction(+:r) num_teams(nte) thread_limit(tl) \
136 collapse(1) dist_schedule(static, 16) \
7e5a76c8 137 safelen(8) simdlen(4) aligned(q: 32) nowait depend(inout: dd[0]) nontemporal(ntm)
43895be5 138 for (int i = 0; i < 64; i++)
139 ll++;
140 #pragma omp target simd \
141 device(d) map (tofrom: m) if (target: i1) private (p) firstprivate (f) defaultmap(tofrom: scalar) is_device_ptr (idp) \
b6431756 142 safelen(8) simdlen(4) lastprivate (l) linear(ll: 1) aligned(q: 32) reduction(+:r) \
7e5a76c8 143 nowait depend(inout: dd[0]) nontemporal(ntm) if(simd:i3)
144 for (int i = 0; i < 64; i++)
145 ll++;
146 #pragma omp taskgroup task_reduction(+:r2)
147 #pragma omp taskloop simd \
148 private (p) firstprivate (f) lastprivate (l) shared (s) default(shared) grainsize (g) collapse(1) untied if(taskloop: i1) if(simd: i2) final(fi) mergeable priority (pp) \
149 safelen(8) simdlen(4) linear(ll: 1) aligned(q: 32) reduction(default, +:r) in_reduction(+:r2) nontemporal(ntm)
43895be5 150 for (int i = 0; i < 64; i++)
151 ll++;
7e5a76c8 152 #pragma omp taskgroup task_reduction(+:r)
43895be5 153 #pragma omp taskloop simd \
7e5a76c8 154 private (p) firstprivate (f) lastprivate (l) shared (s) default(shared) grainsize (g) collapse(1) untied if(i1) final(fi) mergeable nogroup priority (pp) \
155 safelen(8) simdlen(4) linear(ll: 1) aligned(q: 32) in_reduction(+:r) nontemporal(ntm)
43895be5 156 for (int i = 0; i < 64; i++)
157 ll++;
158 #pragma omp taskwait
159 #pragma omp taskloop simd \
160 private (p) firstprivate (f) lastprivate (l) shared (s) default(shared) num_tasks (nta) collapse(1) if(taskloop: i1) final(fi) priority (pp) \
7e5a76c8 161 safelen(8) simdlen(4) linear(ll: 1) aligned(q: 32) reduction(+:r) if (simd: i3) nontemporal(ntm)
43895be5 162 for (int i = 0; i < 64; i++)
163 ll++;
b6431756 164 #pragma omp target nowait depend(inout: dd[0])
43895be5 165 #pragma omp teams distribute \
166 private(p) firstprivate (f) shared(s) default(shared) reduction(+:r) num_teams(nte) thread_limit(tl) \
167 collapse(1) dist_schedule(static, 16)
168 for (int i = 0; i < 64; i++)
169 ;
170 #pragma omp target
171 #pragma omp teams distribute parallel for \
172 private(p) firstprivate (f) shared(s) default(shared) reduction(+:r) num_teams(nte) thread_limit(tl) \
173 collapse(1) dist_schedule(static, 16) \
174 if (parallel: i2) num_threads (nth) proc_bind(spread) \
175 lastprivate (l) schedule(static, 4)
176 for (int i = 0; i < 64; i++)
177 ll++;
178 #pragma omp target
179 #pragma omp teams distribute parallel for simd \
180 private(p) firstprivate (f) shared(s) default(shared) reduction(+:r) num_teams(nte) thread_limit(tl) \
181 collapse(1) dist_schedule(static, 16) \
182 if (parallel: i2) num_threads (nth) proc_bind(spread) \
183 lastprivate (l) schedule(static, 4) \
7e5a76c8 184 safelen(8) simdlen(4) aligned(q: 32) if (simd: i3) nontemporal(ntm)
43895be5 185 for (int i = 0; i < 64; i++)
186 ll++;
187 #pragma omp target
188 #pragma omp teams distribute simd \
189 private(p) firstprivate (f) shared(s) default(shared) reduction(+:r) num_teams(nte) thread_limit(tl) \
190 collapse(1) dist_schedule(static, 16) \
7e5a76c8 191 safelen(8) simdlen(4) aligned(q: 32) if(i3) nontemporal(ntm)
192 for (int i = 0; i < 64; i++)
193 ll++;
194 #pragma omp teams distribute parallel for \
195 private(p) firstprivate (f) shared(s) default(shared) reduction(+:r) num_teams(nte) thread_limit(tl) \
196 collapse(1) dist_schedule(static, 16) \
197 if (parallel: i2) num_threads (nth) proc_bind(spread) \
198 lastprivate (l) schedule(static, 4) copyin(t)
199 for (int i = 0; i < 64; i++)
200 ll++;
201 #pragma omp teams distribute parallel for simd \
202 private(p) firstprivate (f) shared(s) default(shared) reduction(+:r) num_teams(nte) thread_limit(tl) \
203 collapse(1) dist_schedule(static, 16) \
204 if (parallel: i2) num_threads (nth) proc_bind(spread) \
205 lastprivate (l) schedule(static, 4) \
206 safelen(8) simdlen(4) aligned(q: 32) if (simd: i3) nontemporal(ntm) copyin(t)
207 for (int i = 0; i < 64; i++)
208 ll++;
209 #pragma omp teams distribute simd \
210 private(p) firstprivate (f) shared(s) default(shared) reduction(+:r) num_teams(nte) thread_limit(tl) \
211 collapse(1) dist_schedule(static, 16) \
212 safelen(8) simdlen(4) aligned(q: 32) if(i3) nontemporal(ntm)
213 for (int i = 0; i < 64; i++)
214 ll++;
215 #pragma omp parallel master \
216 private (p) firstprivate (f) if (parallel: i2) default(shared) shared(s) reduction(+:r) \
217 num_threads (nth) proc_bind(spread) copyin(t)
218 ;
219 #pragma omp taskgroup task_reduction (+:r2)
220 #pragma omp master taskloop \
221 private (p) firstprivate (f) lastprivate (l) shared (s) default(shared) grainsize (g) collapse(1) untied if(taskloop: i1) final(fi) mergeable priority (pp) \
222 reduction(default, +:r) in_reduction(+:r2)
223 for (int i = 0; i < 64; i++)
224 ll++;
225 #pragma omp taskgroup task_reduction (+:r2)
226 #pragma omp master taskloop simd \
227 private (p) firstprivate (f) lastprivate (l) shared (s) default(shared) grainsize (g) collapse(1) untied if(taskloop: i1) if(simd: i2) final(fi) mergeable priority (pp) \
228 safelen(8) simdlen(4) linear(ll: 1) aligned(q: 32) reduction(default, +:r) in_reduction(+:r2) nontemporal(ntm)
229 for (int i = 0; i < 64; i++)
230 ll++;
231 #pragma omp parallel master taskloop \
232 private (p) firstprivate (f) lastprivate (l) shared (s) default(shared) grainsize (g) collapse(1) untied if(taskloop: i1) final(fi) mergeable priority (pp) \
233 reduction(default, +:r) if (parallel: i2) num_threads (nth) proc_bind(spread) copyin(t)
234 for (int i = 0; i < 64; i++)
235 ll++;
236 #pragma omp parallel master taskloop simd \
237 private (p) firstprivate (f) lastprivate (l) shared (s) default(shared) grainsize (g) collapse(1) untied if(taskloop: i1) if(simd: i2) final(fi) mergeable priority (pp) \
238 safelen(8) simdlen(4) linear(ll: 1) aligned(q: 32) reduction(default, +:r) nontemporal(ntm) if (parallel: i2) num_threads (nth) proc_bind(spread) copyin(t)
239 for (int i = 0; i < 64; i++)
240 ll++;
241 #pragma omp taskgroup task_reduction (+:r2)
242 #pragma omp master taskloop \
243 private (p) firstprivate (f) lastprivate (l) shared (s) default(shared) num_tasks (nta) collapse(1) untied if(i1) final(fi) mergeable priority (pp) \
244 reduction(default, +:r) in_reduction(+:r2)
245 for (int i = 0; i < 64; i++)
246 ll++;
247 #pragma omp taskgroup task_reduction (+:r2)
248 #pragma omp master taskloop simd \
249 private (p) firstprivate (f) lastprivate (l) shared (s) default(shared) num_tasks (nta) collapse(1) untied if(i1) final(fi) mergeable priority (pp) \
250 safelen(8) simdlen(4) linear(ll: 1) aligned(q: 32) reduction(default, +:r) in_reduction(+:r2) nontemporal(ntm)
251 for (int i = 0; i < 64; i++)
252 ll++;
253 #pragma omp parallel master taskloop \
254 private (p) firstprivate (f) lastprivate (l) shared (s) default(shared) num_tasks (nta) collapse(1) untied if(i1) final(fi) mergeable priority (pp) \
255 reduction(default, +:r) num_threads (nth) proc_bind(spread) copyin(t)
256 for (int i = 0; i < 64; i++)
257 ll++;
258 #pragma omp parallel master taskloop simd \
259 private (p) firstprivate (f) lastprivate (l) shared (s) default(shared) num_tasks (nta) collapse(1) untied if(i1) final(fi) mergeable priority (pp) \
260 safelen(8) simdlen(4) linear(ll: 1) aligned(q: 32) reduction(default, +:r) nontemporal(ntm) num_threads (nth) proc_bind(spread) copyin(t)
43895be5 261 for (int i = 0; i < 64; i++)
262 ll++;
263}