]> CyberLeo.Net >> Repos - FreeBSD/releng/10.2.git/blob - contrib/llvm/tools/clang/include/clang/Basic/OpenMPKinds.def
- Copy stable/10@285827 to releng/10.2 in preparation for 10.2-RC1
[FreeBSD/releng/10.2.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_CLAUSE
19 #  define OPENMP_CLAUSE(Name, Class)
20 #endif
21 #ifndef OPENMP_PARALLEL_CLAUSE
22 #  define OPENMP_PARALLEL_CLAUSE(Name)
23 #endif
24 #ifndef OPENMP_DEFAULT_KIND
25 #  define OPENMP_DEFAULT_KIND(Name)
26 #endif
27
28 // OpenMP directives.
29 OPENMP_DIRECTIVE(threadprivate)
30 OPENMP_DIRECTIVE(parallel)
31 OPENMP_DIRECTIVE(task)
32
33 // OpenMP clauses.
34 OPENMP_CLAUSE(default, OMPDefaultClause)
35 OPENMP_CLAUSE(private, OMPPrivateClause)
36 OPENMP_CLAUSE(firstprivate, OMPFirstprivateClause)
37 OPENMP_CLAUSE(shared,  OMPSharedClause)
38
39 // Clauses allowed for OpenMP directives.
40 OPENMP_PARALLEL_CLAUSE(default)
41 OPENMP_PARALLEL_CLAUSE(private)
42 OPENMP_PARALLEL_CLAUSE(firstprivate)
43 OPENMP_PARALLEL_CLAUSE(shared)
44
45 // Static attributes for 'default' clause.
46 OPENMP_DEFAULT_KIND(none)
47 OPENMP_DEFAULT_KIND(shared)
48
49 #undef OPENMP_DEFAULT_KIND
50 #undef OPENMP_DIRECTIVE
51 #undef OPENMP_CLAUSE
52 #undef OPENMP_PARALLEL_CLAUSE