]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/blob - contrib/llvm/tools/clang/include/clang/Basic/OpenMPKinds.def
MFV r316877: 7571 non-present readonly numeric ZFS props do not have default value
[FreeBSD/FreeBSD.git] / contrib / llvm / tools / clang / include / clang / Basic / OpenMPKinds.def
1 //===--- OpenMPKinds.def - OpenMP directives and clauses list ---*- C++ -*-===//
2 //
3 //                     The LLVM Compiler Infrastructure
4 //
5 // This file is distributed under the University of Illinois Open Source
6 // License. See LICENSE.TXT for details.
7 //
8 //===----------------------------------------------------------------------===//
9 /// \file
10 /// \brief This file defines the list of supported OpenMP directives and
11 /// clauses.
12 ///
13 //===----------------------------------------------------------------------===//
14
15 #ifndef OPENMP_DIRECTIVE
16 #  define OPENMP_DIRECTIVE(Name)
17 #endif
18 #ifndef OPENMP_DIRECTIVE_EXT
19 #define OPENMP_DIRECTIVE_EXT(Name, Str)
20 #endif
21 #ifndef OPENMP_CLAUSE
22 #  define OPENMP_CLAUSE(Name, Class)
23 #endif
24 #ifndef OPENMP_PARALLEL_CLAUSE
25 #  define OPENMP_PARALLEL_CLAUSE(Name)
26 #endif
27 #ifndef OPENMP_SIMD_CLAUSE
28 #  define OPENMP_SIMD_CLAUSE(Name)
29 #endif
30 #ifndef OPENMP_FOR_CLAUSE
31 #  define OPENMP_FOR_CLAUSE(Name)
32 #endif
33 #ifndef OPENMP_FOR_SIMD_CLAUSE
34 #  define OPENMP_FOR_SIMD_CLAUSE(Name)
35 #endif
36 #ifndef OPENMP_SECTIONS_CLAUSE
37 #  define OPENMP_SECTIONS_CLAUSE(Name)
38 #endif
39 #ifndef OPENMP_SINGLE_CLAUSE
40 #  define OPENMP_SINGLE_CLAUSE(Name)
41 #endif
42 #ifndef OPENMP_PARALLEL_FOR_CLAUSE
43 #  define OPENMP_PARALLEL_FOR_CLAUSE(Name)
44 #endif
45 #ifndef OPENMP_PARALLEL_FOR_SIMD_CLAUSE
46 #  define OPENMP_PARALLEL_FOR_SIMD_CLAUSE(Name)
47 #endif
48 #ifndef OPENMP_PARALLEL_SECTIONS_CLAUSE
49 #  define OPENMP_PARALLEL_SECTIONS_CLAUSE(Name)
50 #endif
51 #ifndef OPENMP_TASK_CLAUSE
52 #  define OPENMP_TASK_CLAUSE(Name)
53 #endif
54 #ifndef OPENMP_ATOMIC_CLAUSE
55 #  define OPENMP_ATOMIC_CLAUSE(Name)
56 #endif
57 #ifndef OPENMP_TARGET_CLAUSE
58 #  define OPENMP_TARGET_CLAUSE(Name)
59 #endif
60 #ifndef OPENMP_TARGET_DATA_CLAUSE
61 #  define OPENMP_TARGET_DATA_CLAUSE(Name)
62 #endif
63 #ifndef OPENMP_TARGET_ENTER_DATA_CLAUSE
64 #define OPENMP_TARGET_ENTER_DATA_CLAUSE(Name)
65 #endif
66 #ifndef OPENMP_TARGET_EXIT_DATA_CLAUSE
67 #define OPENMP_TARGET_EXIT_DATA_CLAUSE(Name)
68 #endif
69 #ifndef OPENMP_TARGET_PARALLEL_CLAUSE
70 #  define OPENMP_TARGET_PARALLEL_CLAUSE(Name)
71 #endif
72 #ifndef OPENMP_TARGET_PARALLEL_FOR_CLAUSE
73 #  define OPENMP_TARGET_PARALLEL_FOR_CLAUSE(Name)
74 #endif
75 #ifndef OPENMP_TARGET_UPDATE_CLAUSE
76 #  define OPENMP_TARGET_UPDATE_CLAUSE(Name)
77 #endif
78 #ifndef OPENMP_TEAMS_CLAUSE
79 #  define OPENMP_TEAMS_CLAUSE(Name)
80 #endif
81 #ifndef OPENMP_CANCEL_CLAUSE
82 #  define OPENMP_CANCEL_CLAUSE(Name)
83 #endif
84 #ifndef OPENMP_ORDERED_CLAUSE
85 #  define OPENMP_ORDERED_CLAUSE(Name)
86 #endif
87 #ifndef OPENMP_TASKLOOP_CLAUSE
88 #  define OPENMP_TASKLOOP_CLAUSE(Name)
89 #endif
90 #ifndef OPENMP_TASKLOOP_SIMD_CLAUSE
91 #  define OPENMP_TASKLOOP_SIMD_CLAUSE(Name)
92 #endif
93 #ifndef OPENMP_CRITICAL_CLAUSE
94 #  define OPENMP_CRITICAL_CLAUSE(Name)
95 #endif
96 #ifndef OPENMP_DISTRIBUTE_CLAUSE
97 #define OPENMP_DISTRIBUTE_CLAUSE(Name)
98 #endif
99 #ifndef OPENMP_DEFAULT_KIND
100 #  define OPENMP_DEFAULT_KIND(Name)
101 #endif
102 #ifndef OPENMP_PROC_BIND_KIND
103 #  define OPENMP_PROC_BIND_KIND(Name)
104 #endif
105 #ifndef OPENMP_SCHEDULE_KIND
106 #define OPENMP_SCHEDULE_KIND(Name)
107 #endif
108 #ifndef OPENMP_SCHEDULE_MODIFIER
109 #define OPENMP_SCHEDULE_MODIFIER(Name)
110 #endif
111 #ifndef OPENMP_DEPEND_KIND
112 #define OPENMP_DEPEND_KIND(Name)
113 #endif
114 #ifndef OPENMP_LINEAR_KIND
115 #define OPENMP_LINEAR_KIND(Name)
116 #endif
117 #ifndef OPENMP_MAP_KIND
118 #define OPENMP_MAP_KIND(Name)
119 #endif
120 #ifndef OPENMP_DIST_SCHEDULE_KIND
121 #define OPENMP_DIST_SCHEDULE_KIND(Name)
122 #endif
123 #ifndef OPENMP_DEFAULTMAP_KIND
124 #define OPENMP_DEFAULTMAP_KIND(Name)
125 #endif
126 #ifndef OPENMP_DEFAULTMAP_MODIFIER
127 #define OPENMP_DEFAULTMAP_MODIFIER(Name)
128 #endif
129 #ifndef OPENMP_DISTRIBUTE_PARALLEL_FOR_CLAUSE
130 #define OPENMP_DISTRIBUTE_PARALLEL_FOR_CLAUSE(Name)
131 #endif
132 #ifndef OPENMP_DISTRIBUTE_PARALLEL_FOR_SIMD_CLAUSE
133 #define OPENMP_DISTRIBUTE_PARALLEL_FOR_SIMD_CLAUSE(Name)
134 #endif
135 #ifndef OPENMP_DISTRIBUTE_SIMD_CLAUSE
136 #define OPENMP_DISTRIBUTE_SIMD_CLAUSE(Name)
137 #endif
138 #ifndef OPENMP_TARGET_PARALLEL_FOR_SIMD_CLAUSE
139 #define OPENMP_TARGET_PARALLEL_FOR_SIMD_CLAUSE(Name)
140 #endif
141 #ifndef OPENMP_TARGET_SIMD_CLAUSE
142 #define OPENMP_TARGET_SIMD_CLAUSE(Name)
143 #endif
144 #ifndef OPENMP_TEAMS_DISTRIBUTE_CLAUSE
145 #define OPENMP_TEAMS_DISTRIBUTE_CLAUSE(Name)
146 #endif
147 #ifndef OPENMP_TEAMS_DISTRIBUTE_SIMD_CLAUSE
148 #define OPENMP_TEAMS_DISTRIBUTE_SIMD_CLAUSE(Name)
149 #endif
150 #ifndef OPENMP_TEAMS_DISTRIBUTE_PARALLEL_FOR_SIMD_CLAUSE
151 #define OPENMP_TEAMS_DISTRIBUTE_PARALLEL_FOR_SIMD_CLAUSE(Name)
152 #endif
153 #ifndef OPENMP_TEAMS_DISTRIBUTE_PARALLEL_FOR_CLAUSE
154 #define OPENMP_TEAMS_DISTRIBUTE_PARALLEL_FOR_CLAUSE(Name)
155 #endif
156 #ifndef OPENMP_TARGET_TEAMS_CLAUSE
157 #define OPENMP_TARGET_TEAMS_CLAUSE(Name)
158 #endif
159 #ifndef OPENMP_TARGET_TEAMS_DISTRIBUTE_CLAUSE
160 #define OPENMP_TARGET_TEAMS_DISTRIBUTE_CLAUSE(Name)
161 #endif
162 #ifndef OPENMP_TARGET_TEAMS_DISTRIBUTE_PARALLEL_FOR_CLAUSE
163 #define OPENMP_TARGET_TEAMS_DISTRIBUTE_PARALLEL_FOR_CLAUSE(Name)
164 #endif
165 #ifndef OPENMP_TARGET_TEAMS_DISTRIBUTE_PARALLEL_FOR_SIMD_CLAUSE
166 #define OPENMP_TARGET_TEAMS_DISTRIBUTE_PARALLEL_FOR_SIMD_CLAUSE(Name)
167 #endif
168 #ifndef OPENMP_TARGET_TEAMS_DISTRIBUTE_SIMD_CLAUSE
169 #define OPENMP_TARGET_TEAMS_DISTRIBUTE_SIMD_CLAUSE(Name)
170 #endif
171 #ifndef OPENMP_TASKGROUP_CLAUSE
172 #define OPENMP_TASKGROUP_CLAUSE(Name)
173 #endif
174
175 // OpenMP directives.
176 OPENMP_DIRECTIVE(threadprivate)
177 OPENMP_DIRECTIVE(parallel)
178 OPENMP_DIRECTIVE(task)
179 OPENMP_DIRECTIVE(simd)
180 OPENMP_DIRECTIVE(for)
181 OPENMP_DIRECTIVE(sections)
182 OPENMP_DIRECTIVE(section)
183 OPENMP_DIRECTIVE(single)
184 OPENMP_DIRECTIVE(master)
185 OPENMP_DIRECTIVE(critical)
186 OPENMP_DIRECTIVE(taskyield)
187 OPENMP_DIRECTIVE(barrier)
188 OPENMP_DIRECTIVE(taskwait)
189 OPENMP_DIRECTIVE(taskgroup)
190 OPENMP_DIRECTIVE(flush)
191 OPENMP_DIRECTIVE(ordered)
192 OPENMP_DIRECTIVE(atomic)
193 OPENMP_DIRECTIVE(target)
194 OPENMP_DIRECTIVE(teams)
195 OPENMP_DIRECTIVE(cancel)
196 OPENMP_DIRECTIVE_EXT(target_data, "target data")
197 OPENMP_DIRECTIVE_EXT(target_enter_data, "target enter data")
198 OPENMP_DIRECTIVE_EXT(target_exit_data, "target exit data")
199 OPENMP_DIRECTIVE_EXT(target_parallel, "target parallel")
200 OPENMP_DIRECTIVE_EXT(target_parallel_for, "target parallel for")
201 OPENMP_DIRECTIVE_EXT(target_update, "target update")
202 OPENMP_DIRECTIVE_EXT(parallel_for, "parallel for")
203 OPENMP_DIRECTIVE_EXT(parallel_for_simd, "parallel for simd")
204 OPENMP_DIRECTIVE_EXT(parallel_sections, "parallel sections")
205 OPENMP_DIRECTIVE_EXT(for_simd, "for simd")
206 OPENMP_DIRECTIVE_EXT(cancellation_point, "cancellation point")
207 OPENMP_DIRECTIVE_EXT(declare_reduction, "declare reduction")
208 OPENMP_DIRECTIVE_EXT(declare_simd, "declare simd")
209 OPENMP_DIRECTIVE(taskloop)
210 OPENMP_DIRECTIVE_EXT(taskloop_simd, "taskloop simd")
211 OPENMP_DIRECTIVE(distribute)
212 OPENMP_DIRECTIVE_EXT(declare_target, "declare target")
213 OPENMP_DIRECTIVE_EXT(end_declare_target, "end declare target")
214 OPENMP_DIRECTIVE_EXT(distribute_parallel_for, "distribute parallel for")
215 OPENMP_DIRECTIVE_EXT(distribute_parallel_for_simd, "distribute parallel for simd")
216 OPENMP_DIRECTIVE_EXT(distribute_simd, "distribute simd")
217 OPENMP_DIRECTIVE_EXT(target_parallel_for_simd, "target parallel for simd")
218 OPENMP_DIRECTIVE_EXT(target_simd, "target simd")
219 OPENMP_DIRECTIVE_EXT(teams_distribute, "teams distribute")
220 OPENMP_DIRECTIVE_EXT(teams_distribute_simd, "teams distribute simd")
221 OPENMP_DIRECTIVE_EXT(teams_distribute_parallel_for_simd, "teams distribute parallel for simd")
222 OPENMP_DIRECTIVE_EXT(teams_distribute_parallel_for, "teams distribute parallel for")
223 OPENMP_DIRECTIVE_EXT(target_teams, "target teams")
224 OPENMP_DIRECTIVE_EXT(target_teams_distribute, "target teams distribute")
225 OPENMP_DIRECTIVE_EXT(target_teams_distribute_parallel_for, "target teams distribute parallel for")
226 OPENMP_DIRECTIVE_EXT(target_teams_distribute_parallel_for_simd, "target teams distribute parallel for simd")
227 OPENMP_DIRECTIVE_EXT(target_teams_distribute_simd, "target teams distribute simd")
228
229 // OpenMP clauses.
230 OPENMP_CLAUSE(if, OMPIfClause)
231 OPENMP_CLAUSE(final, OMPFinalClause)
232 OPENMP_CLAUSE(num_threads, OMPNumThreadsClause)
233 OPENMP_CLAUSE(safelen, OMPSafelenClause)
234 OPENMP_CLAUSE(simdlen, OMPSimdlenClause)
235 OPENMP_CLAUSE(collapse, OMPCollapseClause)
236 OPENMP_CLAUSE(default, OMPDefaultClause)
237 OPENMP_CLAUSE(private, OMPPrivateClause)
238 OPENMP_CLAUSE(firstprivate, OMPFirstprivateClause)
239 OPENMP_CLAUSE(lastprivate, OMPLastprivateClause)
240 OPENMP_CLAUSE(shared,  OMPSharedClause)
241 OPENMP_CLAUSE(reduction,  OMPReductionClause)
242 OPENMP_CLAUSE(linear,  OMPLinearClause)
243 OPENMP_CLAUSE(aligned, OMPAlignedClause)
244 OPENMP_CLAUSE(copyin,  OMPCopyinClause)
245 OPENMP_CLAUSE(copyprivate,  OMPCopyprivateClause)
246 OPENMP_CLAUSE(proc_bind, OMPProcBindClause)
247 OPENMP_CLAUSE(schedule, OMPScheduleClause)
248 OPENMP_CLAUSE(ordered, OMPOrderedClause)
249 OPENMP_CLAUSE(nowait, OMPNowaitClause)
250 OPENMP_CLAUSE(untied, OMPUntiedClause)
251 OPENMP_CLAUSE(mergeable, OMPMergeableClause)
252 OPENMP_CLAUSE(flush, OMPFlushClause)
253 OPENMP_CLAUSE(read, OMPReadClause)
254 OPENMP_CLAUSE(write, OMPWriteClause)
255 OPENMP_CLAUSE(update, OMPUpdateClause)
256 OPENMP_CLAUSE(capture, OMPCaptureClause)
257 OPENMP_CLAUSE(seq_cst, OMPSeqCstClause)
258 OPENMP_CLAUSE(depend, OMPDependClause)
259 OPENMP_CLAUSE(device, OMPDeviceClause)
260 OPENMP_CLAUSE(threads, OMPThreadsClause)
261 OPENMP_CLAUSE(simd, OMPSIMDClause)
262 OPENMP_CLAUSE(map, OMPMapClause)
263 OPENMP_CLAUSE(num_teams, OMPNumTeamsClause)
264 OPENMP_CLAUSE(thread_limit, OMPThreadLimitClause)
265 OPENMP_CLAUSE(priority, OMPPriorityClause)
266 OPENMP_CLAUSE(grainsize, OMPGrainsizeClause)
267 OPENMP_CLAUSE(nogroup, OMPNogroupClause)
268 OPENMP_CLAUSE(num_tasks, OMPNumTasksClause)
269 OPENMP_CLAUSE(hint, OMPHintClause)
270 OPENMP_CLAUSE(dist_schedule, OMPDistScheduleClause)
271 OPENMP_CLAUSE(defaultmap, OMPDefaultmapClause)
272 OPENMP_CLAUSE(to, OMPToClause)
273 OPENMP_CLAUSE(from, OMPFromClause)
274 OPENMP_CLAUSE(use_device_ptr, OMPUseDevicePtrClause)
275 OPENMP_CLAUSE(is_device_ptr, OMPIsDevicePtrClause)
276 OPENMP_CLAUSE(task_reduction,  OMPTaskReductionClause)
277
278 // Clauses allowed for OpenMP directive 'parallel'.
279 OPENMP_PARALLEL_CLAUSE(if)
280 OPENMP_PARALLEL_CLAUSE(num_threads)
281 OPENMP_PARALLEL_CLAUSE(default)
282 OPENMP_PARALLEL_CLAUSE(proc_bind)
283 OPENMP_PARALLEL_CLAUSE(private)
284 OPENMP_PARALLEL_CLAUSE(firstprivate)
285 OPENMP_PARALLEL_CLAUSE(shared)
286 OPENMP_PARALLEL_CLAUSE(reduction)
287 OPENMP_PARALLEL_CLAUSE(copyin)
288
289 // Clauses allowed for directive 'omp simd'.
290 OPENMP_SIMD_CLAUSE(private)
291 OPENMP_SIMD_CLAUSE(lastprivate)
292 OPENMP_SIMD_CLAUSE(linear)
293 OPENMP_SIMD_CLAUSE(aligned)
294 OPENMP_SIMD_CLAUSE(safelen)
295 OPENMP_SIMD_CLAUSE(simdlen)
296 OPENMP_SIMD_CLAUSE(collapse)
297 OPENMP_SIMD_CLAUSE(reduction)
298
299 // Clauses allowed for directive 'omp for'.
300 OPENMP_FOR_CLAUSE(private)
301 OPENMP_FOR_CLAUSE(lastprivate)
302 OPENMP_FOR_CLAUSE(firstprivate)
303 OPENMP_FOR_CLAUSE(reduction)
304 OPENMP_FOR_CLAUSE(collapse)
305 OPENMP_FOR_CLAUSE(schedule)
306 OPENMP_FOR_CLAUSE(ordered)
307 OPENMP_FOR_CLAUSE(nowait)
308 OPENMP_FOR_CLAUSE(linear)
309
310 // Clauses allowed for directive 'omp for simd'.
311 OPENMP_FOR_SIMD_CLAUSE(private)
312 OPENMP_FOR_SIMD_CLAUSE(firstprivate)
313 OPENMP_FOR_SIMD_CLAUSE(lastprivate)
314 OPENMP_FOR_SIMD_CLAUSE(reduction)
315 OPENMP_FOR_SIMD_CLAUSE(schedule)
316 OPENMP_FOR_SIMD_CLAUSE(collapse)
317 OPENMP_FOR_SIMD_CLAUSE(nowait)
318 OPENMP_FOR_SIMD_CLAUSE(safelen)
319 OPENMP_FOR_SIMD_CLAUSE(simdlen)
320 OPENMP_FOR_SIMD_CLAUSE(linear)
321 OPENMP_FOR_SIMD_CLAUSE(aligned)
322 OPENMP_FOR_SIMD_CLAUSE(ordered)
323
324 // Clauses allowed for OpenMP directive 'omp sections'.
325 OPENMP_SECTIONS_CLAUSE(private)
326 OPENMP_SECTIONS_CLAUSE(lastprivate)
327 OPENMP_SECTIONS_CLAUSE(firstprivate)
328 OPENMP_SECTIONS_CLAUSE(reduction)
329 OPENMP_SECTIONS_CLAUSE(nowait)
330
331 // Clauses allowed for directive 'omp single'.
332 OPENMP_SINGLE_CLAUSE(private)
333 OPENMP_SINGLE_CLAUSE(firstprivate)
334 OPENMP_SINGLE_CLAUSE(copyprivate)
335 OPENMP_SINGLE_CLAUSE(nowait)
336
337 // Clauses allowed for OpenMP directive 'cancel'.
338 OPENMP_CANCEL_CLAUSE(if)
339
340 // Static attributes for 'default' clause.
341 OPENMP_DEFAULT_KIND(none)
342 OPENMP_DEFAULT_KIND(shared)
343
344 // Static attributes for 'proc_bind' clause.
345 OPENMP_PROC_BIND_KIND(master)
346 OPENMP_PROC_BIND_KIND(close)
347 OPENMP_PROC_BIND_KIND(spread)
348
349 // Static attributes for 'schedule' clause.
350 OPENMP_SCHEDULE_KIND(static)
351 OPENMP_SCHEDULE_KIND(dynamic)
352 OPENMP_SCHEDULE_KIND(guided)
353 OPENMP_SCHEDULE_KIND(auto)
354 OPENMP_SCHEDULE_KIND(runtime)
355
356 // Modifiers for 'schedule' clause.
357 OPENMP_SCHEDULE_MODIFIER(monotonic)
358 OPENMP_SCHEDULE_MODIFIER(nonmonotonic)
359 OPENMP_SCHEDULE_MODIFIER(simd)
360
361 // Static attributes for 'defaultmap' clause.
362 OPENMP_DEFAULTMAP_KIND(scalar)
363
364 // Modifiers for 'defaultmap' clause.
365 OPENMP_DEFAULTMAP_MODIFIER(tofrom)
366
367 // Static attributes for 'depend' clause.
368 OPENMP_DEPEND_KIND(in)
369 OPENMP_DEPEND_KIND(out)
370 OPENMP_DEPEND_KIND(inout)
371 OPENMP_DEPEND_KIND(source)
372 OPENMP_DEPEND_KIND(sink)
373
374 // Modifiers for 'linear' clause.
375 OPENMP_LINEAR_KIND(val)
376 OPENMP_LINEAR_KIND(ref)
377 OPENMP_LINEAR_KIND(uval)
378
379 // Clauses allowed for OpenMP directive 'parallel for'.
380 OPENMP_PARALLEL_FOR_CLAUSE(if)
381 OPENMP_PARALLEL_FOR_CLAUSE(num_threads)
382 OPENMP_PARALLEL_FOR_CLAUSE(default)
383 OPENMP_PARALLEL_FOR_CLAUSE(proc_bind)
384 OPENMP_PARALLEL_FOR_CLAUSE(private)
385 OPENMP_PARALLEL_FOR_CLAUSE(firstprivate)
386 OPENMP_PARALLEL_FOR_CLAUSE(shared)
387 OPENMP_PARALLEL_FOR_CLAUSE(reduction)
388 OPENMP_PARALLEL_FOR_CLAUSE(copyin)
389 OPENMP_PARALLEL_FOR_CLAUSE(lastprivate)
390 OPENMP_PARALLEL_FOR_CLAUSE(collapse)
391 OPENMP_PARALLEL_FOR_CLAUSE(schedule)
392 OPENMP_PARALLEL_FOR_CLAUSE(ordered)
393 OPENMP_PARALLEL_FOR_CLAUSE(linear)
394
395 // Clauses allowed for OpenMP directive 'parallel for simd'.
396 OPENMP_PARALLEL_FOR_SIMD_CLAUSE(if)
397 OPENMP_PARALLEL_FOR_SIMD_CLAUSE(num_threads)
398 OPENMP_PARALLEL_FOR_SIMD_CLAUSE(default)
399 OPENMP_PARALLEL_FOR_SIMD_CLAUSE(proc_bind)
400 OPENMP_PARALLEL_FOR_SIMD_CLAUSE(private)
401 OPENMP_PARALLEL_FOR_SIMD_CLAUSE(firstprivate)
402 OPENMP_PARALLEL_FOR_SIMD_CLAUSE(shared)
403 OPENMP_PARALLEL_FOR_SIMD_CLAUSE(reduction)
404 OPENMP_PARALLEL_FOR_SIMD_CLAUSE(copyin)
405 OPENMP_PARALLEL_FOR_SIMD_CLAUSE(lastprivate)
406 OPENMP_PARALLEL_FOR_SIMD_CLAUSE(collapse)
407 OPENMP_PARALLEL_FOR_SIMD_CLAUSE(schedule)
408 OPENMP_PARALLEL_FOR_SIMD_CLAUSE(safelen)
409 OPENMP_PARALLEL_FOR_SIMD_CLAUSE(simdlen)
410 OPENMP_PARALLEL_FOR_SIMD_CLAUSE(linear)
411 OPENMP_PARALLEL_FOR_SIMD_CLAUSE(aligned)
412 OPENMP_PARALLEL_FOR_SIMD_CLAUSE(ordered)
413
414 // Clauses allowed for OpenMP directive 'parallel sections'.
415 OPENMP_PARALLEL_SECTIONS_CLAUSE(if)
416 OPENMP_PARALLEL_SECTIONS_CLAUSE(num_threads)
417 OPENMP_PARALLEL_SECTIONS_CLAUSE(default)
418 OPENMP_PARALLEL_SECTIONS_CLAUSE(proc_bind)
419 OPENMP_PARALLEL_SECTIONS_CLAUSE(private)
420 OPENMP_PARALLEL_SECTIONS_CLAUSE(firstprivate)
421 OPENMP_PARALLEL_SECTIONS_CLAUSE(shared)
422 OPENMP_PARALLEL_SECTIONS_CLAUSE(reduction)
423 OPENMP_PARALLEL_SECTIONS_CLAUSE(copyin)
424 OPENMP_PARALLEL_SECTIONS_CLAUSE(lastprivate)
425
426 // Clauses allowed for OpenMP directive 'task'.
427 OPENMP_TASK_CLAUSE(if)
428 OPENMP_TASK_CLAUSE(final)
429 OPENMP_TASK_CLAUSE(default)
430 OPENMP_TASK_CLAUSE(private)
431 OPENMP_TASK_CLAUSE(firstprivate)
432 OPENMP_TASK_CLAUSE(shared)
433 OPENMP_TASK_CLAUSE(untied)
434 OPENMP_TASK_CLAUSE(mergeable)
435 OPENMP_TASK_CLAUSE(depend)
436 OPENMP_TASK_CLAUSE(priority)
437
438 // Clauses allowed for OpenMP directive 'atomic'.
439 OPENMP_ATOMIC_CLAUSE(read)
440 OPENMP_ATOMIC_CLAUSE(write)
441 OPENMP_ATOMIC_CLAUSE(update)
442 OPENMP_ATOMIC_CLAUSE(capture)
443 OPENMP_ATOMIC_CLAUSE(seq_cst)
444
445 // Clauses allowed for OpenMP directive 'target'.
446 OPENMP_TARGET_CLAUSE(if)
447 OPENMP_TARGET_CLAUSE(device)
448 OPENMP_TARGET_CLAUSE(map)
449 OPENMP_TARGET_CLAUSE(private)
450 OPENMP_TARGET_CLAUSE(nowait)
451 OPENMP_TARGET_CLAUSE(depend)
452 OPENMP_TARGET_CLAUSE(defaultmap)
453 OPENMP_TARGET_CLAUSE(firstprivate)
454 OPENMP_TARGET_CLAUSE(is_device_ptr)
455
456 // Clauses allowed for OpenMP directive 'target data'.
457 OPENMP_TARGET_DATA_CLAUSE(if)
458 OPENMP_TARGET_DATA_CLAUSE(device)
459 OPENMP_TARGET_DATA_CLAUSE(map)
460 OPENMP_TARGET_DATA_CLAUSE(use_device_ptr)
461
462 // Clauses allowed for OpenMP directive 'target enter data'.
463 OPENMP_TARGET_ENTER_DATA_CLAUSE(if)
464 OPENMP_TARGET_ENTER_DATA_CLAUSE(device)
465 OPENMP_TARGET_ENTER_DATA_CLAUSE(map)
466 OPENMP_TARGET_ENTER_DATA_CLAUSE(nowait)
467 OPENMP_TARGET_ENTER_DATA_CLAUSE(depend)
468
469 // Clauses allowed for OpenMP directive 'target exit data'.
470 OPENMP_TARGET_EXIT_DATA_CLAUSE(if)
471 OPENMP_TARGET_EXIT_DATA_CLAUSE(device)
472 OPENMP_TARGET_EXIT_DATA_CLAUSE(map)
473 OPENMP_TARGET_EXIT_DATA_CLAUSE(nowait)
474 OPENMP_TARGET_EXIT_DATA_CLAUSE(depend)
475
476 // Clauses allowed for OpenMP directive 'target parallel'.
477 OPENMP_TARGET_PARALLEL_CLAUSE(if)
478 OPENMP_TARGET_PARALLEL_CLAUSE(device)
479 OPENMP_TARGET_PARALLEL_CLAUSE(map)
480 OPENMP_TARGET_PARALLEL_CLAUSE(private)
481 OPENMP_TARGET_PARALLEL_CLAUSE(firstprivate)
482 OPENMP_TARGET_PARALLEL_CLAUSE(nowait)
483 OPENMP_TARGET_PARALLEL_CLAUSE(depend)
484 OPENMP_TARGET_PARALLEL_CLAUSE(defaultmap)
485 OPENMP_TARGET_PARALLEL_CLAUSE(num_threads)
486 OPENMP_TARGET_PARALLEL_CLAUSE(default)
487 OPENMP_TARGET_PARALLEL_CLAUSE(proc_bind)
488 OPENMP_TARGET_PARALLEL_CLAUSE(shared)
489 OPENMP_TARGET_PARALLEL_CLAUSE(reduction)
490 OPENMP_TARGET_PARALLEL_CLAUSE(is_device_ptr)
491
492 // Clauses allowed for OpenMP directive 'target parallel for'.
493 OPENMP_TARGET_PARALLEL_FOR_CLAUSE(if)
494 OPENMP_TARGET_PARALLEL_FOR_CLAUSE(device)
495 OPENMP_TARGET_PARALLEL_FOR_CLAUSE(map)
496 OPENMP_TARGET_PARALLEL_FOR_CLAUSE(private)
497 OPENMP_TARGET_PARALLEL_FOR_CLAUSE(firstprivate)
498 OPENMP_TARGET_PARALLEL_FOR_CLAUSE(lastprivate)
499 OPENMP_TARGET_PARALLEL_FOR_CLAUSE(nowait)
500 OPENMP_TARGET_PARALLEL_FOR_CLAUSE(depend)
501 OPENMP_TARGET_PARALLEL_FOR_CLAUSE(defaultmap)
502 OPENMP_TARGET_PARALLEL_FOR_CLAUSE(num_threads)
503 OPENMP_TARGET_PARALLEL_FOR_CLAUSE(default)
504 OPENMP_TARGET_PARALLEL_FOR_CLAUSE(proc_bind)
505 OPENMP_TARGET_PARALLEL_FOR_CLAUSE(shared)
506 OPENMP_TARGET_PARALLEL_FOR_CLAUSE(reduction)
507 OPENMP_TARGET_PARALLEL_FOR_CLAUSE(collapse)
508 OPENMP_TARGET_PARALLEL_FOR_CLAUSE(schedule)
509 OPENMP_TARGET_PARALLEL_FOR_CLAUSE(ordered)
510 OPENMP_TARGET_PARALLEL_FOR_CLAUSE(linear)
511 OPENMP_TARGET_PARALLEL_FOR_CLAUSE(is_device_ptr)
512
513 // Clauses allowed for OpenMP directive 'target update'.
514 OPENMP_TARGET_UPDATE_CLAUSE(if)
515 OPENMP_TARGET_UPDATE_CLAUSE(device)
516 OPENMP_TARGET_UPDATE_CLAUSE(to)
517 OPENMP_TARGET_UPDATE_CLAUSE(from)
518 OPENMP_TARGET_UPDATE_CLAUSE(nowait)
519 OPENMP_TARGET_UPDATE_CLAUSE(depend)
520
521 // Clauses allowed for OpenMP directive 'teams'.
522 OPENMP_TEAMS_CLAUSE(default)
523 OPENMP_TEAMS_CLAUSE(private)
524 OPENMP_TEAMS_CLAUSE(firstprivate)
525 OPENMP_TEAMS_CLAUSE(shared)
526 OPENMP_TEAMS_CLAUSE(reduction)
527 OPENMP_TEAMS_CLAUSE(num_teams)
528 OPENMP_TEAMS_CLAUSE(thread_limit)
529
530 // Clauses allowed for OpenMP directive 'ordered'.
531 OPENMP_ORDERED_CLAUSE(threads)
532 OPENMP_ORDERED_CLAUSE(simd)
533 OPENMP_ORDERED_CLAUSE(depend)
534
535 // Map types and map type modifier for 'map' clause.
536 OPENMP_MAP_KIND(alloc)
537 OPENMP_MAP_KIND(to)
538 OPENMP_MAP_KIND(from)
539 OPENMP_MAP_KIND(tofrom)
540 OPENMP_MAP_KIND(delete)
541 OPENMP_MAP_KIND(release)
542 OPENMP_MAP_KIND(always)
543
544 // Clauses allowed for OpenMP directive 'taskloop'.
545 OPENMP_TASKLOOP_CLAUSE(if)
546 OPENMP_TASKLOOP_CLAUSE(shared)
547 OPENMP_TASKLOOP_CLAUSE(private)
548 OPENMP_TASKLOOP_CLAUSE(firstprivate)
549 OPENMP_TASKLOOP_CLAUSE(lastprivate)
550 OPENMP_TASKLOOP_CLAUSE(default)
551 OPENMP_TASKLOOP_CLAUSE(collapse)
552 OPENMP_TASKLOOP_CLAUSE(final)
553 OPENMP_TASKLOOP_CLAUSE(untied)
554 OPENMP_TASKLOOP_CLAUSE(mergeable)
555 OPENMP_TASKLOOP_CLAUSE(priority)
556 OPENMP_TASKLOOP_CLAUSE(grainsize)
557 OPENMP_TASKLOOP_CLAUSE(nogroup)
558 OPENMP_TASKLOOP_CLAUSE(num_tasks)
559 OPENMP_TASKLOOP_CLAUSE(reduction)
560
561 // Clauses allowed for OpenMP directive 'taskloop simd'.
562 OPENMP_TASKLOOP_SIMD_CLAUSE(if)
563 OPENMP_TASKLOOP_SIMD_CLAUSE(shared)
564 OPENMP_TASKLOOP_SIMD_CLAUSE(private)
565 OPENMP_TASKLOOP_SIMD_CLAUSE(firstprivate)
566 OPENMP_TASKLOOP_SIMD_CLAUSE(lastprivate)
567 OPENMP_TASKLOOP_SIMD_CLAUSE(default)
568 OPENMP_TASKLOOP_SIMD_CLAUSE(collapse)
569 OPENMP_TASKLOOP_SIMD_CLAUSE(final)
570 OPENMP_TASKLOOP_SIMD_CLAUSE(untied)
571 OPENMP_TASKLOOP_SIMD_CLAUSE(mergeable)
572 OPENMP_TASKLOOP_SIMD_CLAUSE(priority)
573 OPENMP_TASKLOOP_SIMD_CLAUSE(linear)
574 OPENMP_TASKLOOP_SIMD_CLAUSE(aligned)
575 OPENMP_TASKLOOP_SIMD_CLAUSE(safelen)
576 OPENMP_TASKLOOP_SIMD_CLAUSE(simdlen)
577 OPENMP_TASKLOOP_SIMD_CLAUSE(grainsize)
578 OPENMP_TASKLOOP_SIMD_CLAUSE(nogroup)
579 OPENMP_TASKLOOP_SIMD_CLAUSE(num_tasks)
580 OPENMP_TASKLOOP_SIMD_CLAUSE(reduction)
581
582 // Clauses allowed for OpenMP directive 'critical'.
583 OPENMP_CRITICAL_CLAUSE(hint)
584
585 // Clauses allowed for OpenMP directive 'distribute'
586 OPENMP_DISTRIBUTE_CLAUSE(private)
587 OPENMP_DISTRIBUTE_CLAUSE(firstprivate)
588 OPENMP_DISTRIBUTE_CLAUSE(lastprivate)
589 OPENMP_DISTRIBUTE_CLAUSE(collapse)
590 OPENMP_DISTRIBUTE_CLAUSE(dist_schedule)
591
592 // Static attributes for 'dist_schedule' clause.
593 OPENMP_DIST_SCHEDULE_KIND(static)
594
595 // Clauses allowed for OpenMP directive 'distribute parallel for'
596 OPENMP_DISTRIBUTE_PARALLEL_FOR_CLAUSE(firstprivate)
597 OPENMP_DISTRIBUTE_PARALLEL_FOR_CLAUSE(lastprivate)
598 OPENMP_DISTRIBUTE_PARALLEL_FOR_CLAUSE(collapse)
599 OPENMP_DISTRIBUTE_PARALLEL_FOR_CLAUSE(dist_schedule)
600 OPENMP_DISTRIBUTE_PARALLEL_FOR_CLAUSE(if)
601 OPENMP_DISTRIBUTE_PARALLEL_FOR_CLAUSE(num_threads)
602 OPENMP_DISTRIBUTE_PARALLEL_FOR_CLAUSE(default)
603 OPENMP_DISTRIBUTE_PARALLEL_FOR_CLAUSE(proc_bind)
604 OPENMP_DISTRIBUTE_PARALLEL_FOR_CLAUSE(private)
605 OPENMP_DISTRIBUTE_PARALLEL_FOR_CLAUSE(shared)
606 OPENMP_DISTRIBUTE_PARALLEL_FOR_CLAUSE(reduction)
607 OPENMP_DISTRIBUTE_PARALLEL_FOR_CLAUSE(copyin)
608 OPENMP_DISTRIBUTE_PARALLEL_FOR_CLAUSE(schedule)
609
610 // Clauses allowed for OpenMP directive 'distribute parallel for simd'
611 OPENMP_DISTRIBUTE_PARALLEL_FOR_SIMD_CLAUSE(firstprivate)
612 OPENMP_DISTRIBUTE_PARALLEL_FOR_SIMD_CLAUSE(lastprivate)
613 OPENMP_DISTRIBUTE_PARALLEL_FOR_SIMD_CLAUSE(collapse)
614 OPENMP_DISTRIBUTE_PARALLEL_FOR_SIMD_CLAUSE(dist_schedule)
615 OPENMP_DISTRIBUTE_PARALLEL_FOR_SIMD_CLAUSE(if)
616 OPENMP_DISTRIBUTE_PARALLEL_FOR_SIMD_CLAUSE(num_threads)
617 OPENMP_DISTRIBUTE_PARALLEL_FOR_SIMD_CLAUSE(default)
618 OPENMP_DISTRIBUTE_PARALLEL_FOR_SIMD_CLAUSE(proc_bind)
619 OPENMP_DISTRIBUTE_PARALLEL_FOR_SIMD_CLAUSE(private)
620 OPENMP_DISTRIBUTE_PARALLEL_FOR_SIMD_CLAUSE(shared)
621 OPENMP_DISTRIBUTE_PARALLEL_FOR_SIMD_CLAUSE(reduction)
622 OPENMP_DISTRIBUTE_PARALLEL_FOR_SIMD_CLAUSE(copyin)
623 OPENMP_DISTRIBUTE_PARALLEL_FOR_SIMD_CLAUSE(schedule)
624 OPENMP_DISTRIBUTE_PARALLEL_FOR_SIMD_CLAUSE(linear)
625 OPENMP_DISTRIBUTE_PARALLEL_FOR_SIMD_CLAUSE(aligned)
626 OPENMP_DISTRIBUTE_PARALLEL_FOR_SIMD_CLAUSE(safelen)
627 OPENMP_DISTRIBUTE_PARALLEL_FOR_SIMD_CLAUSE(simdlen)
628
629 // Clauses allowed for OpenMP directive 'distribute simd'
630 OPENMP_DISTRIBUTE_SIMD_CLAUSE(private)
631 OPENMP_DISTRIBUTE_SIMD_CLAUSE(firstprivate)
632 OPENMP_DISTRIBUTE_SIMD_CLAUSE(lastprivate)
633 OPENMP_DISTRIBUTE_SIMD_CLAUSE(collapse)
634 OPENMP_DISTRIBUTE_SIMD_CLAUSE(dist_schedule)
635 OPENMP_DISTRIBUTE_SIMD_CLAUSE(linear)
636 OPENMP_DISTRIBUTE_SIMD_CLAUSE(aligned)
637 OPENMP_DISTRIBUTE_SIMD_CLAUSE(safelen)
638 OPENMP_DISTRIBUTE_SIMD_CLAUSE(simdlen)
639 OPENMP_DISTRIBUTE_SIMD_CLAUSE(reduction)
640
641 // Clauses allowed for OpenMP directive 'target parallel for simd'.
642 OPENMP_TARGET_PARALLEL_FOR_SIMD_CLAUSE(if)
643 OPENMP_TARGET_PARALLEL_FOR_SIMD_CLAUSE(device)
644 OPENMP_TARGET_PARALLEL_FOR_SIMD_CLAUSE(map)
645 OPENMP_TARGET_PARALLEL_FOR_SIMD_CLAUSE(private)
646 OPENMP_TARGET_PARALLEL_FOR_SIMD_CLAUSE(firstprivate)
647 OPENMP_TARGET_PARALLEL_FOR_SIMD_CLAUSE(lastprivate)
648 OPENMP_TARGET_PARALLEL_FOR_SIMD_CLAUSE(nowait)
649 OPENMP_TARGET_PARALLEL_FOR_SIMD_CLAUSE(depend)
650 OPENMP_TARGET_PARALLEL_FOR_SIMD_CLAUSE(defaultmap)
651 OPENMP_TARGET_PARALLEL_FOR_SIMD_CLAUSE(num_threads)
652 OPENMP_TARGET_PARALLEL_FOR_SIMD_CLAUSE(default)
653 OPENMP_TARGET_PARALLEL_FOR_SIMD_CLAUSE(proc_bind)
654 OPENMP_TARGET_PARALLEL_FOR_SIMD_CLAUSE(shared)
655 OPENMP_TARGET_PARALLEL_FOR_SIMD_CLAUSE(reduction)
656 OPENMP_TARGET_PARALLEL_FOR_SIMD_CLAUSE(collapse)
657 OPENMP_TARGET_PARALLEL_FOR_SIMD_CLAUSE(schedule)
658 OPENMP_TARGET_PARALLEL_FOR_SIMD_CLAUSE(ordered)
659 OPENMP_TARGET_PARALLEL_FOR_SIMD_CLAUSE(linear)
660 OPENMP_TARGET_PARALLEL_FOR_SIMD_CLAUSE(safelen)
661 OPENMP_TARGET_PARALLEL_FOR_SIMD_CLAUSE(simdlen)
662 OPENMP_TARGET_PARALLEL_FOR_SIMD_CLAUSE(aligned)
663 OPENMP_TARGET_PARALLEL_FOR_SIMD_CLAUSE(is_device_ptr)
664
665 // Clauses allowed for OpenMP directive 'target simd'.
666 OPENMP_TARGET_SIMD_CLAUSE(if)
667 OPENMP_TARGET_SIMD_CLAUSE(device)
668 OPENMP_TARGET_SIMD_CLAUSE(map)
669 OPENMP_TARGET_SIMD_CLAUSE(private)
670 OPENMP_TARGET_SIMD_CLAUSE(nowait)
671 OPENMP_TARGET_SIMD_CLAUSE(depend)
672 OPENMP_TARGET_SIMD_CLAUSE(defaultmap)
673 OPENMP_TARGET_SIMD_CLAUSE(firstprivate)
674 OPENMP_TARGET_SIMD_CLAUSE(is_device_ptr)
675 OPENMP_TARGET_SIMD_CLAUSE(lastprivate)
676 OPENMP_TARGET_SIMD_CLAUSE(linear)
677 OPENMP_TARGET_SIMD_CLAUSE(aligned)
678 OPENMP_TARGET_SIMD_CLAUSE(safelen)
679 OPENMP_TARGET_SIMD_CLAUSE(simdlen)
680 OPENMP_TARGET_SIMD_CLAUSE(collapse)
681 OPENMP_TARGET_SIMD_CLAUSE(reduction)
682
683 // Clauses allowed for OpenMP directive 'teams distribute'.
684 OPENMP_TEAMS_DISTRIBUTE_CLAUSE(default)
685 OPENMP_TEAMS_DISTRIBUTE_CLAUSE(private)
686 OPENMP_TEAMS_DISTRIBUTE_CLAUSE(firstprivate)
687 OPENMP_TEAMS_DISTRIBUTE_CLAUSE(shared)
688 OPENMP_TEAMS_DISTRIBUTE_CLAUSE(reduction)
689 OPENMP_TEAMS_DISTRIBUTE_CLAUSE(num_teams)
690 OPENMP_TEAMS_DISTRIBUTE_CLAUSE(thread_limit)
691 OPENMP_TEAMS_DISTRIBUTE_CLAUSE(lastprivate)
692 OPENMP_TEAMS_DISTRIBUTE_CLAUSE(collapse)
693 OPENMP_TEAMS_DISTRIBUTE_CLAUSE(dist_schedule)
694
695 // Clauses allowed for OpenMP directive 'teams distribute simd'
696 OPENMP_TEAMS_DISTRIBUTE_SIMD_CLAUSE(default)
697 OPENMP_TEAMS_DISTRIBUTE_SIMD_CLAUSE(private)
698 OPENMP_TEAMS_DISTRIBUTE_SIMD_CLAUSE(firstprivate)
699 OPENMP_TEAMS_DISTRIBUTE_SIMD_CLAUSE(shared)
700 OPENMP_TEAMS_DISTRIBUTE_SIMD_CLAUSE(reduction)
701 OPENMP_TEAMS_DISTRIBUTE_SIMD_CLAUSE(num_teams)
702 OPENMP_TEAMS_DISTRIBUTE_SIMD_CLAUSE(thread_limit)
703 OPENMP_TEAMS_DISTRIBUTE_SIMD_CLAUSE(lastprivate)
704 OPENMP_TEAMS_DISTRIBUTE_SIMD_CLAUSE(collapse)
705 OPENMP_TEAMS_DISTRIBUTE_SIMD_CLAUSE(dist_schedule)
706 OPENMP_TEAMS_DISTRIBUTE_SIMD_CLAUSE(linear)
707 OPENMP_TEAMS_DISTRIBUTE_SIMD_CLAUSE(aligned)
708 OPENMP_TEAMS_DISTRIBUTE_SIMD_CLAUSE(safelen)
709 OPENMP_TEAMS_DISTRIBUTE_SIMD_CLAUSE(simdlen)
710
711 // Clauses allowed for OpenMP directive 'teams distribute parallel for simd'
712 OPENMP_TEAMS_DISTRIBUTE_PARALLEL_FOR_SIMD_CLAUSE(firstprivate)
713 OPENMP_TEAMS_DISTRIBUTE_PARALLEL_FOR_SIMD_CLAUSE(lastprivate)
714 OPENMP_TEAMS_DISTRIBUTE_PARALLEL_FOR_SIMD_CLAUSE(collapse)
715 OPENMP_TEAMS_DISTRIBUTE_PARALLEL_FOR_SIMD_CLAUSE(dist_schedule)
716 OPENMP_TEAMS_DISTRIBUTE_PARALLEL_FOR_SIMD_CLAUSE(if)
717 OPENMP_TEAMS_DISTRIBUTE_PARALLEL_FOR_SIMD_CLAUSE(num_threads)
718 OPENMP_TEAMS_DISTRIBUTE_PARALLEL_FOR_SIMD_CLAUSE(default)
719 OPENMP_TEAMS_DISTRIBUTE_PARALLEL_FOR_SIMD_CLAUSE(proc_bind)
720 OPENMP_TEAMS_DISTRIBUTE_PARALLEL_FOR_SIMD_CLAUSE(private)
721 OPENMP_TEAMS_DISTRIBUTE_PARALLEL_FOR_SIMD_CLAUSE(shared)
722 OPENMP_TEAMS_DISTRIBUTE_PARALLEL_FOR_SIMD_CLAUSE(reduction)
723 OPENMP_TEAMS_DISTRIBUTE_PARALLEL_FOR_SIMD_CLAUSE(schedule)
724 OPENMP_TEAMS_DISTRIBUTE_PARALLEL_FOR_SIMD_CLAUSE(linear)
725 OPENMP_TEAMS_DISTRIBUTE_PARALLEL_FOR_SIMD_CLAUSE(aligned)
726 OPENMP_TEAMS_DISTRIBUTE_PARALLEL_FOR_SIMD_CLAUSE(safelen)
727 OPENMP_TEAMS_DISTRIBUTE_PARALLEL_FOR_SIMD_CLAUSE(simdlen)
728 OPENMP_TEAMS_DISTRIBUTE_PARALLEL_FOR_SIMD_CLAUSE(num_teams)
729 OPENMP_TEAMS_DISTRIBUTE_PARALLEL_FOR_SIMD_CLAUSE(thread_limit)
730
731 // Clauses allowed for OpenMP directive 'teams distribute parallel for'
732 OPENMP_TEAMS_DISTRIBUTE_PARALLEL_FOR_CLAUSE(firstprivate)
733 OPENMP_TEAMS_DISTRIBUTE_PARALLEL_FOR_CLAUSE(lastprivate)
734 OPENMP_TEAMS_DISTRIBUTE_PARALLEL_FOR_CLAUSE(collapse)
735 OPENMP_TEAMS_DISTRIBUTE_PARALLEL_FOR_CLAUSE(dist_schedule)
736 OPENMP_TEAMS_DISTRIBUTE_PARALLEL_FOR_CLAUSE(if)
737 OPENMP_TEAMS_DISTRIBUTE_PARALLEL_FOR_CLAUSE(num_threads)
738 OPENMP_TEAMS_DISTRIBUTE_PARALLEL_FOR_CLAUSE(default)
739 OPENMP_TEAMS_DISTRIBUTE_PARALLEL_FOR_CLAUSE(proc_bind)
740 OPENMP_TEAMS_DISTRIBUTE_PARALLEL_FOR_CLAUSE(private)
741 OPENMP_TEAMS_DISTRIBUTE_PARALLEL_FOR_CLAUSE(shared)
742 OPENMP_TEAMS_DISTRIBUTE_PARALLEL_FOR_CLAUSE(reduction)
743 OPENMP_TEAMS_DISTRIBUTE_PARALLEL_FOR_CLAUSE(schedule)
744 OPENMP_TEAMS_DISTRIBUTE_PARALLEL_FOR_CLAUSE(linear)
745 OPENMP_TEAMS_DISTRIBUTE_PARALLEL_FOR_CLAUSE(num_teams)
746 OPENMP_TEAMS_DISTRIBUTE_PARALLEL_FOR_CLAUSE(thread_limit)
747
748 // Clauses allowed for OpenMP directive 'target teams'.
749 OPENMP_TARGET_TEAMS_CLAUSE(if)
750 OPENMP_TARGET_TEAMS_CLAUSE(device)
751 OPENMP_TARGET_TEAMS_CLAUSE(map)
752 OPENMP_TARGET_TEAMS_CLAUSE(private)
753 OPENMP_TARGET_TEAMS_CLAUSE(nowait)
754 OPENMP_TARGET_TEAMS_CLAUSE(depend)
755 OPENMP_TARGET_TEAMS_CLAUSE(defaultmap)
756 OPENMP_TARGET_TEAMS_CLAUSE(firstprivate)
757 OPENMP_TARGET_TEAMS_CLAUSE(is_device_ptr)
758 OPENMP_TARGET_TEAMS_CLAUSE(default)
759 OPENMP_TARGET_TEAMS_CLAUSE(shared)
760 OPENMP_TARGET_TEAMS_CLAUSE(reduction)
761 OPENMP_TARGET_TEAMS_CLAUSE(num_teams)
762 OPENMP_TARGET_TEAMS_CLAUSE(thread_limit)
763
764 // Clauses allowed for OpenMP directive 'target teams distribute'.
765 OPENMP_TARGET_TEAMS_DISTRIBUTE_CLAUSE(if)
766 OPENMP_TARGET_TEAMS_DISTRIBUTE_CLAUSE(device)
767 OPENMP_TARGET_TEAMS_DISTRIBUTE_CLAUSE(map)
768 OPENMP_TARGET_TEAMS_DISTRIBUTE_CLAUSE(private)
769 OPENMP_TARGET_TEAMS_DISTRIBUTE_CLAUSE(nowait)
770 OPENMP_TARGET_TEAMS_DISTRIBUTE_CLAUSE(depend)
771 OPENMP_TARGET_TEAMS_DISTRIBUTE_CLAUSE(defaultmap)
772 OPENMP_TARGET_TEAMS_DISTRIBUTE_CLAUSE(firstprivate)
773 OPENMP_TARGET_TEAMS_DISTRIBUTE_CLAUSE(is_device_ptr)
774 OPENMP_TARGET_TEAMS_DISTRIBUTE_CLAUSE(default)
775 OPENMP_TARGET_TEAMS_DISTRIBUTE_CLAUSE(shared)
776 OPENMP_TARGET_TEAMS_DISTRIBUTE_CLAUSE(reduction)
777 OPENMP_TARGET_TEAMS_DISTRIBUTE_CLAUSE(num_teams)
778 OPENMP_TARGET_TEAMS_DISTRIBUTE_CLAUSE(thread_limit)
779 OPENMP_TARGET_TEAMS_DISTRIBUTE_CLAUSE(lastprivate)
780 OPENMP_TARGET_TEAMS_DISTRIBUTE_CLAUSE(collapse)
781 OPENMP_TARGET_TEAMS_DISTRIBUTE_CLAUSE(dist_schedule)
782
783 // Clauses allowed for OpenMP directive 'target teams distribute parallel for'.
784 OPENMP_TARGET_TEAMS_DISTRIBUTE_PARALLEL_FOR_CLAUSE(if)
785 OPENMP_TARGET_TEAMS_DISTRIBUTE_PARALLEL_FOR_CLAUSE(device)
786 OPENMP_TARGET_TEAMS_DISTRIBUTE_PARALLEL_FOR_CLAUSE(map)
787 OPENMP_TARGET_TEAMS_DISTRIBUTE_PARALLEL_FOR_CLAUSE(private)
788 OPENMP_TARGET_TEAMS_DISTRIBUTE_PARALLEL_FOR_CLAUSE(nowait)
789 OPENMP_TARGET_TEAMS_DISTRIBUTE_PARALLEL_FOR_CLAUSE(depend)
790 OPENMP_TARGET_TEAMS_DISTRIBUTE_PARALLEL_FOR_CLAUSE(defaultmap)
791 OPENMP_TARGET_TEAMS_DISTRIBUTE_PARALLEL_FOR_CLAUSE(firstprivate)
792 OPENMP_TARGET_TEAMS_DISTRIBUTE_PARALLEL_FOR_CLAUSE(is_device_ptr)
793 OPENMP_TARGET_TEAMS_DISTRIBUTE_PARALLEL_FOR_CLAUSE(default)
794 OPENMP_TARGET_TEAMS_DISTRIBUTE_PARALLEL_FOR_CLAUSE(shared)
795 OPENMP_TARGET_TEAMS_DISTRIBUTE_PARALLEL_FOR_CLAUSE(reduction)
796 OPENMP_TARGET_TEAMS_DISTRIBUTE_PARALLEL_FOR_CLAUSE(num_teams)
797 OPENMP_TARGET_TEAMS_DISTRIBUTE_PARALLEL_FOR_CLAUSE(thread_limit)
798 OPENMP_TARGET_TEAMS_DISTRIBUTE_PARALLEL_FOR_CLAUSE(lastprivate)
799 OPENMP_TARGET_TEAMS_DISTRIBUTE_PARALLEL_FOR_CLAUSE(collapse)
800 OPENMP_TARGET_TEAMS_DISTRIBUTE_PARALLEL_FOR_CLAUSE(dist_schedule)
801 OPENMP_TARGET_TEAMS_DISTRIBUTE_PARALLEL_FOR_CLAUSE(num_threads)
802 OPENMP_TARGET_TEAMS_DISTRIBUTE_PARALLEL_FOR_CLAUSE(proc_bind)
803 OPENMP_TARGET_TEAMS_DISTRIBUTE_PARALLEL_FOR_CLAUSE(schedule)
804 OPENMP_TARGET_TEAMS_DISTRIBUTE_PARALLEL_FOR_CLAUSE(linear)
805
806 // Clauses allowed for OpenMP directive
807 // 'target teams distribute parallel for simd'.
808 OPENMP_TARGET_TEAMS_DISTRIBUTE_PARALLEL_FOR_SIMD_CLAUSE(if)
809 OPENMP_TARGET_TEAMS_DISTRIBUTE_PARALLEL_FOR_SIMD_CLAUSE(device)
810 OPENMP_TARGET_TEAMS_DISTRIBUTE_PARALLEL_FOR_SIMD_CLAUSE(map)
811 OPENMP_TARGET_TEAMS_DISTRIBUTE_PARALLEL_FOR_SIMD_CLAUSE(private)
812 OPENMP_TARGET_TEAMS_DISTRIBUTE_PARALLEL_FOR_SIMD_CLAUSE(nowait)
813 OPENMP_TARGET_TEAMS_DISTRIBUTE_PARALLEL_FOR_SIMD_CLAUSE(depend)
814 OPENMP_TARGET_TEAMS_DISTRIBUTE_PARALLEL_FOR_SIMD_CLAUSE(defaultmap)
815 OPENMP_TARGET_TEAMS_DISTRIBUTE_PARALLEL_FOR_SIMD_CLAUSE(firstprivate)
816 OPENMP_TARGET_TEAMS_DISTRIBUTE_PARALLEL_FOR_SIMD_CLAUSE(is_device_ptr)
817 OPENMP_TARGET_TEAMS_DISTRIBUTE_PARALLEL_FOR_SIMD_CLAUSE(default)
818 OPENMP_TARGET_TEAMS_DISTRIBUTE_PARALLEL_FOR_SIMD_CLAUSE(shared)
819 OPENMP_TARGET_TEAMS_DISTRIBUTE_PARALLEL_FOR_SIMD_CLAUSE(reduction)
820 OPENMP_TARGET_TEAMS_DISTRIBUTE_PARALLEL_FOR_SIMD_CLAUSE(num_teams)
821 OPENMP_TARGET_TEAMS_DISTRIBUTE_PARALLEL_FOR_SIMD_CLAUSE(thread_limit)
822 OPENMP_TARGET_TEAMS_DISTRIBUTE_PARALLEL_FOR_SIMD_CLAUSE(lastprivate)
823 OPENMP_TARGET_TEAMS_DISTRIBUTE_PARALLEL_FOR_SIMD_CLAUSE(collapse)
824 OPENMP_TARGET_TEAMS_DISTRIBUTE_PARALLEL_FOR_SIMD_CLAUSE(dist_schedule)
825 OPENMP_TARGET_TEAMS_DISTRIBUTE_PARALLEL_FOR_SIMD_CLAUSE(num_threads)
826 OPENMP_TARGET_TEAMS_DISTRIBUTE_PARALLEL_FOR_SIMD_CLAUSE(proc_bind)
827 OPENMP_TARGET_TEAMS_DISTRIBUTE_PARALLEL_FOR_SIMD_CLAUSE(schedule)
828 OPENMP_TARGET_TEAMS_DISTRIBUTE_PARALLEL_FOR_SIMD_CLAUSE(linear)
829 OPENMP_TARGET_TEAMS_DISTRIBUTE_PARALLEL_FOR_SIMD_CLAUSE(aligned)
830 OPENMP_TARGET_TEAMS_DISTRIBUTE_PARALLEL_FOR_SIMD_CLAUSE(safelen)
831 OPENMP_TARGET_TEAMS_DISTRIBUTE_PARALLEL_FOR_SIMD_CLAUSE(simdlen)
832
833 // Clauses allowed for OpenMP directive 'target teams distribute simd'.
834 OPENMP_TARGET_TEAMS_DISTRIBUTE_SIMD_CLAUSE(if)
835 OPENMP_TARGET_TEAMS_DISTRIBUTE_SIMD_CLAUSE(device)
836 OPENMP_TARGET_TEAMS_DISTRIBUTE_SIMD_CLAUSE(map)
837 OPENMP_TARGET_TEAMS_DISTRIBUTE_SIMD_CLAUSE(private)
838 OPENMP_TARGET_TEAMS_DISTRIBUTE_SIMD_CLAUSE(nowait)
839 OPENMP_TARGET_TEAMS_DISTRIBUTE_SIMD_CLAUSE(depend)
840 OPENMP_TARGET_TEAMS_DISTRIBUTE_SIMD_CLAUSE(defaultmap)
841 OPENMP_TARGET_TEAMS_DISTRIBUTE_SIMD_CLAUSE(firstprivate)
842 OPENMP_TARGET_TEAMS_DISTRIBUTE_SIMD_CLAUSE(lastprivate)
843 OPENMP_TARGET_TEAMS_DISTRIBUTE_SIMD_CLAUSE(is_device_ptr)
844 OPENMP_TARGET_TEAMS_DISTRIBUTE_SIMD_CLAUSE(shared)
845 OPENMP_TARGET_TEAMS_DISTRIBUTE_SIMD_CLAUSE(reduction)
846 OPENMP_TARGET_TEAMS_DISTRIBUTE_SIMD_CLAUSE(num_teams)
847 OPENMP_TARGET_TEAMS_DISTRIBUTE_SIMD_CLAUSE(thread_limit)
848 OPENMP_TARGET_TEAMS_DISTRIBUTE_SIMD_CLAUSE(collapse)
849 OPENMP_TARGET_TEAMS_DISTRIBUTE_SIMD_CLAUSE(dist_schedule)
850 OPENMP_TARGET_TEAMS_DISTRIBUTE_SIMD_CLAUSE(linear)
851 OPENMP_TARGET_TEAMS_DISTRIBUTE_SIMD_CLAUSE(aligned)
852 OPENMP_TARGET_TEAMS_DISTRIBUTE_SIMD_CLAUSE(safelen)
853 OPENMP_TARGET_TEAMS_DISTRIBUTE_SIMD_CLAUSE(simdlen)
854
855 // Clauses allowed for OpenMP directive 'taskgroup'.
856 OPENMP_TASKGROUP_CLAUSE(task_reduction)
857
858 #undef OPENMP_TASKGROUP_CLAUSE
859 #undef OPENMP_TASKLOOP_SIMD_CLAUSE
860 #undef OPENMP_TASKLOOP_CLAUSE
861 #undef OPENMP_LINEAR_KIND
862 #undef OPENMP_DEPEND_KIND
863 #undef OPENMP_SCHEDULE_MODIFIER
864 #undef OPENMP_SCHEDULE_KIND
865 #undef OPENMP_PROC_BIND_KIND
866 #undef OPENMP_DEFAULT_KIND
867 #undef OPENMP_DIRECTIVE
868 #undef OPENMP_DIRECTIVE_EXT
869 #undef OPENMP_CLAUSE
870 #undef OPENMP_CRITICAL_CLAUSE
871 #undef OPENMP_ORDERED_CLAUSE
872 #undef OPENMP_CANCEL_CLAUSE
873 #undef OPENMP_SINGLE_CLAUSE
874 #undef OPENMP_SECTIONS_CLAUSE
875 #undef OPENMP_PARALLEL_CLAUSE
876 #undef OPENMP_PARALLEL_FOR_CLAUSE
877 #undef OPENMP_PARALLEL_FOR_SIMD_CLAUSE
878 #undef OPENMP_PARALLEL_SECTIONS_CLAUSE
879 #undef OPENMP_TASK_CLAUSE
880 #undef OPENMP_ATOMIC_CLAUSE
881 #undef OPENMP_TARGET_CLAUSE
882 #undef OPENMP_TARGET_DATA_CLAUSE
883 #undef OPENMP_TARGET_ENTER_DATA_CLAUSE
884 #undef OPENMP_TARGET_EXIT_DATA_CLAUSE
885 #undef OPENMP_TARGET_PARALLEL_CLAUSE
886 #undef OPENMP_TARGET_PARALLEL_FOR_CLAUSE
887 #undef OPENMP_TEAMS_CLAUSE
888 #undef OPENMP_SIMD_CLAUSE
889 #undef OPENMP_FOR_CLAUSE
890 #undef OPENMP_FOR_SIMD_CLAUSE
891 #undef OPENMP_MAP_KIND
892 #undef OPENMP_DISTRIBUTE_CLAUSE
893 #undef OPENMP_DIST_SCHEDULE_KIND
894 #undef OPENMP_DEFAULTMAP_KIND
895 #undef OPENMP_DEFAULTMAP_MODIFIER
896 #undef OPENMP_TARGET_UPDATE_CLAUSE
897 #undef OPENMP_DISTRIBUTE_PARALLEL_FOR_CLAUSE
898 #undef OPENMP_DISTRIBUTE_PARALLEL_FOR_SIMD_CLAUSE
899 #undef OPENMP_DISTRIBUTE_SIMD_CLAUSE
900 #undef OPENMP_TARGET_PARALLEL_FOR_SIMD_CLAUSE
901 #undef OPENMP_TARGET_SIMD_CLAUSE
902 #undef OPENMP_TEAMS_DISTRIBUTE_CLAUSE
903 #undef OPENMP_TEAMS_DISTRIBUTE_SIMD_CLAUSE
904 #undef OPENMP_TEAMS_DISTRIBUTE_PARALLEL_FOR_SIMD_CLAUSE
905 #undef OPENMP_TEAMS_DISTRIBUTE_PARALLEL_FOR_CLAUSE
906 #undef OPENMP_TARGET_TEAMS_CLAUSE
907 #undef OPENMP_TARGET_TEAMS_DISTRIBUTE_CLAUSE
908 #undef OPENMP_TARGET_TEAMS_DISTRIBUTE_PARALLEL_FOR_CLAUSE
909 #undef OPENMP_TARGET_TEAMS_DISTRIBUTE_PARALLEL_FOR_SIMD_CLAUSE
910 #undef OPENMP_TARGET_TEAMS_DISTRIBUTE_SIMD_CLAUSE