1 // RUN: %clang_cc1 %s -fopenacc -verify
5 for(unsigned i
= 0; i
< 5; ++i
);
7 for(unsigned i
= 0; i
< 5; ++i
);
8 #pragma acc loop independent
9 for(unsigned i
= 0; i
< 5; ++i
);
11 // expected-error@+2{{OpenACC clause 'seq' on 'loop' construct conflicts with previous data dependence clause}}
12 // expected-note@+1{{previous clause is here}}
13 #pragma acc loop auto seq
14 for(unsigned i
= 0; i
< 5; ++i
);
15 // expected-error@+2{{OpenACC clause 'independent' on 'loop' construct conflicts with previous data dependence clause}}
16 // expected-note@+1{{previous clause is here}}
17 #pragma acc loop auto independent
18 for(unsigned i
= 0; i
< 5; ++i
);
19 // expected-error@+2{{OpenACC clause 'auto' on 'loop' construct conflicts with previous data dependence clause}}
20 // expected-note@+1{{previous clause is here}}
21 #pragma acc loop seq auto
22 for(unsigned i
= 0; i
< 5; ++i
);
23 // expected-error@+2{{OpenACC clause 'independent' on 'loop' construct conflicts with previous data dependence clause}}
24 // expected-note@+1{{previous clause is here}}
25 #pragma acc loop seq independent
26 for(unsigned i
= 0; i
< 5; ++i
);
27 // expected-error@+2{{OpenACC clause 'auto' on 'loop' construct conflicts with previous data dependence clause}}
28 // expected-note@+1{{previous clause is here}}
29 #pragma acc loop independent auto
30 for(unsigned i
= 0; i
< 5; ++i
);
31 // expected-error@+2{{OpenACC clause 'seq' on 'loop' construct conflicts with previous data dependence clause}}
32 // expected-note@+1{{previous clause is here}}
33 #pragma acc loop independent seq
34 for(unsigned i
= 0; i
< 5; ++i
);
39 // 'auto' can combine with any other clause.
40 // expected-error@+1{{OpenACC 'finalize' clause is not valid on 'loop' directive}}
41 #pragma acc loop auto finalize
42 for(unsigned i
= 0; i
< 5; ++i
);
43 // expected-error@+1{{OpenACC 'if_present' clause is not valid on 'loop' directive}}
44 #pragma acc loop auto if_present
45 for(unsigned i
= 0; i
< 5; ++i
);
46 #pragma acc loop auto worker
47 for(unsigned i
= 0; i
< 5; ++i
);
48 #pragma acc loop auto vector
49 for(unsigned i
= 0; i
< 5; ++i
);
50 // expected-warning@+1{{OpenACC clause 'nohost' not yet implemented}}
51 #pragma acc loop auto nohost
52 for(unsigned i
= 0; i
< 5; ++i
);
53 // expected-error@+1{{OpenACC 'default' clause is not valid on 'loop' directive}}
54 #pragma acc loop auto default(none)
55 for(unsigned i
= 0; i
< 5; ++i
);
56 // expected-error@+1{{OpenACC 'if' clause is not valid on 'loop' directive}}
57 #pragma acc loop auto if(1)
58 for(unsigned i
= 0; i
< 5; ++i
);
59 // expected-error@+1{{OpenACC 'self' clause is not valid on 'loop' directive}}
60 #pragma acc loop auto self
61 for(unsigned i
= 0; i
< 5; ++i
);
62 // expected-error@+1{{OpenACC 'copy' clause is not valid on 'loop' directive}}
63 #pragma acc loop auto copy(Var)
64 for(unsigned i
= 0; i
< 5; ++i
);
65 // expected-error@+1{{OpenACC 'pcopy' clause is not valid on 'loop' directive}}
66 #pragma acc loop auto pcopy(Var)
67 for(unsigned i
= 0; i
< 5; ++i
);
68 // expected-error@+1{{OpenACC 'present_or_copy' clause is not valid on 'loop' directive}}
69 #pragma acc loop auto present_or_copy(Var)
70 for(unsigned i
= 0; i
< 5; ++i
);
71 // expected-error@+1{{OpenACC 'use_device' clause is not valid on 'loop' directive}}
72 #pragma acc loop auto use_device(Var)
73 for(unsigned i
= 0; i
< 5; ++i
);
74 // expected-error@+1{{OpenACC 'attach' clause is not valid on 'loop' directive}}
75 #pragma acc loop auto attach(Var)
76 for(unsigned i
= 0; i
< 5; ++i
);
77 // expected-error@+1{{OpenACC 'delete' clause is not valid on 'loop' directive}}
78 #pragma acc loop auto delete(Var)
79 for(unsigned i
= 0; i
< 5; ++i
);
80 // expected-error@+1{{OpenACC 'detach' clause is not valid on 'loop' directive}}
81 #pragma acc loop auto detach(Var)
82 for(unsigned i
= 0; i
< 5; ++i
);
83 // expected-error@+1{{OpenACC 'device' clause is not valid on 'loop' directive}}
84 #pragma acc loop auto device(VarPtr)
85 for(unsigned i
= 0; i
< 5; ++i
);
86 // expected-error@+1{{OpenACC 'deviceptr' clause is not valid on 'loop' directive}}
87 #pragma acc loop auto deviceptr(VarPtr)
88 for(unsigned i
= 0; i
< 5; ++i
);
89 // expected-warning@+1{{OpenACC clause 'device_resident' not yet implemented}}
90 #pragma acc loop auto device_resident(VarPtr)
91 for(unsigned i
= 0; i
< 5; ++i
);
92 // expected-error@+1{{OpenACC 'firstprivate' clause is not valid on 'loop' directive}}
93 #pragma acc loop auto firstprivate(Var)
94 for(unsigned i
= 0; i
< 5; ++i
);
95 // expected-error@+1{{OpenACC 'host' clause is not valid on 'loop' directive}}
96 #pragma acc loop auto host(Var)
97 for(unsigned i
= 0; i
< 5; ++i
);
98 // expected-warning@+1{{OpenACC clause 'link' not yet implemented}}
99 #pragma acc loop auto link(Var)
100 for(unsigned i
= 0; i
< 5; ++i
);
101 // expected-error@+1{{OpenACC 'no_create' clause is not valid on 'loop' directive}}
102 #pragma acc loop auto no_create(Var)
103 for(unsigned i
= 0; i
< 5; ++i
);
104 // expected-error@+1{{OpenACC 'present' clause is not valid on 'loop' directive}}
105 #pragma acc loop auto present(Var)
106 for(unsigned i
= 0; i
< 5; ++i
);
107 #pragma acc loop auto private(Var)
108 for(unsigned i
= 0; i
< 5; ++i
);
109 // expected-error@+1{{OpenACC 'copyout' clause is not valid on 'loop' directive}}
110 #pragma acc loop auto copyout(Var)
111 for(unsigned i
= 0; i
< 5; ++i
);
112 // expected-error@+1{{OpenACC 'pcopyout' clause is not valid on 'loop' directive}}
113 #pragma acc loop auto pcopyout(Var)
114 for(unsigned i
= 0; i
< 5; ++i
);
115 // expected-error@+1{{OpenACC 'present_or_copyout' clause is not valid on 'loop' directive}}
116 #pragma acc loop auto present_or_copyout(Var)
117 for(unsigned i
= 0; i
< 5; ++i
);
118 // expected-error@+1{{OpenACC 'copyin' clause is not valid on 'loop' directive}}
119 #pragma acc loop auto copyin(Var)
120 for(unsigned i
= 0; i
< 5; ++i
);
121 // expected-error@+1{{OpenACC 'pcopyin' clause is not valid on 'loop' directive}}
122 #pragma acc loop auto pcopyin(Var)
123 for(unsigned i
= 0; i
< 5; ++i
);
124 // expected-error@+1{{OpenACC 'present_or_copyin' clause is not valid on 'loop' directive}}
125 #pragma acc loop auto present_or_copyin(Var)
126 for(unsigned i
= 0; i
< 5; ++i
);
127 // expected-error@+1{{OpenACC 'create' clause is not valid on 'loop' directive}}
128 #pragma acc loop auto create(Var)
129 for(unsigned i
= 0; i
< 5; ++i
);
130 // expected-error@+1{{OpenACC 'pcreate' clause is not valid on 'loop' directive}}
131 #pragma acc loop auto pcreate(Var)
132 for(unsigned i
= 0; i
< 5; ++i
);
133 // expected-error@+1{{OpenACC 'present_or_create' clause is not valid on 'loop' directive}}
134 #pragma acc loop auto present_or_create(Var)
135 for(unsigned i
= 0; i
< 5; ++i
);
136 #pragma acc loop auto reduction(+:Var)
137 for(unsigned i
= 0; i
< 5; ++i
);
138 #pragma acc loop auto collapse(1)
139 for(unsigned i
= 0; i
< 5; ++i
);
140 // expected-warning@+1{{OpenACC clause 'bind' not yet implemented}}
141 #pragma acc loop auto bind(Var)
142 for(unsigned i
= 0; i
< 5; ++i
);
143 // expected-error@+1{{OpenACC 'vector_length' clause is not valid on 'loop' directive}}
144 #pragma acc loop auto vector_length(1)
145 for(unsigned i
= 0; i
< 5; ++i
);
146 // expected-error@+1{{OpenACC 'num_gangs' clause is not valid on 'loop' directive}}
147 #pragma acc loop auto num_gangs(1)
148 for(unsigned i
= 0; i
< 5; ++i
);
149 // expected-error@+1{{OpenACC 'num_workers' clause is not valid on 'loop' directive}}
150 #pragma acc loop auto num_workers(1)
151 for(unsigned i
= 0; i
< 5; ++i
);
152 // expected-error@+1{{OpenACC 'device_num' clause is not valid on 'loop' directive}}
153 #pragma acc loop auto device_num(1)
154 for(unsigned i
= 0; i
< 5; ++i
);
155 // expected-error@+1{{OpenACC 'default_async' clause is not valid on 'loop' directive}}
156 #pragma acc loop auto default_async(1)
157 for(unsigned i
= 0; i
< 5; ++i
);
158 #pragma acc loop auto device_type(*)
159 for(unsigned i
= 0; i
< 5; ++i
);
160 #pragma acc loop auto dtype(*)
161 for(unsigned i
= 0; i
< 5; ++i
);
162 // expected-error@+1{{OpenACC 'async' clause is not valid on 'loop' directive}}
163 #pragma acc loop auto async
164 for(unsigned i
= 0; i
< 5; ++i
);
165 #pragma acc loop auto tile(1+2, 1)
166 for(unsigned j
= 0; j
< 5; ++j
)
167 for(unsigned i
= 0; i
< 5; ++i
);
168 #pragma acc loop auto gang
169 for(unsigned i
= 0; i
< 5; ++i
);
170 // expected-error@+1{{OpenACC 'wait' clause is not valid on 'loop' directive}}
171 #pragma acc loop auto wait
172 for(unsigned i
= 0; i
< 5; ++i
);
174 // expected-error@+1{{OpenACC 'finalize' clause is not valid on 'loop' directive}}
175 #pragma acc loop finalize auto
176 for(unsigned i
= 0; i
< 5; ++i
);
177 // expected-error@+1{{OpenACC 'if_present' clause is not valid on 'loop' directive}}
178 #pragma acc loop if_present auto
179 for(unsigned i
= 0; i
< 5; ++i
);
180 #pragma acc loop worker auto
181 for(unsigned i
= 0; i
< 5; ++i
);
182 #pragma acc loop vector auto
183 for(unsigned i
= 0; i
< 5; ++i
);
184 // expected-warning@+1{{OpenACC clause 'nohost' not yet implemented}}
185 #pragma acc loop nohost auto
186 for(unsigned i
= 0; i
< 5; ++i
);
187 // expected-error@+1{{OpenACC 'default' clause is not valid on 'loop' directive}}
188 #pragma acc loop default(none) auto
189 for(unsigned i
= 0; i
< 5; ++i
);
190 // expected-error@+1{{OpenACC 'if' clause is not valid on 'loop' directive}}
191 #pragma acc loop if(1) auto
192 for(unsigned i
= 0; i
< 5; ++i
);
193 // expected-error@+1{{OpenACC 'self' clause is not valid on 'loop' directive}}
194 #pragma acc loop self auto
195 for(unsigned i
= 0; i
< 5; ++i
);
196 // expected-error@+1{{OpenACC 'copy' clause is not valid on 'loop' directive}}
197 #pragma acc loop copy(Var) auto
198 for(unsigned i
= 0; i
< 5; ++i
);
199 // expected-error@+1{{OpenACC 'pcopy' clause is not valid on 'loop' directive}}
200 #pragma acc loop pcopy(Var) auto
201 for(unsigned i
= 0; i
< 5; ++i
);
202 // expected-error@+1{{OpenACC 'present_or_copy' clause is not valid on 'loop' directive}}
203 #pragma acc loop present_or_copy(Var) auto
204 for(unsigned i
= 0; i
< 5; ++i
);
205 // expected-error@+1{{OpenACC 'use_device' clause is not valid on 'loop' directive}}
206 #pragma acc loop use_device(Var) auto
207 for(unsigned i
= 0; i
< 5; ++i
);
208 // expected-error@+1{{OpenACC 'attach' clause is not valid on 'loop' directive}}
209 #pragma acc loop attach(Var) auto
210 for(unsigned i
= 0; i
< 5; ++i
);
211 // expected-error@+1{{OpenACC 'delete' clause is not valid on 'loop' directive}}
212 #pragma acc loop delete(Var) auto
213 for(unsigned i
= 0; i
< 5; ++i
);
214 // expected-error@+1{{OpenACC 'detach' clause is not valid on 'loop' directive}}
215 #pragma acc loop detach(Var) auto
216 for(unsigned i
= 0; i
< 5; ++i
);
217 // expected-error@+1{{OpenACC 'device' clause is not valid on 'loop' directive}}
218 #pragma acc loop device(VarPtr) auto
219 for(unsigned i
= 0; i
< 5; ++i
);
220 // expected-error@+1{{OpenACC 'deviceptr' clause is not valid on 'loop' directive}}
221 #pragma acc loop deviceptr(VarPtr) auto
222 for(unsigned i
= 0; i
< 5; ++i
);
223 // expected-warning@+1{{OpenACC clause 'device_resident' not yet implemented}}
224 #pragma acc loop device_resident(VarPtr) auto
225 for(unsigned i
= 0; i
< 5; ++i
);
226 // expected-error@+1{{OpenACC 'firstprivate' clause is not valid on 'loop' directive}}
227 #pragma acc loop firstprivate(Var) auto
228 for(unsigned i
= 0; i
< 5; ++i
);
229 // expected-error@+1{{OpenACC 'host' clause is not valid on 'loop' directive}}
230 #pragma acc loop host(Var) auto
231 for(unsigned i
= 0; i
< 5; ++i
);
232 // expected-warning@+1{{OpenACC clause 'link' not yet implemented}}
233 #pragma acc loop link(Var) auto
234 for(unsigned i
= 0; i
< 5; ++i
);
235 // expected-error@+1{{OpenACC 'no_create' clause is not valid on 'loop' directive}}
236 #pragma acc loop no_create(Var) auto
237 for(unsigned i
= 0; i
< 5; ++i
);
238 // expected-error@+1{{OpenACC 'present' clause is not valid on 'loop' directive}}
239 #pragma acc loop present(Var) auto
240 for(unsigned i
= 0; i
< 5; ++i
);
241 #pragma acc loop private(Var) auto
242 for(unsigned i
= 0; i
< 5; ++i
);
243 // expected-error@+1{{OpenACC 'copyout' clause is not valid on 'loop' directive}}
244 #pragma acc loop copyout(Var) auto
245 for(unsigned i
= 0; i
< 5; ++i
);
246 // expected-error@+1{{OpenACC 'pcopyout' clause is not valid on 'loop' directive}}
247 #pragma acc loop pcopyout(Var) auto
248 for(unsigned i
= 0; i
< 5; ++i
);
249 // expected-error@+1{{OpenACC 'present_or_copyout' clause is not valid on 'loop' directive}}
250 #pragma acc loop present_or_copyout(Var) auto
251 for(unsigned i
= 0; i
< 5; ++i
);
252 // expected-error@+1{{OpenACC 'copyin' clause is not valid on 'loop' directive}}
253 #pragma acc loop copyin(Var) auto
254 for(unsigned i
= 0; i
< 5; ++i
);
255 // expected-error@+1{{OpenACC 'pcopyin' clause is not valid on 'loop' directive}}
256 #pragma acc loop pcopyin(Var) auto
257 for(unsigned i
= 0; i
< 5; ++i
);
258 // expected-error@+1{{OpenACC 'present_or_copyin' clause is not valid on 'loop' directive}}
259 #pragma acc loop present_or_copyin(Var) auto
260 for(unsigned i
= 0; i
< 5; ++i
);
261 // expected-error@+1{{OpenACC 'create' clause is not valid on 'loop' directive}}
262 #pragma acc loop create(Var) auto
263 for(unsigned i
= 0; i
< 5; ++i
);
264 // expected-error@+1{{OpenACC 'pcreate' clause is not valid on 'loop' directive}}
265 #pragma acc loop pcreate(Var) auto
266 for(unsigned i
= 0; i
< 5; ++i
);
267 // expected-error@+1{{OpenACC 'present_or_create' clause is not valid on 'loop' directive}}
268 #pragma acc loop present_or_create(Var) auto
269 for(unsigned i
= 0; i
< 5; ++i
);
270 #pragma acc loop reduction(+:Var) auto
271 for(unsigned i
= 0; i
< 5; ++i
);
272 #pragma acc loop collapse(1) auto
273 for(unsigned i
= 0; i
< 5; ++i
);
274 // expected-warning@+1{{OpenACC clause 'bind' not yet implemented}}
275 #pragma acc loop bind(Var) auto
276 for(unsigned i
= 0; i
< 5; ++i
);
277 // expected-error@+1{{OpenACC 'vector_length' clause is not valid on 'loop' directive}}
278 #pragma acc loop vector_length(1) auto
279 for(unsigned i
= 0; i
< 5; ++i
);
280 // expected-error@+1{{OpenACC 'num_gangs' clause is not valid on 'loop' directive}}
281 #pragma acc loop num_gangs(1) auto
282 for(unsigned i
= 0; i
< 5; ++i
);
283 // expected-error@+1{{OpenACC 'num_workers' clause is not valid on 'loop' directive}}
284 #pragma acc loop num_workers(1) auto
285 for(unsigned i
= 0; i
< 5; ++i
);
286 // expected-error@+1{{OpenACC 'device_num' clause is not valid on 'loop' directive}}
287 #pragma acc loop device_num(1) auto
288 for(unsigned i
= 0; i
< 5; ++i
);
289 // expected-error@+1{{OpenACC 'default_async' clause is not valid on 'loop' directive}}
290 #pragma acc loop default_async(1) auto
291 for(unsigned i
= 0; i
< 5; ++i
);
292 #pragma acc loop device_type(*) auto
293 for(unsigned i
= 0; i
< 5; ++i
);
294 #pragma acc loop dtype(*) auto
295 for(unsigned i
= 0; i
< 5; ++i
);
296 // expected-error@+1{{OpenACC 'async' clause is not valid on 'loop' directive}}
297 #pragma acc loop async auto
298 for(unsigned i
= 0; i
< 5; ++i
);
299 #pragma acc loop tile(1+2, 1) auto
300 for(unsigned j
= 0; j
< 5; ++j
)
301 for(unsigned i
= 0; i
< 5; ++i
);
302 #pragma acc loop gang auto
303 for(unsigned i
= 0; i
< 5; ++i
);
304 // expected-error@+1{{OpenACC 'wait' clause is not valid on 'loop' directive}}
305 #pragma acc loop wait auto
306 for(unsigned i
= 0; i
< 5; ++i
);
308 // 'independent' can also be combined with any clauses
309 // expected-error@+1{{OpenACC 'finalize' clause is not valid on 'loop' directive}}
310 #pragma acc loop independent finalize
311 for(unsigned i
= 0; i
< 5; ++i
);
312 // expected-error@+1{{OpenACC 'if_present' clause is not valid on 'loop' directive}}
313 #pragma acc loop independent if_present
314 for(unsigned i
= 0; i
< 5; ++i
);
315 #pragma acc loop independent worker
316 for(unsigned i
= 0; i
< 5; ++i
);
317 #pragma acc loop independent vector
318 for(unsigned i
= 0; i
< 5; ++i
);
319 // expected-warning@+1{{OpenACC clause 'nohost' not yet implemented}}
320 #pragma acc loop independent nohost
321 for(unsigned i
= 0; i
< 5; ++i
);
322 // expected-error@+1{{OpenACC 'default' clause is not valid on 'loop' directive}}
323 #pragma acc loop independent default(none)
324 for(unsigned i
= 0; i
< 5; ++i
);
325 // expected-error@+1{{OpenACC 'if' clause is not valid on 'loop' directive}}
326 #pragma acc loop independent if(1)
327 for(unsigned i
= 0; i
< 5; ++i
);
328 // expected-error@+1{{OpenACC 'self' clause is not valid on 'loop' directive}}
329 #pragma acc loop independent self
330 for(unsigned i
= 0; i
< 5; ++i
);
331 // expected-error@+1{{OpenACC 'copy' clause is not valid on 'loop' directive}}
332 #pragma acc loop independent copy(Var)
333 for(unsigned i
= 0; i
< 5; ++i
);
334 // expected-error@+1{{OpenACC 'pcopy' clause is not valid on 'loop' directive}}
335 #pragma acc loop independent pcopy(Var)
336 for(unsigned i
= 0; i
< 5; ++i
);
337 // expected-error@+1{{OpenACC 'present_or_copy' clause is not valid on 'loop' directive}}
338 #pragma acc loop independent present_or_copy(Var)
339 for(unsigned i
= 0; i
< 5; ++i
);
340 // expected-error@+1{{OpenACC 'use_device' clause is not valid on 'loop' directive}}
341 #pragma acc loop independent use_device(Var)
342 for(unsigned i
= 0; i
< 5; ++i
);
343 // expected-error@+1{{OpenACC 'attach' clause is not valid on 'loop' directive}}
344 #pragma acc loop independent attach(Var)
345 for(unsigned i
= 0; i
< 5; ++i
);
346 // expected-error@+1{{OpenACC 'delete' clause is not valid on 'loop' directive}}
347 #pragma acc loop independent delete(Var)
348 for(unsigned i
= 0; i
< 5; ++i
);
349 // expected-error@+1{{OpenACC 'detach' clause is not valid on 'loop' directive}}
350 #pragma acc loop independent detach(Var)
351 for(unsigned i
= 0; i
< 5; ++i
);
352 // expected-error@+1{{OpenACC 'device' clause is not valid on 'loop' directive}}
353 #pragma acc loop independent device(VarPtr)
354 for(unsigned i
= 0; i
< 5; ++i
);
355 // expected-error@+1{{OpenACC 'deviceptr' clause is not valid on 'loop' directive}}
356 #pragma acc loop independent deviceptr(VarPtr)
357 for(unsigned i
= 0; i
< 5; ++i
);
358 // expected-warning@+1{{OpenACC clause 'device_resident' not yet implemented}}
359 #pragma acc loop independent device_resident(VarPtr)
360 for(unsigned i
= 0; i
< 5; ++i
);
361 // expected-error@+1{{OpenACC 'firstprivate' clause is not valid on 'loop' directive}}
362 #pragma acc loop independent firstprivate(Var)
363 for(unsigned i
= 0; i
< 5; ++i
);
364 // expected-error@+1{{OpenACC 'host' clause is not valid on 'loop' directive}}
365 #pragma acc loop independent host(Var)
366 for(unsigned i
= 0; i
< 5; ++i
);
367 // expected-warning@+1{{OpenACC clause 'link' not yet implemented}}
368 #pragma acc loop independent link(Var)
369 for(unsigned i
= 0; i
< 5; ++i
);
370 // expected-error@+1{{OpenACC 'no_create' clause is not valid on 'loop' directive}}
371 #pragma acc loop independent no_create(Var)
372 for(unsigned i
= 0; i
< 5; ++i
);
373 // expected-error@+1{{OpenACC 'present' clause is not valid on 'loop' directive}}
374 #pragma acc loop independent present(Var)
375 for(unsigned i
= 0; i
< 5; ++i
);
376 #pragma acc loop independent private(Var)
377 for(unsigned i
= 0; i
< 5; ++i
);
378 // expected-error@+1{{OpenACC 'copyout' clause is not valid on 'loop' directive}}
379 #pragma acc loop independent copyout(Var)
380 for(unsigned i
= 0; i
< 5; ++i
);
381 // expected-error@+1{{OpenACC 'pcopyout' clause is not valid on 'loop' directive}}
382 #pragma acc loop independent pcopyout(Var)
383 for(unsigned i
= 0; i
< 5; ++i
);
384 // expected-error@+1{{OpenACC 'present_or_copyout' clause is not valid on 'loop' directive}}
385 #pragma acc loop independent present_or_copyout(Var)
386 for(unsigned i
= 0; i
< 5; ++i
);
387 // expected-error@+1{{OpenACC 'copyin' clause is not valid on 'loop' directive}}
388 #pragma acc loop independent copyin(Var)
389 for(unsigned i
= 0; i
< 5; ++i
);
390 // expected-error@+1{{OpenACC 'pcopyin' clause is not valid on 'loop' directive}}
391 #pragma acc loop independent pcopyin(Var)
392 for(unsigned i
= 0; i
< 5; ++i
);
393 // expected-error@+1{{OpenACC 'present_or_copyin' clause is not valid on 'loop' directive}}
394 #pragma acc loop independent present_or_copyin(Var)
395 for(unsigned i
= 0; i
< 5; ++i
);
396 // expected-error@+1{{OpenACC 'create' clause is not valid on 'loop' directive}}
397 #pragma acc loop independent create(Var)
398 for(unsigned i
= 0; i
< 5; ++i
);
399 // expected-error@+1{{OpenACC 'pcreate' clause is not valid on 'loop' directive}}
400 #pragma acc loop independent pcreate(Var)
401 for(unsigned i
= 0; i
< 5; ++i
);
402 // expected-error@+1{{OpenACC 'present_or_create' clause is not valid on 'loop' directive}}
403 #pragma acc loop independent present_or_create(Var)
404 for(unsigned i
= 0; i
< 5; ++i
);
405 #pragma acc loop independent reduction(+:Var)
406 for(unsigned i
= 0; i
< 5; ++i
);
407 #pragma acc loop independent collapse(1)
408 for(unsigned i
= 0; i
< 5; ++i
);
409 // expected-warning@+1{{OpenACC clause 'bind' not yet implemented}}
410 #pragma acc loop independent bind(Var)
411 for(unsigned i
= 0; i
< 5; ++i
);
412 // expected-error@+1{{OpenACC 'vector_length' clause is not valid on 'loop' directive}}
413 #pragma acc loop independent vector_length(1)
414 for(unsigned i
= 0; i
< 5; ++i
);
415 // expected-error@+1{{OpenACC 'num_gangs' clause is not valid on 'loop' directive}}
416 #pragma acc loop independent num_gangs(1)
417 for(unsigned i
= 0; i
< 5; ++i
);
418 // expected-error@+1{{OpenACC 'num_workers' clause is not valid on 'loop' directive}}
419 #pragma acc loop independent num_workers(1)
420 for(unsigned i
= 0; i
< 5; ++i
);
421 // expected-error@+1{{OpenACC 'device_num' clause is not valid on 'loop' directive}}
422 #pragma acc loop independent device_num(1)
423 for(unsigned i
= 0; i
< 5; ++i
);
424 // expected-error@+1{{OpenACC 'default_async' clause is not valid on 'loop' directive}}
425 #pragma acc loop independent default_async(1)
426 for(unsigned i
= 0; i
< 5; ++i
);
427 #pragma acc loop independent device_type(*)
428 for(unsigned i
= 0; i
< 5; ++i
);
429 #pragma acc loop independent dtype(*)
430 for(unsigned i
= 0; i
< 5; ++i
);
431 // expected-error@+1{{OpenACC 'async' clause is not valid on 'loop' directive}}
432 #pragma acc loop independent async
433 for(unsigned i
= 0; i
< 5; ++i
);
434 #pragma acc loop independent tile(1+2, 1)
435 for(unsigned j
= 0; j
< 5; ++j
)
436 for(unsigned i
= 0; i
< 5; ++i
);
437 #pragma acc loop independent gang
438 for(unsigned i
= 0; i
< 5; ++i
);
439 // expected-error@+1{{OpenACC 'wait' clause is not valid on 'loop' directive}}
440 #pragma acc loop independent wait
441 for(unsigned i
= 0; i
< 5; ++i
);
443 // expected-error@+1{{OpenACC 'finalize' clause is not valid on 'loop' directive}}
444 #pragma acc loop finalize independent
445 for(unsigned i
= 0; i
< 5; ++i
);
446 // expected-error@+1{{OpenACC 'if_present' clause is not valid on 'loop' directive}}
447 #pragma acc loop if_present independent
448 for(unsigned i
= 0; i
< 5; ++i
);
449 #pragma acc loop worker independent
450 for(unsigned i
= 0; i
< 5; ++i
);
451 #pragma acc loop vector independent
452 for(unsigned i
= 0; i
< 5; ++i
);
453 // expected-warning@+1{{OpenACC clause 'nohost' not yet implemented}}
454 #pragma acc loop nohost independent
455 for(unsigned i
= 0; i
< 5; ++i
);
456 // expected-error@+1{{OpenACC 'default' clause is not valid on 'loop' directive}}
457 #pragma acc loop default(none) independent
458 for(unsigned i
= 0; i
< 5; ++i
);
459 // expected-error@+1{{OpenACC 'if' clause is not valid on 'loop' directive}}
460 #pragma acc loop if(1) independent
461 for(unsigned i
= 0; i
< 5; ++i
);
462 // expected-error@+1{{OpenACC 'self' clause is not valid on 'loop' directive}}
463 #pragma acc loop self independent
464 for(unsigned i
= 0; i
< 5; ++i
);
465 // expected-error@+1{{OpenACC 'copy' clause is not valid on 'loop' directive}}
466 #pragma acc loop copy(Var) independent
467 for(unsigned i
= 0; i
< 5; ++i
);
468 // expected-error@+1{{OpenACC 'pcopy' clause is not valid on 'loop' directive}}
469 #pragma acc loop pcopy(Var) independent
470 for(unsigned i
= 0; i
< 5; ++i
);
471 // expected-error@+1{{OpenACC 'present_or_copy' clause is not valid on 'loop' directive}}
472 #pragma acc loop present_or_copy(Var) independent
473 for(unsigned i
= 0; i
< 5; ++i
);
474 // expected-error@+1{{OpenACC 'use_device' clause is not valid on 'loop' directive}}
475 #pragma acc loop use_device(Var) independent
476 for(unsigned i
= 0; i
< 5; ++i
);
477 // expected-error@+1{{OpenACC 'attach' clause is not valid on 'loop' directive}}
478 #pragma acc loop attach(Var) independent
479 for(unsigned i
= 0; i
< 5; ++i
);
480 // expected-error@+1{{OpenACC 'delete' clause is not valid on 'loop' directive}}
481 #pragma acc loop delete(Var) independent
482 for(unsigned i
= 0; i
< 5; ++i
);
483 // expected-error@+1{{OpenACC 'detach' clause is not valid on 'loop' directive}}
484 #pragma acc loop detach(Var) independent
485 for(unsigned i
= 0; i
< 5; ++i
);
486 // expected-error@+1{{OpenACC 'device' clause is not valid on 'loop' directive}}
487 #pragma acc loop device(VarPtr) independent
488 for(unsigned i
= 0; i
< 5; ++i
);
489 // expected-error@+1{{OpenACC 'deviceptr' clause is not valid on 'loop' directive}}
490 #pragma acc loop deviceptr(VarPtr) independent
491 for(unsigned i
= 0; i
< 5; ++i
);
492 // expected-warning@+1{{OpenACC clause 'device_resident' not yet implemented}}
493 #pragma acc loop device_resident(VarPtr) independent
494 for(unsigned i
= 0; i
< 5; ++i
);
495 // expected-error@+1{{OpenACC 'firstprivate' clause is not valid on 'loop' directive}}
496 #pragma acc loop firstprivate(Var) independent
497 for(unsigned i
= 0; i
< 5; ++i
);
498 // expected-error@+1{{OpenACC 'host' clause is not valid on 'loop' directive}}
499 #pragma acc loop host(Var) independent
500 for(unsigned i
= 0; i
< 5; ++i
);
501 // expected-warning@+1{{OpenACC clause 'link' not yet implemented}}
502 #pragma acc loop link(Var) independent
503 for(unsigned i
= 0; i
< 5; ++i
);
504 // expected-error@+1{{OpenACC 'no_create' clause is not valid on 'loop' directive}}
505 #pragma acc loop no_create(Var) independent
506 for(unsigned i
= 0; i
< 5; ++i
);
507 // expected-error@+1{{OpenACC 'present' clause is not valid on 'loop' directive}}
508 #pragma acc loop present(Var) independent
509 for(unsigned i
= 0; i
< 5; ++i
);
510 #pragma acc loop private(Var) independent
511 for(unsigned i
= 0; i
< 5; ++i
);
512 // expected-error@+1{{OpenACC 'copyout' clause is not valid on 'loop' directive}}
513 #pragma acc loop copyout(Var) independent
514 for(unsigned i
= 0; i
< 5; ++i
);
515 // expected-error@+1{{OpenACC 'pcopyout' clause is not valid on 'loop' directive}}
516 #pragma acc loop pcopyout(Var) independent
517 for(unsigned i
= 0; i
< 5; ++i
);
518 // expected-error@+1{{OpenACC 'present_or_copyout' clause is not valid on 'loop' directive}}
519 #pragma acc loop present_or_copyout(Var) independent
520 for(unsigned i
= 0; i
< 5; ++i
);
521 // expected-error@+1{{OpenACC 'copyin' clause is not valid on 'loop' directive}}
522 #pragma acc loop copyin(Var) independent
523 for(unsigned i
= 0; i
< 5; ++i
);
524 // expected-error@+1{{OpenACC 'pcopyin' clause is not valid on 'loop' directive}}
525 #pragma acc loop pcopyin(Var) independent
526 for(unsigned i
= 0; i
< 5; ++i
);
527 // expected-error@+1{{OpenACC 'present_or_copyin' clause is not valid on 'loop' directive}}
528 #pragma acc loop present_or_copyin(Var) independent
529 for(unsigned i
= 0; i
< 5; ++i
);
530 // expected-error@+1{{OpenACC 'create' clause is not valid on 'loop' directive}}
531 #pragma acc loop create(Var) independent
532 for(unsigned i
= 0; i
< 5; ++i
);
533 // expected-error@+1{{OpenACC 'pcreate' clause is not valid on 'loop' directive}}
534 #pragma acc loop pcreate(Var) independent
535 for(unsigned i
= 0; i
< 5; ++i
);
536 // expected-error@+1{{OpenACC 'present_or_create' clause is not valid on 'loop' directive}}
537 #pragma acc loop present_or_create(Var) independent
538 for(unsigned i
= 0; i
< 5; ++i
);
539 #pragma acc loop reduction(+:Var) independent
540 for(unsigned i
= 0; i
< 5; ++i
);
541 #pragma acc loop collapse(1) independent
542 for(unsigned i
= 0; i
< 5; ++i
);
543 // expected-warning@+1{{OpenACC clause 'bind' not yet implemented}}
544 #pragma acc loop bind(Var) independent
545 for(unsigned i
= 0; i
< 5; ++i
);
546 // expected-error@+1{{OpenACC 'vector_length' clause is not valid on 'loop' directive}}
547 #pragma acc loop vector_length(1) independent
548 for(unsigned i
= 0; i
< 5; ++i
);
549 // expected-error@+1{{OpenACC 'num_gangs' clause is not valid on 'loop' directive}}
550 #pragma acc loop num_gangs(1) independent
551 for(unsigned i
= 0; i
< 5; ++i
);
552 // expected-error@+1{{OpenACC 'num_workers' clause is not valid on 'loop' directive}}
553 #pragma acc loop num_workers(1) independent
554 for(unsigned i
= 0; i
< 5; ++i
);
555 // expected-error@+1{{OpenACC 'device_num' clause is not valid on 'loop' directive}}
556 #pragma acc loop device_num(1) independent
557 for(unsigned i
= 0; i
< 5; ++i
);
558 // expected-error@+1{{OpenACC 'default_async' clause is not valid on 'loop' directive}}
559 #pragma acc loop default_async(1) independent
560 for(unsigned i
= 0; i
< 5; ++i
);
561 #pragma acc loop device_type(*) independent
562 for(unsigned i
= 0; i
< 5; ++i
);
563 #pragma acc loop dtype(*) independent
564 for(unsigned i
= 0; i
< 5; ++i
);
565 // expected-error@+1{{OpenACC 'async' clause is not valid on 'loop' directive}}
566 #pragma acc loop async independent
567 for(unsigned i
= 0; i
< 5; ++i
);
568 #pragma acc loop tile(1+2, 1) independent
569 for(unsigned j
= 0; j
< 5; ++j
)
570 for(unsigned i
= 0; i
< 5; ++i
);
571 #pragma acc loop gang independent
572 for(unsigned i
= 0; i
< 5; ++i
);
573 // expected-error@+1{{OpenACC 'wait' clause is not valid on 'loop' directive}}
574 #pragma acc loop wait independent
575 for(unsigned i
= 0; i
< 5; ++i
);
577 // 'seq' cannot be combined with 'gang', 'worker' or 'vector'
578 // expected-error@+2{{OpenACC clause 'gang' may not appear on the same construct as a 'seq' clause on a 'loop' construct}}
579 // expected-note@+1{{previous clause is here}}
580 #pragma acc loop seq gang
581 for(unsigned i
= 0; i
< 5; ++i
);
582 // expected-error@+2{{OpenACC clause 'worker' may not appear on the same construct as a 'seq' clause on a 'loop' construct}}
583 // expected-note@+1{{previous clause is here}}
584 #pragma acc loop seq worker
585 for(unsigned i
= 0; i
< 5; ++i
);
586 // expected-error@+2{{OpenACC clause 'vector' may not appear on the same construct as a 'seq' clause on a 'loop' construct}}
587 // expected-note@+1{{previous clause is here}}
588 #pragma acc loop seq vector
589 for(unsigned i
= 0; i
< 5; ++i
);
590 // expected-error@+1{{OpenACC 'finalize' clause is not valid on 'loop' directive}}
591 #pragma acc loop seq finalize
592 for(unsigned i
= 0; i
< 5; ++i
);
593 // expected-error@+1{{OpenACC 'if_present' clause is not valid on 'loop' directive}}
594 #pragma acc loop seq if_present
595 for(unsigned i
= 0; i
< 5; ++i
);
596 // expected-warning@+1{{OpenACC clause 'nohost' not yet implemented}}
597 #pragma acc loop seq nohost
598 for(unsigned i
= 0; i
< 5; ++i
);
599 // expected-error@+1{{OpenACC 'default' clause is not valid on 'loop' directive}}
600 #pragma acc loop seq default(none)
601 for(unsigned i
= 0; i
< 5; ++i
);
602 // expected-error@+1{{OpenACC 'if' clause is not valid on 'loop' directive}}
603 #pragma acc loop seq if(1)
604 for(unsigned i
= 0; i
< 5; ++i
);
605 // expected-error@+1{{OpenACC 'self' clause is not valid on 'loop' directive}}
606 #pragma acc loop seq self
607 for(unsigned i
= 0; i
< 5; ++i
);
608 // expected-error@+1{{OpenACC 'copy' clause is not valid on 'loop' directive}}
609 #pragma acc loop seq copy(Var)
610 for(unsigned i
= 0; i
< 5; ++i
);
611 // expected-error@+1{{OpenACC 'pcopy' clause is not valid on 'loop' directive}}
612 #pragma acc loop seq pcopy(Var)
613 for(unsigned i
= 0; i
< 5; ++i
);
614 // expected-error@+1{{OpenACC 'present_or_copy' clause is not valid on 'loop' directive}}
615 #pragma acc loop seq present_or_copy(Var)
616 for(unsigned i
= 0; i
< 5; ++i
);
617 // expected-error@+1{{OpenACC 'use_device' clause is not valid on 'loop' directive}}
618 #pragma acc loop seq use_device(Var)
619 for(unsigned i
= 0; i
< 5; ++i
);
620 // expected-error@+1{{OpenACC 'attach' clause is not valid on 'loop' directive}}
621 #pragma acc loop seq attach(Var)
622 for(unsigned i
= 0; i
< 5; ++i
);
623 // expected-error@+1{{OpenACC 'delete' clause is not valid on 'loop' directive}}
624 #pragma acc loop seq delete(Var)
625 for(unsigned i
= 0; i
< 5; ++i
);
626 // expected-error@+1{{OpenACC 'detach' clause is not valid on 'loop' directive}}
627 #pragma acc loop seq detach(Var)
628 for(unsigned i
= 0; i
< 5; ++i
);
629 // expected-error@+1{{OpenACC 'device' clause is not valid on 'loop' directive}}
630 #pragma acc loop seq device(VarPtr)
631 for(unsigned i
= 0; i
< 5; ++i
);
632 // expected-error@+1{{OpenACC 'deviceptr' clause is not valid on 'loop' directive}}
633 #pragma acc loop seq deviceptr(VarPtr)
634 for(unsigned i
= 0; i
< 5; ++i
);
635 // expected-warning@+1{{OpenACC clause 'device_resident' not yet implemented}}
636 #pragma acc loop seq device_resident(VarPtr)
637 for(unsigned i
= 0; i
< 5; ++i
);
638 // expected-error@+1{{OpenACC 'firstprivate' clause is not valid on 'loop' directive}}
639 #pragma acc loop seq firstprivate(Var)
640 for(unsigned i
= 0; i
< 5; ++i
);
641 // expected-error@+1{{OpenACC 'host' clause is not valid on 'loop' directive}}
642 #pragma acc loop seq host(Var)
643 for(unsigned i
= 0; i
< 5; ++i
);
644 // expected-warning@+1{{OpenACC clause 'link' not yet implemented}}
645 #pragma acc loop seq link(Var)
646 for(unsigned i
= 0; i
< 5; ++i
);
647 // expected-error@+1{{OpenACC 'no_create' clause is not valid on 'loop' directive}}
648 #pragma acc loop seq no_create(Var)
649 for(unsigned i
= 0; i
< 5; ++i
);
650 // expected-error@+1{{OpenACC 'present' clause is not valid on 'loop' directive}}
651 #pragma acc loop seq present(Var)
652 for(unsigned i
= 0; i
< 5; ++i
);
653 #pragma acc loop seq private(Var)
654 for(unsigned i
= 0; i
< 5; ++i
);
655 // expected-error@+1{{OpenACC 'copyout' clause is not valid on 'loop' directive}}
656 #pragma acc loop seq copyout(Var)
657 for(unsigned i
= 0; i
< 5; ++i
);
658 // expected-error@+1{{OpenACC 'pcopyout' clause is not valid on 'loop' directive}}
659 #pragma acc loop seq pcopyout(Var)
660 for(unsigned i
= 0; i
< 5; ++i
);
661 // expected-error@+1{{OpenACC 'present_or_copyout' clause is not valid on 'loop' directive}}
662 #pragma acc loop seq present_or_copyout(Var)
663 for(unsigned i
= 0; i
< 5; ++i
);
664 // expected-error@+1{{OpenACC 'copyin' clause is not valid on 'loop' directive}}
665 #pragma acc loop seq copyin(Var)
666 for(unsigned i
= 0; i
< 5; ++i
);
667 // expected-error@+1{{OpenACC 'pcopyin' clause is not valid on 'loop' directive}}
668 #pragma acc loop seq pcopyin(Var)
669 for(unsigned i
= 0; i
< 5; ++i
);
670 // expected-error@+1{{OpenACC 'present_or_copyin' clause is not valid on 'loop' directive}}
671 #pragma acc loop seq present_or_copyin(Var)
672 for(unsigned i
= 0; i
< 5; ++i
);
673 // expected-error@+1{{OpenACC 'create' clause is not valid on 'loop' directive}}
674 #pragma acc loop seq create(Var)
675 for(unsigned i
= 0; i
< 5; ++i
);
676 // expected-error@+1{{OpenACC 'pcreate' clause is not valid on 'loop' directive}}
677 #pragma acc loop seq pcreate(Var)
678 for(unsigned i
= 0; i
< 5; ++i
);
679 // expected-error@+1{{OpenACC 'present_or_create' clause is not valid on 'loop' directive}}
680 #pragma acc loop seq present_or_create(Var)
681 for(unsigned i
= 0; i
< 5; ++i
);
682 #pragma acc loop seq reduction(+:Var)
683 for(unsigned i
= 0; i
< 5; ++i
);
684 #pragma acc loop seq collapse(1)
685 for(unsigned i
= 0; i
< 5; ++i
);
686 // expected-warning@+1{{OpenACC clause 'bind' not yet implemented}}
687 #pragma acc loop seq bind(Var)
688 for(unsigned i
= 0; i
< 5; ++i
);
689 // expected-error@+1{{OpenACC 'vector_length' clause is not valid on 'loop' directive}}
690 #pragma acc loop seq vector_length(1)
691 for(unsigned i
= 0; i
< 5; ++i
);
692 // expected-error@+1{{OpenACC 'num_gangs' clause is not valid on 'loop' directive}}
693 #pragma acc loop seq num_gangs(1)
694 for(unsigned i
= 0; i
< 5; ++i
);
695 // expected-error@+1{{OpenACC 'num_workers' clause is not valid on 'loop' directive}}
696 #pragma acc loop seq num_workers(1)
697 for(unsigned i
= 0; i
< 5; ++i
);
698 // expected-error@+1{{OpenACC 'device_num' clause is not valid on 'loop' directive}}
699 #pragma acc loop seq device_num(1)
700 for(unsigned i
= 0; i
< 5; ++i
);
701 // expected-error@+1{{OpenACC 'default_async' clause is not valid on 'loop' directive}}
702 #pragma acc loop seq default_async(1)
703 for(unsigned i
= 0; i
< 5; ++i
);
704 #pragma acc loop seq device_type(*)
705 for(unsigned i
= 0; i
< 5; ++i
);
706 #pragma acc loop seq dtype(*)
707 for(unsigned i
= 0; i
< 5; ++i
);
708 // expected-error@+1{{OpenACC 'async' clause is not valid on 'loop' directive}}
709 #pragma acc loop seq async
710 for(unsigned i
= 0; i
< 5; ++i
);
711 #pragma acc loop seq tile(1+2, 1)
713 for(unsigned i
= 0; i
< 5; ++i
);
714 // expected-error@+1{{OpenACC 'wait' clause is not valid on 'loop' directive}}
715 #pragma acc loop seq wait
716 for(unsigned i
= 0; i
< 5; ++i
);
718 // expected-error@+2{{OpenACC clause 'seq' may not appear on the same construct as a 'gang' clause on a 'loop' construct}}
719 // expected-note@+1{{previous clause is here}}
720 #pragma acc loop gang seq
721 for(unsigned i
= 0; i
< 5; ++i
);
722 // expected-error@+2{{OpenACC clause 'seq' may not appear on the same construct as a 'worker' clause on a 'loop' construct}}
723 // expected-note@+1{{previous clause is here}}
724 #pragma acc loop worker seq
725 for(unsigned i
= 0; i
< 5; ++i
);
726 // expected-error@+2{{OpenACC clause 'seq' may not appear on the same construct as a 'vector' clause on a 'loop' construct}}
727 // expected-note@+1{{previous clause is here}}
728 #pragma acc loop vector seq
729 for(unsigned i
= 0; i
< 5; ++i
);
730 // expected-error@+1{{OpenACC 'finalize' clause is not valid on 'loop' directive}}
731 #pragma acc loop finalize seq
732 for(unsigned i
= 0; i
< 5; ++i
);
733 // expected-error@+1{{OpenACC 'if_present' clause is not valid on 'loop' directive}}
734 #pragma acc loop if_present seq
735 for(unsigned i
= 0; i
< 5; ++i
);
736 // expected-warning@+1{{OpenACC clause 'nohost' not yet implemented}}
737 #pragma acc loop nohost seq
738 for(unsigned i
= 0; i
< 5; ++i
);
739 // expected-error@+1{{OpenACC 'default' clause is not valid on 'loop' directive}}
740 #pragma acc loop default(none) seq
741 for(unsigned i
= 0; i
< 5; ++i
);
742 // expected-error@+1{{OpenACC 'if' clause is not valid on 'loop' directive}}
743 #pragma acc loop if(1) seq
744 for(unsigned i
= 0; i
< 5; ++i
);
745 // expected-error@+1{{OpenACC 'self' clause is not valid on 'loop' directive}}
746 #pragma acc loop self seq
747 for(unsigned i
= 0; i
< 5; ++i
);
748 // expected-error@+1{{OpenACC 'copy' clause is not valid on 'loop' directive}}
749 #pragma acc loop copy(Var) seq
750 for(unsigned i
= 0; i
< 5; ++i
);
751 // expected-error@+1{{OpenACC 'pcopy' clause is not valid on 'loop' directive}}
752 #pragma acc loop pcopy(Var) seq
753 for(unsigned i
= 0; i
< 5; ++i
);
754 // expected-error@+1{{OpenACC 'present_or_copy' clause is not valid on 'loop' directive}}
755 #pragma acc loop present_or_copy(Var) seq
756 for(unsigned i
= 0; i
< 5; ++i
);
757 // expected-error@+1{{OpenACC 'use_device' clause is not valid on 'loop' directive}}
758 #pragma acc loop use_device(Var) seq
759 for(unsigned i
= 0; i
< 5; ++i
);
760 // expected-error@+1{{OpenACC 'attach' clause is not valid on 'loop' directive}}
761 #pragma acc loop attach(Var) seq
762 for(unsigned i
= 0; i
< 5; ++i
);
763 // expected-error@+1{{OpenACC 'delete' clause is not valid on 'loop' directive}}
764 #pragma acc loop delete(Var) seq
765 for(unsigned i
= 0; i
< 5; ++i
);
766 // expected-error@+1{{OpenACC 'detach' clause is not valid on 'loop' directive}}
767 #pragma acc loop detach(Var) seq
768 for(unsigned i
= 0; i
< 5; ++i
);
769 // expected-error@+1{{OpenACC 'device' clause is not valid on 'loop' directive}}
770 #pragma acc loop device(VarPtr) seq
771 for(unsigned i
= 0; i
< 5; ++i
);
772 // expected-error@+1{{OpenACC 'deviceptr' clause is not valid on 'loop' directive}}
773 #pragma acc loop deviceptr(VarPtr) seq
774 for(unsigned i
= 0; i
< 5; ++i
);
775 // expected-warning@+1{{OpenACC clause 'device_resident' not yet implemented}}
776 #pragma acc loop device_resident(VarPtr) seq
777 for(unsigned i
= 0; i
< 5; ++i
);
778 // expected-error@+1{{OpenACC 'firstprivate' clause is not valid on 'loop' directive}}
779 #pragma acc loop firstprivate(Var) seq
780 for(unsigned i
= 0; i
< 5; ++i
);
781 // expected-error@+1{{OpenACC 'host' clause is not valid on 'loop' directive}}
782 #pragma acc loop host(Var) seq
783 for(unsigned i
= 0; i
< 5; ++i
);
784 // expected-warning@+1{{OpenACC clause 'link' not yet implemented}}
785 #pragma acc loop link(Var) seq
786 for(unsigned i
= 0; i
< 5; ++i
);
787 // expected-error@+1{{OpenACC 'no_create' clause is not valid on 'loop' directive}}
788 #pragma acc loop no_create(Var) seq
789 for(unsigned i
= 0; i
< 5; ++i
);
790 // expected-error@+1{{OpenACC 'present' clause is not valid on 'loop' directive}}
791 #pragma acc loop present(Var) seq
792 for(unsigned i
= 0; i
< 5; ++i
);
793 #pragma acc loop private(Var) seq
794 for(unsigned i
= 0; i
< 5; ++i
);
795 // expected-error@+1{{OpenACC 'copyout' clause is not valid on 'loop' directive}}
796 #pragma acc loop copyout(Var) seq
797 for(unsigned i
= 0; i
< 5; ++i
);
798 // expected-error@+1{{OpenACC 'pcopyout' clause is not valid on 'loop' directive}}
799 #pragma acc loop pcopyout(Var) seq
800 for(unsigned i
= 0; i
< 5; ++i
);
801 // expected-error@+1{{OpenACC 'present_or_copyout' clause is not valid on 'loop' directive}}
802 #pragma acc loop present_or_copyout(Var) seq
803 for(unsigned i
= 0; i
< 5; ++i
);
804 // expected-error@+1{{OpenACC 'copyin' clause is not valid on 'loop' directive}}
805 #pragma acc loop copyin(Var) seq
806 for(unsigned i
= 0; i
< 5; ++i
);
807 // expected-error@+1{{OpenACC 'pcopyin' clause is not valid on 'loop' directive}}
808 #pragma acc loop pcopyin(Var) seq
809 for(unsigned i
= 0; i
< 5; ++i
);
810 // expected-error@+1{{OpenACC 'present_or_copyin' clause is not valid on 'loop' directive}}
811 #pragma acc loop present_or_copyin(Var) seq
812 for(unsigned i
= 0; i
< 5; ++i
);
813 // expected-error@+1{{OpenACC 'create' clause is not valid on 'loop' directive}}
814 #pragma acc loop create(Var) seq
815 for(unsigned i
= 0; i
< 5; ++i
);
816 // expected-error@+1{{OpenACC 'pcreate' clause is not valid on 'loop' directive}}
817 #pragma acc loop pcreate(Var) seq
818 for(unsigned i
= 0; i
< 5; ++i
);
819 // expected-error@+1{{OpenACC 'present_or_create' clause is not valid on 'loop' directive}}
820 #pragma acc loop present_or_create(Var) seq
821 for(unsigned i
= 0; i
< 5; ++i
);
822 #pragma acc loop reduction(+:Var) seq
823 for(unsigned i
= 0; i
< 5; ++i
);
824 #pragma acc loop collapse(1) seq
825 for(unsigned i
= 0; i
< 5; ++i
);
826 // expected-warning@+1{{OpenACC clause 'bind' not yet implemented}}
827 #pragma acc loop bind(Var) seq
828 for(unsigned i
= 0; i
< 5; ++i
);
829 // expected-error@+1{{OpenACC 'vector_length' clause is not valid on 'loop' directive}}
830 #pragma acc loop vector_length(1) seq
831 for(unsigned i
= 0; i
< 5; ++i
);
832 // expected-error@+1{{OpenACC 'num_gangs' clause is not valid on 'loop' directive}}
833 #pragma acc loop num_gangs(1) seq
834 for(unsigned i
= 0; i
< 5; ++i
);
835 // expected-error@+1{{OpenACC 'num_workers' clause is not valid on 'loop' directive}}
836 #pragma acc loop num_workers(1) seq
837 for(unsigned i
= 0; i
< 5; ++i
);
838 // expected-error@+1{{OpenACC 'device_num' clause is not valid on 'loop' directive}}
839 #pragma acc loop device_num(1) seq
840 for(unsigned i
= 0; i
< 5; ++i
);
841 // expected-error@+1{{OpenACC 'default_async' clause is not valid on 'loop' directive}}
842 #pragma acc loop default_async(1) seq
843 for(unsigned i
= 0; i
< 5; ++i
);
844 #pragma acc loop device_type(*) seq
845 for(unsigned i
= 0; i
< 5; ++i
);
846 #pragma acc loop dtype(*) seq
847 for(unsigned i
= 0; i
< 5; ++i
);
848 // expected-error@+1{{OpenACC 'async' clause is not valid on 'loop' directive}}
849 #pragma acc loop async seq
850 for(unsigned i
= 0; i
< 5; ++i
);
851 #pragma acc loop tile(1+2, 1) seq
853 for(unsigned i
= 0; i
< 5; ++i
);
854 // expected-error@+1{{OpenACC 'wait' clause is not valid on 'loop' directive}}
855 #pragma acc loop wait seq
856 for(unsigned i
= 0; i
< 5; ++i
);