Lines Matching refs:OpenMP
1 //===----- CGOpenMPRuntime.cpp - Interface to OpenMP Runtimes -------------===//
9 // This provides a class for OpenMP runtime code generation.
48 /// Base class for handling code generation inside OpenMP regions.
51 /// Kinds of OpenMP regions used in codegen.
79 /// inside OpenMP construct.
110 /// API for captured statement code generation in OpenMP constructs.
120 assert(ThreadIDVar != nullptr && "No ThreadID in OpenMP region.");
124 /// inside OpenMP construct.
137 /// A variable or parameter storing global thread id for OpenMP
143 /// API for captured statement code generation in OpenMP constructs.
201 assert(ThreadIDVar != nullptr && "No ThreadID in OpenMP region.");
205 /// inside OpenMP construct.
225 /// A variable or parameter storing global thread id for OpenMP
232 /// API for inlined captured statement code generation in OpenMP
247 llvm_unreachable("No context value for inlined OpenMP region");
255 llvm_unreachable("No context value for inlined OpenMP region");
274 /// inside OpenMP construct.
285 llvm_unreachable("No LValue for inlined OpenMP construct");
292 llvm_unreachable("No helper name for inlined OpenMP construct");
310 /// CodeGen info about outer OpenMP region.
315 /// API for captured statement code generation in OpenMP target
347 /// API for generation of expressions captured in a innermost OpenMP
390 /// inside OpenMP construct.
407 /// RAII for emitting code of OpenMP constructs.
452 /// from https://github.com/llvm/llvm-project/blob/main/openmp/runtime/src/kmp.h
507 /// https://github.com/llvm/llvm-project/blob/main/openmp/runtime/src/kmp.h
571 /// Support for OpenMP 4.5 monotonic and nonmonotonic schedule modifiers.
578 /// A basic class for pre|post-action for advanced codegen sequence for OpenMP
1045 // 1.2.2 OpenMP Language Terminology
1205 // Temporary RAII solution to perform a push/pop stack event on the OpenMP IR
1749 // Call kmp_int32 __kmpc_global_thread_num(&loc) to init OpenMP runtime
2008 if (CGM.getLangOpts().OpenMP && CGM.getLangOpts().OpenMPUseTLS &&
2191 /// Common pre(post)-action for different OpenMP constructs.
2614 /// Map the OpenMP loop schedule to the runtime enumeration.
2636 /// Map the OpenMP distribute schedule to the runtime enumeration.
2710 // OpenMP 5.0, 2.9.2 Worksharing-Loop Construct, Desription.
2716 if (CGM.getLangOpts().OpenMP >= 50 && Modifier == 0) {
4056 /// Loop generator for OpenMP iterator expression.
4292 // https://github.com/llvm/llvm-project/blob/main/openmp/runtime/src/kmp.h,
8159 // OpenMP 5.0, 2.1.5 Array Sections, Description.
9827 // [OpenMP 5.0], 1.2.6. map-type decay.
10472 llvm_unreachable("Unknown target directive for OpenMP device codegen.");
11253 // If OpenMP clause "simdlen" is used, the VLEN is the value of the argument
11483 /// their OpenMP classification. The mangling function is defined in
12077 assert(CGM.getLangOpts().OpenMP && "Not in OpenMP mode.");
12125 assert(CGM.getLangOpts().OpenMP && "Not in OpenMP mode.");
12214 Action((CGM.getLangOpts().OpenMP >= 50 &&
12222 assert(CGM.getLangOpts().OpenMP && "Not in OpenMP mode.");
12223 if (CGM.getLangOpts().OpenMP < 50 || Action == ActionToDo::DoNotPush)
12246 assert(CGM.getLangOpts().OpenMP && "Not in OpenMP mode.");
12247 if (CGM.getLangOpts().OpenMP < 50)
12269 if (CGM.getLangOpts().OpenMP < 50)
12479 if (CGF.getLangOpts().OpenMP < 50 || LastprivateConditionalStack.empty())
12523 if (CGF.getLangOpts().OpenMP < 50 || LastprivateConditionalStack.empty())
12573 if (CGF.getLangOpts().OpenMP < 50)