LLVM  16.0.0git
Namespaces | Macros | Enumerations | Functions
OMPConstants.h File Reference
#include "llvm/ADT/BitmaskEnum.h"
#include "llvm/ADT/StringRef.h"
#include "llvm/Frontend/OpenMP/OMP.h.inc"
#include "llvm/Frontend/OpenMP/OMPKinds.def"
Include dependency graph for OMPConstants.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Namespaces

 llvm
 This is an optimization pass for GlobalISel generic memory operations.
 
 llvm::omp
 

Macros

#define ICV_DATA_ENV(Enum, ...)   Enum,
 
#define ICV_DATA_ENV(Enum, ...)   constexpr auto Enum = omp::InternalControlVar::Enum;
 
#define ICV_INIT_VALUE(Enum, Name)   Enum,
 
#define ICV_INIT_VALUE(Enum, Name)   constexpr auto Enum = omp::ICVInitValue::Enum;
 
#define OMP_RTL(Enum, ...)   Enum,
 
#define OMP_RTL(Enum, ...)   constexpr auto Enum = omp::RuntimeFunction::Enum;
 
#define OMP_DEFAULT_KIND(Enum, Str)   Enum,
 
#define OMP_DEFAULT_KIND(Enum, ...)   constexpr auto Enum = omp::DefaultKind::Enum;
 
#define OMP_IDENT_FLAG(Enum, Str, Value)   Enum = Value,
 
#define OMP_IDENT_FLAG(Enum, ...)   constexpr auto Enum = omp::IdentFlag::Enum;
 

Enumerations

enum  llvm::omp::InternalControlVar { llvm::omp::InternalControlVar::ICV_DATA_ENV }
 IDs for all Internal Control Variables (ICVs). More...
 
enum  llvm::omp::ICVInitValue { llvm::omp::ICVInitValue::ICV_INIT_VALUE }
 
enum  llvm::omp::RuntimeFunction { llvm::omp::RuntimeFunction::OMP_RTL }
 IDs for all omp runtime library (RTL) functions. More...
 
enum  llvm::omp::DefaultKind { llvm::omp::DefaultKind::OMP_DEFAULT_KIND }
 IDs for the different default kinds. More...
 
enum  llvm::omp::IdentFlag { llvm::omp::IdentFlag::OMP_IDENT_FLAG }
 IDs for all omp runtime library ident_t flag encodings (see their defintion in openmp/runtime/src/kmp.h). More...
 
enum  llvm::omp::OMPScheduleType {
  llvm::omp::OMPScheduleType::None = 0, llvm::omp::OMPScheduleType::BaseStaticChunked = 1, llvm::omp::OMPScheduleType::BaseStatic = 2, llvm::omp::OMPScheduleType::BaseDynamicChunked = 3,
  llvm::omp::OMPScheduleType::BaseGuidedChunked = 4, llvm::omp::OMPScheduleType::BaseRuntime = 5, llvm::omp::OMPScheduleType::BaseAuto = 6, llvm::omp::OMPScheduleType::BaseTrapezoidal = 7,
  llvm::omp::OMPScheduleType::BaseGreedy = 8, llvm::omp::OMPScheduleType::BaseBalanced = 9, llvm::omp::OMPScheduleType::BaseGuidedIterativeChunked = 10, llvm::omp::OMPScheduleType::BaseGuidedAnalyticalChunked = 11,
  llvm::omp::OMPScheduleType::BaseSteal = 12, llvm::omp::OMPScheduleType::BaseStaticBalancedChunked = 13, llvm::omp::OMPScheduleType::BaseGuidedSimd = 14, llvm::omp::OMPScheduleType::BaseRuntimeSimd = 15,
  llvm::omp::OMPScheduleType::BaseDistributeChunked = 27, llvm::omp::OMPScheduleType::BaseDistribute = 28, llvm::omp::OMPScheduleType::ModifierUnordered = (1 << 5), llvm::omp::OMPScheduleType::ModifierOrdered = (1 << 6),
  llvm::omp::OMPScheduleType::ModifierNomerge = (1 << 7), llvm::omp::OMPScheduleType::ModifierMonotonic = (1 << 29), llvm::omp::OMPScheduleType::ModifierNonmonotonic = (1 << 30), llvm::omp::OMPScheduleType::OrderingMask = ModifierUnordered | ModifierOrdered | ModifierNomerge,
  llvm::omp::OMPScheduleType::MonotonicityMask = ModifierMonotonic | ModifierNonmonotonic, llvm::omp::OMPScheduleType::ModifierMask = OrderingMask | MonotonicityMask, llvm::omp::OMPScheduleType::UnorderedStaticChunked = BaseStaticChunked | ModifierUnordered, llvm::omp::OMPScheduleType::UnorderedStatic = BaseStatic | ModifierUnordered,
  llvm::omp::OMPScheduleType::UnorderedDynamicChunked = BaseDynamicChunked | ModifierUnordered, llvm::omp::OMPScheduleType::UnorderedGuidedChunked = BaseGuidedChunked | ModifierUnordered, llvm::omp::OMPScheduleType::UnorderedRuntime = BaseRuntime | ModifierUnordered, llvm::omp::OMPScheduleType::UnorderedAuto = BaseAuto | ModifierUnordered,
  llvm::omp::OMPScheduleType::UnorderedTrapezoidal = BaseTrapezoidal | ModifierUnordered, llvm::omp::OMPScheduleType::UnorderedGreedy = BaseGreedy | ModifierUnordered, llvm::omp::OMPScheduleType::UnorderedBalanced = BaseBalanced | ModifierUnordered, llvm::omp::OMPScheduleType::UnorderedGuidedIterativeChunked,
  llvm::omp::OMPScheduleType::UnorderedGuidedAnalyticalChunked, llvm::omp::OMPScheduleType::UnorderedSteal = BaseSteal | ModifierUnordered, llvm::omp::OMPScheduleType::UnorderedStaticBalancedChunked, llvm::omp::OMPScheduleType::UnorderedGuidedSimd = BaseGuidedSimd | ModifierUnordered,
  llvm::omp::OMPScheduleType::UnorderedRuntimeSimd = BaseRuntimeSimd | ModifierUnordered, llvm::omp::OMPScheduleType::OrderedStaticChunked = BaseStaticChunked | ModifierOrdered, llvm::omp::OMPScheduleType::OrderedStatic = BaseStatic | ModifierOrdered, llvm::omp::OMPScheduleType::OrderedDynamicChunked = BaseDynamicChunked | ModifierOrdered,
  llvm::omp::OMPScheduleType::OrderedGuidedChunked = BaseGuidedChunked | ModifierOrdered, llvm::omp::OMPScheduleType::OrderedRuntime = BaseRuntime | ModifierOrdered, llvm::omp::OMPScheduleType::OrderedAuto = BaseAuto | ModifierOrdered, llvm::omp::OMPScheduleType::OrderdTrapezoidal = BaseTrapezoidal | ModifierOrdered,
  llvm::omp::OMPScheduleType::OrderedDistributeChunked = BaseDistributeChunked | ModifierOrdered, llvm::omp::OMPScheduleType::OrderedDistribute = BaseDistribute | ModifierOrdered, llvm::omp::OMPScheduleType::NomergeUnorderedStaticChunked, llvm::omp::OMPScheduleType::NomergeUnorderedStatic,
  llvm::omp::OMPScheduleType::NomergeUnorderedDynamicChunked, llvm::omp::OMPScheduleType::NomergeUnorderedGuidedChunked, llvm::omp::OMPScheduleType::NomergeUnorderedRuntime, llvm::omp::OMPScheduleType::NomergeUnorderedAuto = BaseAuto | ModifierUnordered | ModifierNomerge,
  llvm::omp::OMPScheduleType::NomergeUnorderedTrapezoidal, llvm::omp::OMPScheduleType::NomergeUnorderedGreedy, llvm::omp::OMPScheduleType::NomergeUnorderedBalanced, llvm::omp::OMPScheduleType::NomergeUnorderedGuidedIterativeChunked,
  llvm::omp::OMPScheduleType::NomergeUnorderedGuidedAnalyticalChunked, llvm::omp::OMPScheduleType::NomergeUnorderedSteal, llvm::omp::OMPScheduleType::NomergeOrderedStaticChunked, llvm::omp::OMPScheduleType::NomergeOrderedStatic = BaseStatic | ModifierOrdered | ModifierNomerge,
  llvm::omp::OMPScheduleType::NomergeOrderedDynamicChunked, llvm::omp::OMPScheduleType::NomergeOrderedGuidedChunked, llvm::omp::OMPScheduleType::NomergeOrderedRuntime, llvm::omp::OMPScheduleType::NomergeOrderedAuto = BaseAuto | ModifierOrdered | ModifierNomerge,
  llvm::omp::OMPScheduleType::NomergeOrderedTrapezoidal
}
 
enum  llvm::omp::OMPTgtExecModeFlags : int8_t { llvm::omp::OMP_TGT_EXEC_MODE_GENERIC = 1 << 0, llvm::omp::OMP_TGT_EXEC_MODE_SPMD = 1 << 1, llvm::omp::OMP_TGT_EXEC_MODE_GENERIC_SPMD }
 
enum  llvm::omp::AddressSpace : unsigned {
  llvm::omp::AddressSpace::Generic = 0, llvm::omp::AddressSpace::Global = 1, llvm::omp::AddressSpace::Shared = 3, llvm::omp::AddressSpace::Constant = 4,
  llvm::omp::AddressSpace::Local = 5
}
 
enum  llvm::omp::OMPInteropType { llvm::omp::OMPInteropType::Unknown, llvm::omp::OMPInteropType::Target, llvm::omp::OMPInteropType::TargetSync }
 
enum  llvm::omp::OMPAtomicCompareOp : unsigned { llvm::omp::OMPAtomicCompareOp::EQ, llvm::omp::OMPAtomicCompareOp::MIN, llvm::omp::OMPAtomicCompareOp::MAX }
 Atomic compare operations. Currently OpenMP only supports ==, >, and <. More...
 
enum  llvm::omp::RTLDependInfoFields { llvm::omp::RTLDependInfoFields::BaseAddr, llvm::omp::RTLDependInfoFields::Len, llvm::omp::RTLDependInfoFields::Flags }
 Fields ids in kmp_depend_info record. More...
 
enum  llvm::omp::RTLDependenceKindTy {
  llvm::omp::RTLDependenceKindTy::DepUnknown = 0x0, llvm::omp::RTLDependenceKindTy::DepIn = 0x01, llvm::omp::RTLDependenceKindTy::DepInOut = 0x3, llvm::omp::RTLDependenceKindTy::DepMutexInOutSet = 0x4,
  llvm::omp::RTLDependenceKindTy::DepInOutSet = 0x8, llvm::omp::RTLDependenceKindTy::DepOmpAllMem = 0x80
}
 Dependence kind for RTL. More...
 

Functions

 llvm::omp::LLVM_ENABLE_BITMASK_ENUMS_IN_NAMESPACE ()
 

Detailed Description

This file defines constans and helpers used when dealing with OpenMP.

Definition in file OMPConstants.h.

Macro Definition Documentation

◆ ICV_DATA_ENV [1/2]

#define ICV_DATA_ENV (   Enum,
  ... 
)    Enum,

Definition at line 32 of file OMPConstants.h.

◆ ICV_DATA_ENV [2/2]

#define ICV_DATA_ENV (   Enum,
  ... 
)    constexpr auto Enum = omp::InternalControlVar::Enum;

Definition at line 32 of file OMPConstants.h.

◆ ICV_INIT_VALUE [1/2]

#define ICV_INIT_VALUE (   Enum,
  Name 
)    Enum,

Definition at line 41 of file OMPConstants.h.

◆ ICV_INIT_VALUE [2/2]

#define ICV_INIT_VALUE (   Enum,
  Name 
)    constexpr auto Enum = omp::ICVInitValue::Enum;

Definition at line 41 of file OMPConstants.h.

◆ OMP_DEFAULT_KIND [1/2]

#define OMP_DEFAULT_KIND (   Enum,
  Str 
)    Enum,

Definition at line 60 of file OMPConstants.h.

◆ OMP_DEFAULT_KIND [2/2]

#define OMP_DEFAULT_KIND (   Enum,
  ... 
)    constexpr auto Enum = omp::DefaultKind::Enum;

Definition at line 60 of file OMPConstants.h.

◆ OMP_IDENT_FLAG [1/2]

#define OMP_IDENT_FLAG (   Enum,
  Str,
  Value 
)    Enum = Value,

Definition at line 72 of file OMPConstants.h.

◆ OMP_IDENT_FLAG [2/2]

#define OMP_IDENT_FLAG (   Enum,
  ... 
)    constexpr auto Enum = omp::IdentFlag::Enum;

Definition at line 72 of file OMPConstants.h.

◆ OMP_RTL [1/2]

#define OMP_RTL (   Enum,
  ... 
)    Enum,

Definition at line 51 of file OMPConstants.h.

◆ OMP_RTL [2/2]

#define OMP_RTL (   Enum,
  ... 
)    constexpr auto Enum = omp::RuntimeFunction::Enum;

Definition at line 51 of file OMPConstants.h.