Changeset View
Changeset View
Standalone View
Standalone View
clang/lib/CodeGen/CGOpenMPRuntimeGPU.h
Show First 20 Lines • Show All 251 Lines • ▼ Show 20 Lines | public: | ||||
/// variables captured in a record which address is stored in \a | /// variables captured in a record which address is stored in \a | ||||
/// CapturedStruct. | /// CapturedStruct. | ||||
/// \param OutlinedFn Outlined function to be run in parallel threads. Type of | /// \param OutlinedFn Outlined function to be run in parallel threads. Type of | ||||
/// this function is void(*)(kmp_int32 *, kmp_int32, struct context_vars*). | /// this function is void(*)(kmp_int32 *, kmp_int32, struct context_vars*). | ||||
/// \param CapturedVars A pointer to the record with the references to | /// \param CapturedVars A pointer to the record with the references to | ||||
/// variables used in \a OutlinedFn function. | /// variables used in \a OutlinedFn function. | ||||
/// \param IfCond Condition in the associated 'if' clause, if it was | /// \param IfCond Condition in the associated 'if' clause, if it was | ||||
/// specified, nullptr otherwise. | /// specified, nullptr otherwise. | ||||
/// \param NumThreads The value corresponding to the num_threads clause, if | |||||
/// any, | |||||
/// or nullptr. | |||||
void emitParallelCall(CodeGenFunction &CGF, SourceLocation Loc, | void emitParallelCall(CodeGenFunction &CGF, SourceLocation Loc, | ||||
llvm::Function *OutlinedFn, | llvm::Function *OutlinedFn, | ||||
ArrayRef<llvm::Value *> CapturedVars, | ArrayRef<llvm::Value *> CapturedVars, | ||||
const Expr *IfCond) override; | const Expr *IfCond, llvm::Value *NumThreads) override; | ||||
/// Emit an implicit/explicit barrier for OpenMP threads. | /// Emit an implicit/explicit barrier for OpenMP threads. | ||||
/// \param Kind Directive for which this implicit barrier call must be | /// \param Kind Directive for which this implicit barrier call must be | ||||
/// generated. Must be OMPD_barrier for explicit barrier generation. | /// generated. Must be OMPD_barrier for explicit barrier generation. | ||||
/// \param EmitChecks true if need to emit checks for cancellation barriers. | /// \param EmitChecks true if need to emit checks for cancellation barriers. | ||||
/// \param ForceSimpleCall true simple barrier call must be emitted, false if | /// \param ForceSimpleCall true simple barrier call must be emitted, false if | ||||
/// runtime class decides which one to emit (simple or with cancellation | /// runtime class decides which one to emit (simple or with cancellation | ||||
/// checks). | /// checks). | ||||
▲ Show 20 Lines • Show All 180 Lines • Show Last 20 Lines |