15 #ifndef LLVM_CLANG_BASIC_OPENMPKINDS_H
16 #define LLVM_CLANG_BASIC_OPENMPKINDS_H
18 #include "llvm/ADT/StringRef.h"
24 #define OPENMP_DIRECTIVE(Name) \
26 #define OPENMP_DIRECTIVE_EXT(Name, Str) \
28 #include "clang/Basic/OpenMPKinds.def"
34 #define OPENMP_CLAUSE(Name, Class) \
36 #include "clang/Basic/OpenMPKinds.def"
43 #define OPENMP_DEFAULT_KIND(Name) \
45 #include "clang/Basic/OpenMPKinds.def"
51 #define OPENMP_PROC_BIND_KIND(Name) \
52 OMPC_PROC_BIND_##Name,
53 #include "clang/Basic/OpenMPKinds.def"
59 #define OPENMP_SCHEDULE_KIND(Name) \
61 #include "clang/Basic/OpenMPKinds.def"
67 #define OPENMP_DEPEND_KIND(Name) \
69 #include "clang/Basic/OpenMPKinds.def"
const char * getOpenMPSimpleClauseTypeName(OpenMPClauseKind Kind, unsigned Type)
bool isAllowedClauseForDirective(OpenMPDirectiveKind DKind, OpenMPClauseKind CKind)
const char * getOpenMPClauseName(OpenMPClauseKind Kind)
bool isOpenMPTeamsDirective(OpenMPDirectiveKind DKind)
Checks if the specified directive is a teams-kind directive.
OpenMPClauseKind getOpenMPClauseKind(llvm::StringRef Str)
bool isOpenMPWorksharingDirective(OpenMPDirectiveKind DKind)
Checks if the specified directive is a worksharing directive.
bool isOpenMPPrivate(OpenMPClauseKind Kind)
Checks if the specified clause is one of private clauses like 'private', 'firstprivate', 'reduction' etc..
bool isOpenMPParallelDirective(OpenMPDirectiveKind DKind)
Checks if the specified directive is a parallel-kind directive.
OpenMPClauseKind
OpenMP clauses.
OpenMPProcBindClauseKind
OpenMP attributes for 'proc_bind' clause.
OpenMPDependClauseKind
OpenMP attributes for 'depend' clause.
OpenMPDirectiveKind
OpenMP directives.
bool isOpenMPSimdDirective(OpenMPDirectiveKind DKind)
Checks if the specified directive is a simd directive.
bool isOpenMPThreadPrivate(OpenMPClauseKind Kind)
Checks if the specified clause is one of threadprivate clauses like 'threadprivate', 'copyin' or 'copyprivate'.
unsigned getOpenMPSimpleClauseType(OpenMPClauseKind Kind, llvm::StringRef Str)
OpenMPScheduleClauseKind
OpenMP attributes for 'schedule' clause.
OpenMPDefaultClauseKind
OpenMP attributes for 'default' clause.
OpenMPDirectiveKind getOpenMPDirectiveKind(llvm::StringRef Str)
const char * getOpenMPDirectiveName(OpenMPDirectiveKind Kind)
bool isOpenMPLoopDirective(OpenMPDirectiveKind DKind)
Checks if the specified directive is a directive with an associated loop construct.