#ifndef LLVM_OpenMP_INC
#define LLVM_OpenMP_INC
#include "llvm/ADT/ArrayRef.h"
#include "llvm/ADT/BitmaskEnum.h"
#include "llvm/Support/Compiler.h"
#include <cstddef>
namespace llvm {
class StringRef;
namespace omp {
LLVM_ENABLE_BITMASK_ENUMS_IN_NAMESPACE(…);
enum class Association { … };
static constexpr std::size_t Association_enumSize = …;
enum class Category { … };
static constexpr std::size_t Category_enumSize = …;
enum class Directive { … };
static constexpr std::size_t Directive_enumSize = …;
constexpr auto OMPD_allocate = …;
constexpr auto OMPD_allocators = …;
constexpr auto OMPD_assume = …;
constexpr auto OMPD_assumes = …;
constexpr auto OMPD_atomic = …;
constexpr auto OMPD_barrier = …;
constexpr auto OMPD_begin_assumes = …;
constexpr auto OMPD_begin_declare_target = …;
constexpr auto OMPD_begin_declare_variant = …;
constexpr auto OMPD_cancel = …;
constexpr auto OMPD_cancellation_point = …;
constexpr auto OMPD_critical = …;
constexpr auto OMPD_declare_mapper = …;
constexpr auto OMPD_declare_reduction = …;
constexpr auto OMPD_declare_simd = …;
constexpr auto OMPD_declare_target = …;
constexpr auto OMPD_declare_variant = …;
constexpr auto OMPD_depobj = …;
constexpr auto OMPD_distribute = …;
constexpr auto OMPD_distribute_parallel_do = …;
constexpr auto OMPD_distribute_parallel_do_simd = …;
constexpr auto OMPD_distribute_parallel_for = …;
constexpr auto OMPD_distribute_parallel_for_simd = …;
constexpr auto OMPD_distribute_simd = …;
constexpr auto OMPD_do = …;
constexpr auto OMPD_do_simd = …;
constexpr auto OMPD_end_assumes = …;
constexpr auto OMPD_end_declare_target = …;
constexpr auto OMPD_end_declare_variant = …;
constexpr auto OMPD_end_do = …;
constexpr auto OMPD_end_do_simd = …;
constexpr auto OMPD_end_sections = …;
constexpr auto OMPD_end_single = …;
constexpr auto OMPD_end_workshare = …;
constexpr auto OMPD_error = …;
constexpr auto OMPD_flush = …;
constexpr auto OMPD_for = …;
constexpr auto OMPD_for_simd = …;
constexpr auto OMPD_interchange = …;
constexpr auto OMPD_masked_taskloop = …;
constexpr auto OMPD_masked_taskloop_simd = …;
constexpr auto OMPD_master = …;
constexpr auto OMPD_master_taskloop = …;
constexpr auto OMPD_master_taskloop_simd = …;
constexpr auto OMPD_metadirective = …;
constexpr auto OMPD_nothing = …;
constexpr auto OMPD_ordered = …;
constexpr auto OMPD_parallel = …;
constexpr auto OMPD_parallel_do = …;
constexpr auto OMPD_parallel_do_simd = …;
constexpr auto OMPD_parallel_for = …;
constexpr auto OMPD_parallel_for_simd = …;
constexpr auto OMPD_parallel_masked = …;
constexpr auto OMPD_parallel_masked_taskloop = …;
constexpr auto OMPD_parallel_masked_taskloop_simd = …;
constexpr auto OMPD_parallel_master = …;
constexpr auto OMPD_parallel_master_taskloop = …;
constexpr auto OMPD_parallel_master_taskloop_simd = …;
constexpr auto OMPD_parallel_sections = …;
constexpr auto OMPD_parallel_workshare = …;
constexpr auto OMPD_requires = …;
constexpr auto OMPD_reverse = …;
constexpr auto OMPD_scan = …;
constexpr auto OMPD_section = …;
constexpr auto OMPD_sections = …;
constexpr auto OMPD_simd = …;
constexpr auto OMPD_single = …;
constexpr auto OMPD_target = …;
constexpr auto OMPD_target_data = …;
constexpr auto OMPD_target_enter_data = …;
constexpr auto OMPD_target_exit_data = …;
constexpr auto OMPD_target_parallel = …;
constexpr auto OMPD_target_parallel_do = …;
constexpr auto OMPD_target_parallel_do_simd = …;
constexpr auto OMPD_target_parallel_for = …;
constexpr auto OMPD_target_parallel_for_simd = …;
constexpr auto OMPD_target_simd = …;
constexpr auto OMPD_target_teams = …;
constexpr auto OMPD_target_teams_distribute = …;
constexpr auto OMPD_target_teams_distribute_parallel_do = …;
constexpr auto OMPD_target_teams_distribute_parallel_do_simd = …;
constexpr auto OMPD_target_teams_distribute_parallel_for = …;
constexpr auto OMPD_target_teams_distribute_parallel_for_simd = …;
constexpr auto OMPD_target_teams_distribute_simd = …;
constexpr auto OMPD_target_update = …;
constexpr auto OMPD_task = …;
constexpr auto OMPD_taskgroup = …;
constexpr auto OMPD_taskloop = …;
constexpr auto OMPD_taskloop_simd = …;
constexpr auto OMPD_taskwait = …;
constexpr auto OMPD_taskyield = …;
constexpr auto OMPD_teams = …;
constexpr auto OMPD_teams_distribute = …;
constexpr auto OMPD_teams_distribute_parallel_do = …;
constexpr auto OMPD_teams_distribute_parallel_do_simd = …;
constexpr auto OMPD_teams_distribute_parallel_for = …;
constexpr auto OMPD_teams_distribute_parallel_for_simd = …;
constexpr auto OMPD_teams_distribute_simd = …;
constexpr auto OMPD_threadprivate = …;
constexpr auto OMPD_tile = …;
constexpr auto OMPD_unknown = …;
constexpr auto OMPD_unroll = …;
constexpr auto OMPD_workshare = …;
constexpr auto OMPD_dispatch = …;
constexpr auto OMPD_interop = …;
constexpr auto OMPD_loop = …;
constexpr auto OMPD_masked = …;
constexpr auto OMPD_parallel_loop = …;
constexpr auto OMPD_scope = …;
constexpr auto OMPD_target_loop = …;
constexpr auto OMPD_target_parallel_loop = …;
constexpr auto OMPD_target_teams_loop = …;
constexpr auto OMPD_teams_loop = …;
enum class Clause { … };
static constexpr std::size_t Clause_enumSize = …;
constexpr auto OMPC_absent = …;
constexpr auto OMPC_acq_rel = …;
constexpr auto OMPC_acquire = …;
constexpr auto OMPC_adjust_args = …;
constexpr auto OMPC_affinity = …;
constexpr auto OMPC_align = …;
constexpr auto OMPC_aligned = …;
constexpr auto OMPC_allocate = …;
constexpr auto OMPC_allocator = …;
constexpr auto OMPC_append_args = …;
constexpr auto OMPC_at = …;
constexpr auto OMPC_atomic_default_mem_order = …;
constexpr auto OMPC_bind = …;
constexpr auto OMPC_cancellation_construct_type = …;
constexpr auto OMPC_capture = …;
constexpr auto OMPC_collapse = …;
constexpr auto OMPC_compare = …;
constexpr auto OMPC_contains = …;
constexpr auto OMPC_copyprivate = …;
constexpr auto OMPC_copyin = …;
constexpr auto OMPC_default = …;
constexpr auto OMPC_defaultmap = …;
constexpr auto OMPC_depend = …;
constexpr auto OMPC_depobj = …;
constexpr auto OMPC_destroy = …;
constexpr auto OMPC_detach = …;
constexpr auto OMPC_device = …;
constexpr auto OMPC_device_type = …;
constexpr auto OMPC_dist_schedule = …;
constexpr auto OMPC_doacross = …;
constexpr auto OMPC_dynamic_allocators = …;
constexpr auto OMPC_enter = …;
constexpr auto OMPC_exclusive = …;
constexpr auto OMPC_fail = …;
constexpr auto OMPC_filter = …;
constexpr auto OMPC_final = …;
constexpr auto OMPC_firstprivate = …;
constexpr auto OMPC_flush = …;
constexpr auto OMPC_from = …;
constexpr auto OMPC_full = …;
constexpr auto OMPC_grainsize = …;
constexpr auto OMPC_has_device_addr = …;
constexpr auto OMPC_hint = …;
constexpr auto OMPC_holds = …;
constexpr auto OMPC_if = …;
constexpr auto OMPC_in_reduction = …;
constexpr auto OMPC_inbranch = …;
constexpr auto OMPC_inclusive = …;
constexpr auto OMPC_indirect = …;
constexpr auto OMPC_init = …;
constexpr auto OMPC_is_device_ptr = …;
constexpr auto OMPC_lastprivate = …;
constexpr auto OMPC_linear = …;
constexpr auto OMPC_link = …;
constexpr auto OMPC_map = …;
constexpr auto OMPC_match = …;
constexpr auto OMPC_memory_order = …;
constexpr auto OMPC_mergeable = …;
constexpr auto OMPC_message = …;
constexpr auto OMPC_nogroup = …;
constexpr auto OMPC_no_openmp = …;
constexpr auto OMPC_no_openmp_routines = …;
constexpr auto OMPC_no_parallelism = …;
constexpr auto OMPC_nowait = …;
constexpr auto OMPC_nocontext = …;
constexpr auto OMPC_nontemporal = …;
constexpr auto OMPC_notinbranch = …;
constexpr auto OMPC_novariants = …;
constexpr auto OMPC_num_tasks = …;
constexpr auto OMPC_num_teams = …;
constexpr auto OMPC_num_threads = …;
constexpr auto OMPC_ompx_attribute = …;
constexpr auto OMPC_ompx_bare = …;
constexpr auto OMPC_ompx_dyn_cgroup_mem = …;
constexpr auto OMPC_order = …;
constexpr auto OMPC_ordered = …;
constexpr auto OMPC_partial = …;
constexpr auto OMPC_priority = …;
constexpr auto OMPC_private = …;
constexpr auto OMPC_proc_bind = …;
constexpr auto OMPC_read = …;
constexpr auto OMPC_reduction = …;
constexpr auto OMPC_relaxed = …;
constexpr auto OMPC_release = …;
constexpr auto OMPC_reverse_offload = …;
constexpr auto OMPC_safelen = …;
constexpr auto OMPC_schedule = …;
constexpr auto OMPC_seq_cst = …;
constexpr auto OMPC_severity = …;
constexpr auto OMPC_shared = …;
constexpr auto OMPC_simd = …;
constexpr auto OMPC_simdlen = …;
constexpr auto OMPC_sizes = …;
constexpr auto OMPC_task_reduction = …;
constexpr auto OMPC_thread_limit = …;
constexpr auto OMPC_threadprivate = …;
constexpr auto OMPC_threads = …;
constexpr auto OMPC_to = …;
constexpr auto OMPC_unified_address = …;
constexpr auto OMPC_unified_shared_memory = …;
constexpr auto OMPC_uniform = …;
constexpr auto OMPC_unknown = …;
constexpr auto OMPC_untied = …;
constexpr auto OMPC_update = …;
constexpr auto OMPC_use = …;
constexpr auto OMPC_use_device_addr = …;
constexpr auto OMPC_use_device_ptr = …;
constexpr auto OMPC_uses_allocators = …;
constexpr auto OMPC_weak = …;
constexpr auto OMPC_when = …;
constexpr auto OMPC_write = …;
enum class CancellationConstructType { … };
constexpr auto OMP_CANCELLATION_CONSTRUCT_Parallel = …;
constexpr auto OMP_CANCELLATION_CONSTRUCT_Loop = …;
constexpr auto OMP_CANCELLATION_CONSTRUCT_Sections = …;
constexpr auto OMP_CANCELLATION_CONSTRUCT_Taskgroup = …;
constexpr auto OMP_CANCELLATION_CONSTRUCT_None = …;
enum class GrainsizeType { … };
constexpr auto OMP_GRAINSIZE_Strict = …;
constexpr auto OMP_GRAINSIZE_Unknown = …;
enum class MemoryOrderKind { … };
constexpr auto OMP_MEMORY_ORDER_SeqCst = …;
constexpr auto OMP_MEMORY_ORDER_AcqRel = …;
constexpr auto OMP_MEMORY_ORDER_Acquire = …;
constexpr auto OMP_MEMORY_ORDER_Release = …;
constexpr auto OMP_MEMORY_ORDER_Relaxed = …;
constexpr auto OMP_MEMORY_ORDER_Default = …;
enum class NumTasksType { … };
constexpr auto OMP_NUMTASKS_Strict = …;
constexpr auto OMP_NUMTASKS_Unknown = …;
enum class OrderKind { … };
constexpr auto OMP_ORDER_unknown = …;
constexpr auto OMP_ORDER_concurrent = …;
enum class ProcBindKind { … };
constexpr auto OMP_PROC_BIND_primary = …;
constexpr auto OMP_PROC_BIND_master = …;
constexpr auto OMP_PROC_BIND_close = …;
constexpr auto OMP_PROC_BIND_spread = …;
constexpr auto OMP_PROC_BIND_default = …;
constexpr auto OMP_PROC_BIND_unknown = …;
enum class ScheduleKind { … };
constexpr auto OMP_SCHEDULE_Static = …;
constexpr auto OMP_SCHEDULE_Dynamic = …;
constexpr auto OMP_SCHEDULE_Guided = …;
constexpr auto OMP_SCHEDULE_Auto = …;
constexpr auto OMP_SCHEDULE_Runtime = …;
constexpr auto OMP_SCHEDULE_Default = …;
LLVM_ABI Directive getOpenMPDirectiveKind(llvm::StringRef Str);
LLVM_ABI llvm::StringRef getOpenMPDirectiveName(Directive D);
LLVM_ABI Clause getOpenMPClauseKind(llvm::StringRef Str);
LLVM_ABI llvm::StringRef getOpenMPClauseName(Clause C);
LLVM_ABI bool isAllowedClauseForDirective(Directive D, Clause C, unsigned Version);
constexpr std::size_t getMaxLeafCount() { … }
LLVM_ABI Association getDirectiveAssociation(Directive D);
LLVM_ABI Category getDirectiveCategory(Directive D);
LLVM_ABI CancellationConstructType getCancellationConstructType(StringRef);
LLVM_ABI llvm::StringRef getOpenMPCancellationConstructTypeName(CancellationConstructType);
LLVM_ABI GrainsizeType getGrainsizeType(StringRef);
LLVM_ABI llvm::StringRef getOpenMPGrainsizeTypeName(GrainsizeType);
LLVM_ABI MemoryOrderKind getMemoryOrderKind(StringRef);
LLVM_ABI llvm::StringRef getOpenMPMemoryOrderKindName(MemoryOrderKind);
LLVM_ABI NumTasksType getNumTasksType(StringRef);
LLVM_ABI llvm::StringRef getOpenMPNumTasksTypeName(NumTasksType);
LLVM_ABI OrderKind getOrderKind(StringRef);
LLVM_ABI llvm::StringRef getOpenMPOrderKindName(OrderKind);
LLVM_ABI ProcBindKind getProcBindKind(StringRef);
LLVM_ABI llvm::StringRef getOpenMPProcBindKindName(ProcBindKind);
LLVM_ABI ScheduleKind getScheduleKind(StringRef);
LLVM_ABI llvm::StringRef getOpenMPScheduleKindName(ScheduleKind);
}
}
#endif