Lines Matching refs:CodeGenFunction
47 class OMPLexicalScope : public CodeGenFunction::LexicalScope {
48 void emitPreInitStmt(CodeGenFunction &CGF, const OMPExecutableDirective &S) { in emitPreInitStmt()
57 CodeGenFunction::AutoVarEmission Emission = in emitPreInitStmt()
66 CodeGenFunction::OMPPrivateScope InlinedShareds;
68 static bool isCapturedVar(CodeGenFunction &CGF, const VarDecl *VD) { in isCapturedVar()
77 CodeGenFunction &CGF, const OMPExecutableDirective &S, in OMPLexicalScope()
80 : CodeGenFunction::LexicalScope(CGF, S.getSourceRange()), in OMPLexicalScope()
117 OMPParallelScope(CodeGenFunction &CGF, const OMPExecutableDirective &S) in OMPParallelScope()
132 OMPTeamsScope(CodeGenFunction &CGF, const OMPExecutableDirective &S) in OMPTeamsScope()
139 class OMPLoopScope : public CodeGenFunction::RunCleanupsScope {
140 void emitPreInitStmt(CodeGenFunction &CGF, const OMPLoopBasedDirective &S) { in emitPreInitStmt()
142 CodeGenFunction::OMPMapVars PreCondVars; in emitPreInitStmt()
197 OMPLoopScope(CodeGenFunction &CGF, const OMPLoopBasedDirective &S) in OMPLoopScope()
198 : CodeGenFunction::RunCleanupsScope(CGF) { in OMPLoopScope()
203 class OMPSimdLexicalScope : public CodeGenFunction::LexicalScope {
204 CodeGenFunction::OMPPrivateScope InlinedShareds;
206 static bool isCapturedVar(CodeGenFunction &CGF, const VarDecl *VD) { in isCapturedVar()
214 OMPSimdLexicalScope(CodeGenFunction &CGF, const OMPExecutableDirective &S) in OMPSimdLexicalScope()
215 : CodeGenFunction::LexicalScope(CGF, S.getSourceRange()), in OMPSimdLexicalScope()
225 CodeGenFunction::AutoVarEmission Emission = in OMPSimdLexicalScope()
286 static void emitCommonOMPTargetDirective(CodeGenFunction &CGF,
290 LValue CodeGenFunction::EmitOMPSharedLValue(const Expr *E) { in EmitOMPSharedLValue()
306 llvm::Value *CodeGenFunction::getTypeSize(QualType Ty) { in getTypeSize()
326 void CodeGenFunction::GenerateOpenMPCapturedVars( in GenerateOpenMPCapturedVars()
372 static Address castValueFromUintptr(CodeGenFunction &CGF, SourceLocation Loc, in castValueFromUintptr()
426 CodeGenFunction &CGF, FunctionArgList &Args, in emitOutlinedFunctionPrologue()
610 CodeGenFunction::GenerateOpenMPCapturedStmtFunction(const CapturedStmt &S, in GenerateOpenMPCapturedStmtFunction()
631 CodeGenFunction::OMPPrivateScope LocalScope(*this); in GenerateOpenMPCapturedStmtFunction()
651 CodeGenFunction WrapperCGF(CGM, /*suppressNewContext=*/true); in GenerateOpenMPCapturedStmtFunction()
694 void CodeGenFunction::EmitOMPAggregateAssign( in EmitOMPAggregateAssign()
759 void CodeGenFunction::EmitOMPCopy(QualType OriginalType, Address DestAddr, in EmitOMPCopy()
778 CodeGenFunction::OMPPrivateScope Remap(*this); in EmitOMPCopy()
787 CodeGenFunction::OMPPrivateScope Remap(*this); in EmitOMPCopy()
796 bool CodeGenFunction::EmitOMPFirstprivateClause(const OMPExecutableDirective &D, in EmitOMPFirstprivateClause()
941 void CodeGenFunction::EmitOMPPrivateClause( in EmitOMPPrivateClause()
943 CodeGenFunction::OMPPrivateScope &PrivateScope) { in EmitOMPPrivateClause()
966 bool CodeGenFunction::EmitOMPCopyinClause(const OMPExecutableDirective &D) { in EmitOMPCopyinClause()
1038 bool CodeGenFunction::EmitOMPLastprivateClauseInit( in EmitOMPLastprivateClauseInit()
1101 void CodeGenFunction::EmitOMPLastprivateClauseFinal( in EmitOMPLastprivateClauseFinal()
1192 void CodeGenFunction::EmitOMPReductionClauseInit( in EmitOMPReductionClauseInit()
1194 CodeGenFunction::OMPPrivateScope &PrivateScope, bool ForInscan) { in EmitOMPReductionClauseInit()
1236 [&Emission](CodeGenFunction &CGF) { in EmitOMPReductionClauseInit()
1404 void CodeGenFunction::EmitOMPReductionClauseFinal( in EmitOMPReductionClauseFinal()
1445 CodeGenFunction &CGF, const OMPExecutableDirective &D, in emitPostUpdateForReductionClause()
1446 const llvm::function_ref<llvm::Value *(CodeGenFunction &)> CondGen) { in emitPostUpdateForReductionClause()
1473 typedef llvm::function_ref<void(CodeGenFunction &,
1480 checkForLastprivateConditionalUpdate(CodeGenFunction &CGF, in checkForLastprivateConditionalUpdate()
1537 CodeGenFunction &CGF, const OMPExecutableDirective &S, in emitCommonOMPParallelDirective()
1547 CodeGenFunction::RunCleanupsScope NumThreadsScope(CGF); in emitCommonOMPParallelDirective()
1554 CodeGenFunction::RunCleanupsScope ProcBindScope(CGF); in emitCommonOMPParallelDirective()
1590 static void emitEmptyBoundParameters(CodeGenFunction &, in emitEmptyBoundParameters() argument
1594 static void emitOMPCopyinClause(CodeGenFunction &CGF, in emitOMPCopyinClause()
1607 Address CodeGenFunction::OMPBuilderCBHelpers::getAddressOfLocalVariable( in getAddressOfLocalVariable()
1608 CodeGenFunction &CGF, const VarDecl *VD) { in getAddressOfLocalVariable()
1657 Address CodeGenFunction::OMPBuilderCBHelpers::getAddrOfThreadPrivate( in getAddrOfThreadPrivate()
1658 CodeGenFunction &CGF, const VarDecl *VD, Address VDAddr, in getAddrOfThreadPrivate()
1680 std::string CodeGenFunction::OMPBuilderCBHelpers::getNameWithSeparators( in getNameWithSeparators()
1692 void CodeGenFunction::OMPBuilderCBHelpers::EmitOMPInlinedRegionBody( in EmitOMPInlinedRegionBody()
1693 CodeGenFunction &CGF, const Stmt *RegionBodyStmt, InsertPointTy AllocaIP, in EmitOMPInlinedRegionBody()
1709 void CodeGenFunction::OMPBuilderCBHelpers::EmitOMPOutlinedRegionBody( in EmitOMPOutlinedRegionBody()
1710 CodeGenFunction &CGF, const Stmt *RegionBodyStmt, InsertPointTy AllocaIP, in EmitOMPOutlinedRegionBody()
1726 void CodeGenFunction::EmitOMPParallelDirective(const OMPParallelDirective &S) { in EmitOMPParallelDirective()
1775 CodeGenFunction::CGCapturedStmtRAII CapInfoRAII(*this, &CGSI); in EmitOMPParallelDirective()
1785 auto &&CodeGen = [&S](CodeGenFunction &CGF, PrePostActionTy &Action) { in EmitOMPParallelDirective()
1802 [](CodeGenFunction &) { return nullptr; }); in EmitOMPParallelDirective() argument
1808 void CodeGenFunction::EmitOMPMetaDirective(const OMPMetaDirective &S) { in EmitOMPMetaDirective()
1816 CodeGenFunction::CGCapturedStmtInfo *CGSI = nullptr;
1817 CodeGenFunction::CGCapturedStmtRAII *CapInfoRAII = nullptr;
1825 OMPTransformDirectiveScopeRAII(CodeGenFunction &CGF, const Stmt *S) { in OMPTransformDirectiveScopeRAII()
1828 CGSI = new CodeGenFunction::CGCapturedStmtInfo(CR_OpenMP); in OMPTransformDirectiveScopeRAII()
1829 CapInfoRAII = new CodeGenFunction::CGCapturedStmtRAII(CGF, CGSI); in OMPTransformDirectiveScopeRAII()
1842 static void emitBody(CodeGenFunction &CGF, const Stmt *S, const Stmt *NextLoop, in emitBody()
1852 CodeGenFunction::LexicalScope Scope(CGF, S->getSourceRange()); in emitBody()
1881 void CodeGenFunction::EmitOMPLoopBody(const OMPLoopDirective &D, in EmitOMPLoopBody()
1953 static EmittedClosureTy emitCapturedStmtFunc(CodeGenFunction &ParentCGF, in emitCapturedStmtFunc()
1956 CodeGenFunction CGF(ParentCGF.CGM, /*suppressNewContext=*/true); in emitCapturedStmtFunc()
1957 std::unique_ptr<CodeGenFunction::CGCapturedStmtInfo> CSI = in emitCapturedStmtFunc()
1958 std::make_unique<CodeGenFunction::CGCapturedStmtInfo>(*S); in emitCapturedStmtFunc()
1959 CodeGenFunction::CGCapturedStmtRAII CapInfoRAII(CGF, CSI.get()); in emitCapturedStmtFunc()
1967 emitCapturedStmtCall(CodeGenFunction &ParentCGF, EmittedClosureTy Cap, in emitCapturedStmtCall()
1979 CodeGenFunction::EmitOMPCollapsedCanonicalLoopNest(const Stmt *S, int Depth) { in EmitOMPCollapsedCanonicalLoopNest()
2005 void CodeGenFunction::EmitOMPCanonicalLoop(const OMPCanonicalLoop *S) { in EmitOMPCanonicalLoop()
2080 void CodeGenFunction::EmitOMPInnerLoop( in EmitOMPInnerLoop()
2083 const llvm::function_ref<void(CodeGenFunction &)> BodyGen, in EmitOMPInnerLoop()
2084 const llvm::function_ref<void(CodeGenFunction &)> PostIncGen) { in EmitOMPInnerLoop()
2141 bool CodeGenFunction::EmitOMPLinearClauseInit(const OMPLoopDirective &D) { in EmitOMPLinearClauseInit()
2179 void CodeGenFunction::EmitOMPLinearClauseFinal( in EmitOMPLinearClauseFinal()
2181 const llvm::function_ref<llvm::Value *(CodeGenFunction &)> CondGen) { in EmitOMPLinearClauseFinal()
2204 CodeGenFunction::OMPPrivateScope VarScope(*this); in EmitOMPLinearClauseFinal()
2217 static void emitAlignedClause(CodeGenFunction &CGF, in emitAlignedClause()
2252 void CodeGenFunction::EmitOMPPrivateLoopCounters( in EmitOMPPrivateLoopCounters()
2253 const OMPLoopDirective &S, CodeGenFunction::OMPPrivateScope &LoopScope) { in EmitOMPPrivateLoopCounters()
2294 static void emitPreCond(CodeGenFunction &CGF, const OMPLoopDirective &S, in emitPreCond()
2300 CodeGenFunction::OMPPrivateScope PreCondScope(CGF); in emitPreCond()
2310 CodeGenFunction::OMPMapVars PreCondVars; in emitPreCond()
2332 void CodeGenFunction::EmitOMPLinearClause( in EmitOMPLinearClause()
2333 const OMPLoopDirective &D, CodeGenFunction::OMPPrivateScope &PrivateScope) { in EmitOMPLinearClause()
2366 static void emitSimdlenSafelenClause(CodeGenFunction &CGF, in emitSimdlenSafelenClause()
2391 void CodeGenFunction::EmitOMPSimdInit(const OMPLoopDirective &D) { in EmitOMPSimdInit()
2410 void CodeGenFunction::EmitOMPSimdFinal( in EmitOMPSimdFinal()
2412 const llvm::function_ref<llvm::Value *(CodeGenFunction &)> CondGen) { in EmitOMPSimdFinal()
2456 static void emitOMPLoopBodyWithStopPoint(CodeGenFunction &CGF, in emitOMPLoopBodyWithStopPoint()
2458 CodeGenFunction::JumpDest LoopExit) { in emitOMPLoopBodyWithStopPoint()
2464 static LValue EmitOMPHelperVar(CodeGenFunction &CGF, in EmitOMPHelperVar()
2471 static void emitCommonSimdLoop(CodeGenFunction &CGF, const OMPLoopDirective &S, in emitCommonSimdLoop()
2474 auto &&ThenGen = [&S, &SimdInitGen, &BodyCodeGen](CodeGenFunction &CGF, in emitCommonSimdLoop()
2477 CodeGenFunction::OMPLocalDeclMapRAII Scope(CGF); in emitCommonSimdLoop()
2482 auto &&ElseGen = [&BodyCodeGen](CodeGenFunction &CGF, PrePostActionTy &) { in emitCommonSimdLoop()
2483 CodeGenFunction::OMPLocalDeclMapRAII Scope(CGF); in emitCommonSimdLoop()
2507 static void emitOMPSimdRegion(CodeGenFunction &CGF, const OMPLoopDirective &S, in emitOMPSimdRegion()
2560 CodeGenFunction::OMPPrivateScope LoopScope(CGF); in emitOMPSimdRegion()
2574 [&S](CodeGenFunction &CGF, PrePostActionTy &) { in emitOMPSimdRegion()
2577 [&S, &LoopScope](CodeGenFunction &CGF, PrePostActionTy &) { in emitOMPSimdRegion()
2580 [&S](CodeGenFunction &CGF) { in emitOMPSimdRegion()
2582 CodeGenFunction::JumpDest()); in emitOMPSimdRegion()
2584 [](CodeGenFunction &) {}); in emitOMPSimdRegion() argument
2586 CGF.EmitOMPSimdFinal(S, [](CodeGenFunction &) { return nullptr; }); in emitOMPSimdRegion() argument
2592 [](CodeGenFunction &) { return nullptr; }); in emitOMPSimdRegion() argument
2594 CGF.EmitOMPLinearClauseFinal(S, [](CodeGenFunction &) { return nullptr; }); in emitOMPSimdRegion() argument
2635 GetAlignedMapping(const OMPSimdDirective &S, CodeGenFunction &CGF) { in GetAlignedMapping()
2665 void CodeGenFunction::EmitOMPSimdDirective(const OMPSimdDirective &S) { in EmitOMPSimdDirective()
2669 auto &&CodeGenIRBuilder = [this, &S, UseOMPIRBuilder](CodeGenFunction &CGF, in EmitOMPSimdDirective()
2724 auto &&CodeGen = [&S](CodeGenFunction &CGF, PrePostActionTy &Action) { in EmitOMPSimdDirective()
2737 void CodeGenFunction::EmitOMPTileDirective(const OMPTileDirective &S) { in EmitOMPTileDirective()
2743 void CodeGenFunction::EmitOMPUnrollDirective(const OMPUnrollDirective &S) { in EmitOMPUnrollDirective()
2805 void CodeGenFunction::EmitOMPOuterLoop( in EmitOMPOuterLoop()
2807 CodeGenFunction::OMPPrivateScope &LoopScope, in EmitOMPOuterLoop()
2808 const CodeGenFunction::OMPLoopArguments &LoopArgs, in EmitOMPOuterLoop()
2809 const CodeGenFunction::CodeGenLoopTy &CodeGenLoop, in EmitOMPOuterLoop()
2810 const CodeGenFunction::CodeGenOrderedTy &CodeGenOrdered) { in EmitOMPOuterLoop()
2868 [&S, IsMonotonic](CodeGenFunction &CGF, PrePostActionTy &) { in EmitOMPOuterLoop()
2881 &LoopScope](CodeGenFunction &CGF, PrePostActionTy &) { in EmitOMPOuterLoop()
2890 [&S, LoopExit, &CodeGenLoop](CodeGenFunction &CGF) { in EmitOMPOuterLoop()
2893 [IVSize, IVSigned, Loc, &CodeGenOrdered](CodeGenFunction &CGF) { in EmitOMPOuterLoop()
2913 auto &&CodeGen = [DynamicOrOrdered, &S](CodeGenFunction &CGF) { in EmitOMPOuterLoop()
2921 void CodeGenFunction::EmitOMPForOuterLoop( in EmitOMPForOuterLoop()
3006 auto &&CodeGenOrdered = [Ordered](CodeGenFunction &CGF, SourceLocation Loc, in EmitOMPForOuterLoop()
3026 static void emitEmptyOrdered(CodeGenFunction &, SourceLocation Loc, in emitEmptyOrdered() argument
3029 void CodeGenFunction::EmitOMPDistributeOuterLoop( in EmitOMPDistributeOuterLoop()
3090 emitDistributeParallelForInnerBounds(CodeGenFunction &CGF, in emitDistributeParallelForInnerBounds()
3133 emitDistributeParallelForDispatchBounds(CodeGenFunction &CGF, in emitDistributeParallelForDispatchBounds()
3151 CodeGenFunction &CGF, const OMPExecutableDirective &S, in emitDistributeParallelForDistributeInnerBoundParams()
3170 emitInnerParallelForWhenCombined(CodeGenFunction &CGF, in emitInnerParallelForWhenCombined()
3172 CodeGenFunction::JumpDest LoopExit) { in emitInnerParallelForWhenCombined()
3173 auto &&CGInlinedWorksharingLoop = [&S](CodeGenFunction &CGF, in emitInnerParallelForWhenCombined()
3186 CodeGenFunction::OMPCancelStackRAII CancelRegion(CGF, S.getDirectiveKind(), in emitInnerParallelForWhenCombined()
3200 void CodeGenFunction::EmitOMPDistributeParallelForDirective( in EmitOMPDistributeParallelForDirective()
3202 auto &&CodeGen = [&S](CodeGenFunction &CGF, PrePostActionTy &) { in EmitOMPDistributeParallelForDirective()
3210 void CodeGenFunction::EmitOMPDistributeParallelForSimdDirective( in EmitOMPDistributeParallelForSimdDirective()
3212 auto &&CodeGen = [&S](CodeGenFunction &CGF, PrePostActionTy &) { in EmitOMPDistributeParallelForSimdDirective()
3220 void CodeGenFunction::EmitOMPDistributeSimdDirective( in EmitOMPDistributeSimdDirective()
3222 auto &&CodeGen = [&S](CodeGenFunction &CGF, PrePostActionTy &) { in EmitOMPDistributeSimdDirective()
3229 void CodeGenFunction::EmitOMPTargetSimdDeviceFunction( in EmitOMPTargetSimdDeviceFunction()
3232 auto &&CodeGen = [&S](CodeGenFunction &CGF, PrePostActionTy &Action) { in EmitOMPTargetSimdDeviceFunction()
3243 void CodeGenFunction::EmitOMPTargetSimdDirective( in EmitOMPTargetSimdDirective()
3245 auto &&CodeGen = [&S](CodeGenFunction &CGF, PrePostActionTy &Action) { in EmitOMPTargetSimdDirective()
3263 bool CodeGenFunction::EmitOMPWorksharingLoop( in EmitOMPWorksharingLoop()
3400 [&S](CodeGenFunction &CGF, PrePostActionTy &) { in EmitOMPWorksharingLoop()
3410 &LoopScope](CodeGenFunction &CGF, PrePostActionTy &) { in EmitOMPWorksharingLoop()
3446 [&S, LoopExit](CodeGenFunction &CGF) { in EmitOMPWorksharingLoop()
3449 [](CodeGenFunction &) {}); in EmitOMPWorksharingLoop() argument
3453 auto &&CodeGen = [&S](CodeGenFunction &CGF) { in EmitOMPWorksharingLoop()
3468 EmitOMPSimdFinal(S, [IL, &S](CodeGenFunction &CGF) { in EmitOMPWorksharingLoop()
3479 *this, S, [IL, &S](CodeGenFunction &CGF) { in EmitOMPWorksharingLoop()
3489 EmitOMPLinearClauseFinal(S, [IL, &S](CodeGenFunction &CGF) { in EmitOMPWorksharingLoop()
3508 emitForLoopBounds(CodeGenFunction &CGF, const OMPExecutableDirective &S) { in emitForLoopBounds()
3522 emitDispatchForLoopBounds(CodeGenFunction &CGF, const OMPExecutableDirective &S, in emitDispatchForLoopBounds()
3540 CodeGenFunction &CGF, const OMPLoopDirective &S, in emitScanBasedDirectiveDecls()
3541 llvm::function_ref<llvm::Value *(CodeGenFunction &)> NumIteratorsGen) { in emitScanBasedDirectiveDecls()
3572 CodeGenFunction::OpaqueValueMapping DimMapping( in emitScanBasedDirectiveDecls()
3592 CodeGenFunction &CGF, const OMPLoopDirective &S, in emitScanBasedDirectiveFinals()
3593 llvm::function_ref<llvm::Value *(CodeGenFunction &)> NumIteratorsGen) { in emitScanBasedDirectiveFinals()
3622 CodeGenFunction::OpaqueValueMapping IdxMapping( in emitScanBasedDirectiveFinals()
3657 CodeGenFunction &CGF, const OMPLoopDirective &S, in emitScanBasedDirective()
3658 llvm::function_ref<llvm::Value *(CodeGenFunction &)> NumIteratorsGen, in emitScanBasedDirective()
3659 llvm::function_ref<void(CodeGenFunction &)> FirstGen, in emitScanBasedDirective()
3660 llvm::function_ref<void(CodeGenFunction &)> SecondGen) { in emitScanBasedDirective()
3678 CodeGenFunction::ParentLoopDirectiveForScanRegion ScanRegion(CGF, S); in emitScanBasedDirective()
3687 CodeGenFunction::OMPLocalDeclMapRAII Scope(CGF); in emitScanBasedDirective()
3693 &Privates](CodeGenFunction &CGF, PrePostActionTy &Action) { in emitScanBasedDirective()
3730 CodeGenFunction::OMPPrivateScope PrivScope(CGF); in emitScanBasedDirective()
3738 CodeGenFunction::OpaqueValueMapping IdxMapping( in emitScanBasedDirective()
3749 CodeGenFunction::OpaqueValueMapping IdxMapping( in emitScanBasedDirective()
3797 static bool emitWorksharingDirective(CodeGenFunction &CGF, in emitWorksharingDirective()
3805 const auto &&NumIteratorsGen = [&S](CodeGenFunction &CGF) { in emitWorksharingDirective()
3806 CodeGenFunction::OMPLocalDeclMapRAII Scope(CGF); in emitWorksharingDirective()
3810 const auto &&FirstGen = [&S, HasCancel](CodeGenFunction &CGF) { in emitWorksharingDirective()
3811 CodeGenFunction::OMPCancelStackRAII CancelRegion( in emitWorksharingDirective()
3821 &HasLastprivates](CodeGenFunction &CGF) { in emitWorksharingDirective()
3822 CodeGenFunction::OMPCancelStackRAII CancelRegion( in emitWorksharingDirective()
3834 CodeGenFunction::OMPCancelStackRAII CancelRegion(CGF, S.getDirectiveKind(), in emitWorksharingDirective()
3892 void CodeGenFunction::EmitOMPForDirective(const OMPForDirective &S) { in EmitOMPForDirective()
3897 UseOMPIRBuilder](CodeGenFunction &CGF, PrePostActionTy &) { in EmitOMPForDirective()
3947 void CodeGenFunction::EmitOMPForSimdDirective(const OMPForSimdDirective &S) { in EmitOMPForSimdDirective()
3949 auto &&CodeGen = [&S, &HasLastprivates](CodeGenFunction &CGF, in EmitOMPForSimdDirective()
3967 static LValue createSectionLVal(CodeGenFunction &CGF, QualType Ty, in createSectionLVal()
3976 void CodeGenFunction::EmitSections(const OMPExecutableDirective &S) { in EmitSections()
3981 &HasLastprivates](CodeGenFunction &CGF, PrePostActionTy &) { in EmitSections()
4000 CodeGenFunction::OpaqueValueMapping OpaqueIV(CGF, &IVRefExpr, IV); in EmitSections()
4002 CodeGenFunction::OpaqueValueMapping OpaqueUB(CGF, &UBRefExpr, UB); in EmitSections()
4011 auto &&BodyGen = [CapturedStmt, CS, &S, &IV](CodeGenFunction &CGF) { in EmitSections()
4047 CodeGenFunction::OMPPrivateScope LoopScope(CGF); in EmitSections()
4081 [](CodeGenFunction &) {}); in EmitSections() argument
4083 auto &&CodeGen = [&S](CodeGenFunction &CGF) { in EmitSections()
4090 emitPostUpdateForReductionClause(CGF, S, [IL, &S](CodeGenFunction &CGF) { in EmitSections()
4122 void CodeGenFunction::EmitOMPSectionsDirective(const OMPSectionsDirective &S) { in EmitOMPSectionsDirective()
4168 CodeGenFunction::CGCapturedStmtRAII CapInfoRAII(*this, &CGSI); in EmitOMPSectionsDirective()
4191 void CodeGenFunction::EmitOMPSectionDirective(const OMPSectionDirective &S) { in EmitOMPSectionDirective()
4218 void CodeGenFunction::EmitOMPSingleDirective(const OMPSingleDirective &S) { in EmitOMPSingleDirective()
4236 auto &&CodeGen = [&S](CodeGenFunction &CGF, PrePostActionTy &Action) { in EmitOMPSingleDirective()
4263 static void emitMaster(CodeGenFunction &CGF, const OMPExecutableDirective &S) { in emitMaster()
4264 auto &&CodeGen = [&S](CodeGenFunction &CGF, PrePostActionTy &Action) { in emitMaster()
4271 void CodeGenFunction::EmitOMPMasterDirective(const OMPMasterDirective &S) { in EmitOMPMasterDirective()
4299 static void emitMasked(CodeGenFunction &CGF, const OMPExecutableDirective &S) { in emitMasked()
4300 auto &&CodeGen = [&S](CodeGenFunction &CGF, PrePostActionTy &Action) { in emitMasked()
4311 void CodeGenFunction::EmitOMPMaskedDirective(const OMPMaskedDirective &S) { in EmitOMPMaskedDirective()
4346 void CodeGenFunction::EmitOMPCriticalDirective(const OMPCriticalDirective &S) { in EmitOMPCriticalDirective()
4383 auto &&CodeGen = [&S](CodeGenFunction &CGF, PrePostActionTy &Action) { in EmitOMPCriticalDirective()
4397 void CodeGenFunction::EmitOMPParallelForDirective( in EmitOMPParallelForDirective()
4401 auto &&CodeGen = [&S](CodeGenFunction &CGF, PrePostActionTy &Action) { in EmitOMPParallelForDirective()
4407 const auto &&NumIteratorsGen = [&S](CodeGenFunction &CGF) { in EmitOMPParallelForDirective()
4408 CodeGenFunction::OMPLocalDeclMapRAII Scope(CGF); in EmitOMPParallelForDirective()
4410 CodeGenFunction::CGCapturedStmtRAII CapInfoRAII(CGF, &CGSI); in EmitOMPParallelForDirective()
4431 void CodeGenFunction::EmitOMPParallelForSimdDirective( in EmitOMPParallelForSimdDirective()
4435 auto &&CodeGen = [&S](CodeGenFunction &CGF, PrePostActionTy &Action) { in EmitOMPParallelForSimdDirective()
4441 const auto &&NumIteratorsGen = [&S](CodeGenFunction &CGF) { in EmitOMPParallelForSimdDirective()
4442 CodeGenFunction::OMPLocalDeclMapRAII Scope(CGF); in EmitOMPParallelForSimdDirective()
4444 CodeGenFunction::CGCapturedStmtRAII CapInfoRAII(CGF, &CGSI); in EmitOMPParallelForSimdDirective()
4465 void CodeGenFunction::EmitOMPParallelMasterDirective( in EmitOMPParallelMasterDirective()
4469 auto &&CodeGen = [&S](CodeGenFunction &CGF, PrePostActionTy &Action) { in EmitOMPParallelMasterDirective()
4486 [](CodeGenFunction &) { return nullptr; }); in EmitOMPParallelMasterDirective() argument
4492 void CodeGenFunction::EmitOMPParallelMaskedDirective( in EmitOMPParallelMaskedDirective()
4496 auto &&CodeGen = [&S](CodeGenFunction &CGF, PrePostActionTy &Action) { in EmitOMPParallelMaskedDirective()
4513 [](CodeGenFunction &) { return nullptr; }); in EmitOMPParallelMaskedDirective() argument
4519 void CodeGenFunction::EmitOMPParallelSectionsDirective( in EmitOMPParallelSectionsDirective()
4523 auto &&CodeGen = [&S](CodeGenFunction &CGF, PrePostActionTy &Action) { in EmitOMPParallelSectionsDirective()
4608 void CodeGenFunction::EmitOMPTaskBasedDirective( in EmitOMPTaskBasedDirective()
4712 CapturedRegion](CodeGenFunction &CGF, in EmitOMPTaskBasedDirective()
5013 void CodeGenFunction::EmitOMPTargetTaskBasedDirective( in EmitOMPTargetTaskBasedDirective()
5086 &InputInfo](CodeGenFunction &CGF, PrePostActionTy &Action) { in EmitOMPTargetTaskBasedDirective()
5160 void CodeGenFunction::processInReduction(const OMPExecutableDirective &S, in processInReduction()
5162 CodeGenFunction &CGF, in processInReduction()
5247 void CodeGenFunction::EmitOMPTaskDirective(const OMPTaskDirective &S) { in EmitOMPTaskDirective()
5264 auto &&BodyGen = [CS](CodeGenFunction &CGF, PrePostActionTy &) { in EmitOMPTaskDirective()
5268 IfCond](CodeGenFunction &CGF, llvm::Function *OutlinedFn, in EmitOMPTaskDirective()
5279 void CodeGenFunction::EmitOMPTaskyieldDirective( in EmitOMPTaskyieldDirective()
5284 void CodeGenFunction::EmitOMPErrorDirective(const OMPErrorDirective &S) { in EmitOMPErrorDirective()
5294 void CodeGenFunction::EmitOMPBarrierDirective(const OMPBarrierDirective &S) { in EmitOMPBarrierDirective()
5298 void CodeGenFunction::EmitOMPTaskwaitDirective(const OMPTaskwaitDirective &S) { in EmitOMPTaskwaitDirective()
5310 void CodeGenFunction::EmitOMPTaskgroupDirective( in EmitOMPTaskgroupDirective()
5324 CodeGenFunction::CGCapturedStmtInfo CapStmtInfo; in EmitOMPTaskgroupDirective()
5330 auto &&CodeGen = [&S](CodeGenFunction &CGF, PrePostActionTy &Action) { in EmitOMPTaskgroupDirective()
5358 void CodeGenFunction::EmitOMPFlushDirective(const OMPFlushDirective &S) { in EmitOMPFlushDirective()
5373 void CodeGenFunction::EmitOMPDepobjDirective(const OMPDepobjDirective &S) { in EmitOMPDepobjDirective()
5396 void CodeGenFunction::EmitOMPScanDirective(const OMPScanDirective &S) { in EmitOMPScanDirective()
5599 void CodeGenFunction::EmitOMPDistributeLoop(const OMPLoopDirective &S, in EmitOMPDistributeLoop()
5763 [&S](CodeGenFunction &CGF, PrePostActionTy &) { in EmitOMPDistributeLoop()
5768 StaticChunked](CodeGenFunction &CGF, PrePostActionTy &) { in EmitOMPDistributeLoop()
5771 [&S, LoopExit, &CodeGenLoop](CodeGenFunction &CGF) { in EmitOMPDistributeLoop()
5774 [&S, StaticChunked](CodeGenFunction &CGF) { in EmitOMPDistributeLoop()
5796 EmitOMPSimdFinal(S, [IL, &S](CodeGenFunction &CGF) { in EmitOMPDistributeLoop()
5807 *this, S, [IL, &S](CodeGenFunction &CGF) { in EmitOMPDistributeLoop()
5828 void CodeGenFunction::EmitOMPDistributeDirective( in EmitOMPDistributeDirective()
5830 auto &&CodeGen = [&S](CodeGenFunction &CGF, PrePostActionTy &) { in EmitOMPDistributeDirective()
5840 CodeGenFunction CGF(CGM, /*suppressNewContext=*/true); in emitOutlinedOrderedFunction()
5841 CodeGenFunction::CGCapturedStmtInfo CapStmtInfo; in emitOutlinedOrderedFunction()
5849 static void emitRestoreIP(CodeGenFunction &CGF, const T *C, in emitRestoreIP()
5872 void CodeGenFunction::EmitOMPOrderedDirective(const OMPOrderedDirective &S) { in EmitOMPOrderedDirective()
5942 auto &&CodeGen = [&S, C, this](CodeGenFunction &CGF, in EmitOMPOrderedDirective()
5961 static llvm::Value *convertToScalarValue(CodeGenFunction &CGF, RValue Val, in convertToScalarValue()
5973 static CodeGenFunction::ComplexPairTy
5974 convertToComplexValue(CodeGenFunction &CGF, RValue Val, QualType SrcType, in convertToComplexValue()
5978 CodeGenFunction::ComplexPairTy ComplexVal; in convertToComplexValue()
5985 ComplexVal = CodeGenFunction::ComplexPairTy( in convertToComplexValue()
6000 static void emitSimpleAtomicStore(CodeGenFunction &CGF, llvm::AtomicOrdering AO, in emitSimpleAtomicStore()
6008 static RValue emitSimpleAtomicLoad(CodeGenFunction &CGF, in emitSimpleAtomicLoad()
6018 void CodeGenFunction::emitOMPSimpleStore(LValue LVal, RValue RVal, in emitOMPSimpleStore()
6036 static void emitOMPAtomicReadExpr(CodeGenFunction &CGF, llvm::AtomicOrdering AO, in emitOMPAtomicReadExpr()
6067 static void emitOMPAtomicWriteExpr(CodeGenFunction &CGF, in emitOMPAtomicWriteExpr()
6094 static std::pair<bool, RValue> emitOMPAtomicRMW(CodeGenFunction &CGF, LValue X, in emitOMPAtomicRMW()
6213 std::pair<bool, RValue> CodeGenFunction::EmitOMPAtomicSimpleUpdateExpr( in EmitOMPAtomicSimpleUpdateExpr()
6237 static void emitOMPAtomicUpdateExpr(CodeGenFunction &CGF, in emitOMPAtomicUpdateExpr()
6258 CodeGenFunction::OpaqueValueMapping MapExpr(CGF, ERValExpr, ExprRValue); in emitOMPAtomicUpdateExpr()
6259 CodeGenFunction::OpaqueValueMapping MapX(CGF, XRValExpr, XRValue); in emitOMPAtomicUpdateExpr()
6285 static RValue convertToType(CodeGenFunction &CGF, RValue Value, in convertToType()
6302 static void emitOMPAtomicCaptureExpr(CodeGenFunction &CGF, in emitOMPAtomicCaptureExpr()
6333 CodeGenFunction::OpaqueValueMapping MapExpr(CGF, ERValExpr, ExprRValue); in emitOMPAtomicCaptureExpr()
6334 CodeGenFunction::OpaqueValueMapping MapX(CGF, XRValExpr, XRValue); in emitOMPAtomicCaptureExpr()
6350 CodeGenFunction::OpaqueValueMapping MapExpr(CGF, ERValExpr, ExprRValue); in emitOMPAtomicCaptureExpr()
6351 CodeGenFunction::OpaqueValueMapping MapX(CGF, XRValExpr, Res.second); in emitOMPAtomicCaptureExpr()
6410 CodeGenFunction &CGF, llvm::AtomicOrdering AO, llvm::AtomicOrdering FailAO, in emitOMPAtomicCompareExpr()
6490 static void emitOMPAtomicExpr(CodeGenFunction &CGF, OpenMPClauseKind Kind, in emitOMPAtomicExpr()
6522 void CodeGenFunction::EmitOMPAtomicDirective(const OMPAtomicDirective &S) { in EmitOMPAtomicDirective()
6602 static void emitCommonOMPTargetDirective(CodeGenFunction &CGF, in emitCommonOMPTargetDirective()
6612 CGF, OMPD_target, [&S](CodeGenFunction &CGF, PrePostActionTy &) { in emitCommonOMPTargetDirective()
6674 [IsOffloadEntry](CodeGenFunction &CGF, in emitCommonOMPTargetDirective()
6690 static void emitTargetRegion(CodeGenFunction &CGF, const OMPTargetDirective &S, in emitTargetRegion()
6693 CodeGenFunction::OMPPrivateScope PrivateScope(CGF); in emitTargetRegion()
6704 void CodeGenFunction::EmitOMPTargetDeviceFunction(CodeGenModule &CGM, in EmitOMPTargetDeviceFunction()
6707 auto &&CodeGen = [&S](CodeGenFunction &CGF, PrePostActionTy &Action) { in EmitOMPTargetDeviceFunction()
6718 void CodeGenFunction::EmitOMPTargetDirective(const OMPTargetDirective &S) { in EmitOMPTargetDirective()
6719 auto &&CodeGen = [&S](CodeGenFunction &CGF, PrePostActionTy &Action) { in EmitOMPTargetDirective()
6725 static void emitCommonOMPTeamsDirective(CodeGenFunction &CGF, in emitCommonOMPTeamsDirective()
6752 void CodeGenFunction::EmitOMPTeamsDirective(const OMPTeamsDirective &S) { in EmitOMPTeamsDirective()
6754 auto &&CodeGen = [&S](CodeGenFunction &CGF, PrePostActionTy &Action) { in EmitOMPTeamsDirective()
6766 [](CodeGenFunction &) { return nullptr; }); in EmitOMPTeamsDirective() argument
6769 static void emitTargetTeamsRegion(CodeGenFunction &CGF, PrePostActionTy &Action, in emitTargetTeamsRegion()
6774 auto &&CodeGen = [&S, CS](CodeGenFunction &CGF, PrePostActionTy &Action) { in emitTargetTeamsRegion()
6776 CodeGenFunction::OMPPrivateScope PrivateScope(CGF); in emitTargetTeamsRegion()
6788 [](CodeGenFunction &) { return nullptr; }); in emitTargetTeamsRegion() argument
6791 void CodeGenFunction::EmitOMPTargetTeamsDeviceFunction( in EmitOMPTargetTeamsDeviceFunction()
6794 auto &&CodeGen = [&S](CodeGenFunction &CGF, PrePostActionTy &Action) { in EmitOMPTargetTeamsDeviceFunction()
6805 void CodeGenFunction::EmitOMPTargetTeamsDirective( in EmitOMPTargetTeamsDirective()
6807 auto &&CodeGen = [&S](CodeGenFunction &CGF, PrePostActionTy &Action) { in EmitOMPTargetTeamsDirective()
6814 emitTargetTeamsDistributeRegion(CodeGenFunction &CGF, PrePostActionTy &Action, in emitTargetTeamsDistributeRegion()
6817 auto &&CodeGenDistribute = [&S](CodeGenFunction &CGF, PrePostActionTy &) { in emitTargetTeamsDistributeRegion()
6822 auto &&CodeGen = [&S, &CodeGenDistribute](CodeGenFunction &CGF, in emitTargetTeamsDistributeRegion()
6825 CodeGenFunction::OMPPrivateScope PrivateScope(CGF); in emitTargetTeamsDistributeRegion()
6834 [](CodeGenFunction &) { return nullptr; }); in emitTargetTeamsDistributeRegion() argument
6837 void CodeGenFunction::EmitOMPTargetTeamsDistributeDeviceFunction( in EmitOMPTargetTeamsDistributeDeviceFunction()
6840 auto &&CodeGen = [&S](CodeGenFunction &CGF, PrePostActionTy &Action) { in EmitOMPTargetTeamsDistributeDeviceFunction()
6851 void CodeGenFunction::EmitOMPTargetTeamsDistributeDirective( in EmitOMPTargetTeamsDistributeDirective()
6853 auto &&CodeGen = [&S](CodeGenFunction &CGF, PrePostActionTy &Action) { in EmitOMPTargetTeamsDistributeDirective()
6860 CodeGenFunction &CGF, PrePostActionTy &Action, in emitTargetTeamsDistributeSimdRegion()
6863 auto &&CodeGenDistribute = [&S](CodeGenFunction &CGF, PrePostActionTy &) { in emitTargetTeamsDistributeSimdRegion()
6868 auto &&CodeGen = [&S, &CodeGenDistribute](CodeGenFunction &CGF, in emitTargetTeamsDistributeSimdRegion()
6871 CodeGenFunction::OMPPrivateScope PrivateScope(CGF); in emitTargetTeamsDistributeSimdRegion()
6880 [](CodeGenFunction &) { return nullptr; }); in emitTargetTeamsDistributeSimdRegion() argument
6883 void CodeGenFunction::EmitOMPTargetTeamsDistributeSimdDeviceFunction( in EmitOMPTargetTeamsDistributeSimdDeviceFunction()
6886 auto &&CodeGen = [&S](CodeGenFunction &CGF, PrePostActionTy &Action) { in EmitOMPTargetTeamsDistributeSimdDeviceFunction()
6897 void CodeGenFunction::EmitOMPTargetTeamsDistributeSimdDirective( in EmitOMPTargetTeamsDistributeSimdDirective()
6899 auto &&CodeGen = [&S](CodeGenFunction &CGF, PrePostActionTy &Action) { in EmitOMPTargetTeamsDistributeSimdDirective()
6905 void CodeGenFunction::EmitOMPTeamsDistributeDirective( in EmitOMPTeamsDistributeDirective()
6908 auto &&CodeGenDistribute = [&S](CodeGenFunction &CGF, PrePostActionTy &) { in EmitOMPTeamsDistributeDirective()
6913 auto &&CodeGen = [&S, &CodeGenDistribute](CodeGenFunction &CGF, in EmitOMPTeamsDistributeDirective()
6925 [](CodeGenFunction &) { return nullptr; }); in EmitOMPTeamsDistributeDirective() argument
6928 void CodeGenFunction::EmitOMPTeamsDistributeSimdDirective( in EmitOMPTeamsDistributeSimdDirective()
6930 auto &&CodeGenDistribute = [&S](CodeGenFunction &CGF, PrePostActionTy &) { in EmitOMPTeamsDistributeSimdDirective()
6935 auto &&CodeGen = [&S, &CodeGenDistribute](CodeGenFunction &CGF, in EmitOMPTeamsDistributeSimdDirective()
6947 [](CodeGenFunction &) { return nullptr; }); in EmitOMPTeamsDistributeSimdDirective() argument
6950 void CodeGenFunction::EmitOMPTeamsDistributeParallelForDirective( in EmitOMPTeamsDistributeParallelForDirective()
6952 auto &&CodeGenDistribute = [&S](CodeGenFunction &CGF, PrePostActionTy &) { in EmitOMPTeamsDistributeParallelForDirective()
6958 auto &&CodeGen = [&S, &CodeGenDistribute](CodeGenFunction &CGF, in EmitOMPTeamsDistributeParallelForDirective()
6970 [](CodeGenFunction &) { return nullptr; }); in EmitOMPTeamsDistributeParallelForDirective() argument
6973 void CodeGenFunction::EmitOMPTeamsDistributeParallelForSimdDirective( in EmitOMPTeamsDistributeParallelForSimdDirective()
6975 auto &&CodeGenDistribute = [&S](CodeGenFunction &CGF, PrePostActionTy &) { in EmitOMPTeamsDistributeParallelForSimdDirective()
6981 auto &&CodeGen = [&S, &CodeGenDistribute](CodeGenFunction &CGF, in EmitOMPTeamsDistributeParallelForSimdDirective()
6994 [](CodeGenFunction &) { return nullptr; }); in EmitOMPTeamsDistributeParallelForSimdDirective() argument
6997 void CodeGenFunction::EmitOMPInteropDirective(const OMPInteropDirective &S) { in EmitOMPInteropDirective()
7052 CodeGenFunction &CGF, const OMPTargetTeamsDistributeParallelForDirective &S, in emitTargetTeamsDistributeParallelForRegion()
7055 auto &&CodeGenDistribute = [&S](CodeGenFunction &CGF, PrePostActionTy &) { in emitTargetTeamsDistributeParallelForRegion()
7061 auto &&CodeGenTeams = [&S, &CodeGenDistribute](CodeGenFunction &CGF, in emitTargetTeamsDistributeParallelForRegion()
7064 CodeGenFunction::OMPPrivateScope PrivateScope(CGF); in emitTargetTeamsDistributeParallelForRegion()
7075 [](CodeGenFunction &) { return nullptr; }); in emitTargetTeamsDistributeParallelForRegion() argument
7078 void CodeGenFunction::EmitOMPTargetTeamsDistributeParallelForDeviceFunction( in EmitOMPTargetTeamsDistributeParallelForDeviceFunction()
7083 auto &&CodeGen = [&S](CodeGenFunction &CGF, PrePostActionTy &Action) { in EmitOMPTargetTeamsDistributeParallelForDeviceFunction()
7094 void CodeGenFunction::EmitOMPTargetTeamsDistributeParallelForDirective( in EmitOMPTargetTeamsDistributeParallelForDirective()
7096 auto &&CodeGen = [&S](CodeGenFunction &CGF, PrePostActionTy &Action) { in EmitOMPTargetTeamsDistributeParallelForDirective()
7103 CodeGenFunction &CGF, in emitTargetTeamsDistributeParallelForSimdRegion()
7107 auto &&CodeGenDistribute = [&S](CodeGenFunction &CGF, PrePostActionTy &) { in emitTargetTeamsDistributeParallelForSimdRegion()
7113 auto &&CodeGenTeams = [&S, &CodeGenDistribute](CodeGenFunction &CGF, in emitTargetTeamsDistributeParallelForSimdRegion()
7116 CodeGenFunction::OMPPrivateScope PrivateScope(CGF); in emitTargetTeamsDistributeParallelForSimdRegion()
7127 [](CodeGenFunction &) { return nullptr; }); in emitTargetTeamsDistributeParallelForSimdRegion() argument
7130 void CodeGenFunction::EmitOMPTargetTeamsDistributeParallelForSimdDeviceFunction( in EmitOMPTargetTeamsDistributeParallelForSimdDeviceFunction()
7135 auto &&CodeGen = [&S](CodeGenFunction &CGF, PrePostActionTy &Action) { in EmitOMPTargetTeamsDistributeParallelForSimdDeviceFunction()
7146 void CodeGenFunction::EmitOMPTargetTeamsDistributeParallelForSimdDirective( in EmitOMPTargetTeamsDistributeParallelForSimdDirective()
7148 auto &&CodeGen = [&S](CodeGenFunction &CGF, PrePostActionTy &Action) { in EmitOMPTargetTeamsDistributeParallelForSimdDirective()
7154 void CodeGenFunction::EmitOMPCancellationPointDirective( in EmitOMPCancellationPointDirective()
7160 void CodeGenFunction::EmitOMPCancelDirective(const OMPCancelDirective &S) { in EmitOMPCancelDirective()
7189 CodeGenFunction::JumpDest
7190 CodeGenFunction::getOMPCancelDestination(OpenMPDirectiveKind Kind) { in getOMPCancelDestination()
7204 void CodeGenFunction::EmitOMPUseDevicePtrClause( in EmitOMPUseDevicePtrClause()
7255 void CodeGenFunction::EmitOMPUseDeviceAddrClause( in EmitOMPUseDeviceAddrClause()
7304 void CodeGenFunction::EmitOMPTargetDataDirective( in EmitOMPTargetDataDirective()
7319 void Enter(CodeGenFunction &CGF) override { in EmitOMPTargetDataDirective()
7325 auto &&CodeGen = [&](CodeGenFunction &CGF, PrePostActionTy &Action) { in EmitOMPTargetDataDirective()
7326 auto &&InnermostCodeGen = [&S](CodeGenFunction &CGF, PrePostActionTy &) { in EmitOMPTargetDataDirective()
7331 auto &&PrivCodeGen = [&](CodeGenFunction &CGF, PrePostActionTy &Action) { in EmitOMPTargetDataDirective()
7416 void CodeGenFunction::EmitOMPTargetEnterDataDirective( in EmitOMPTargetEnterDataDirective()
7437 void CodeGenFunction::EmitOMPTargetExitDataDirective( in EmitOMPTargetExitDataDirective()
7458 static void emitTargetParallelRegion(CodeGenFunction &CGF, in emitTargetParallelRegion()
7464 auto &&CodeGen = [&S, CS](CodeGenFunction &CGF, PrePostActionTy &Action) { in emitTargetParallelRegion()
7466 CodeGenFunction::OMPPrivateScope PrivateScope(CGF); in emitTargetParallelRegion()
7480 [](CodeGenFunction &) { return nullptr; }); in emitTargetParallelRegion() argument
7483 void CodeGenFunction::EmitOMPTargetParallelDeviceFunction( in EmitOMPTargetParallelDeviceFunction()
7486 auto &&CodeGen = [&S](CodeGenFunction &CGF, PrePostActionTy &Action) { in EmitOMPTargetParallelDeviceFunction()
7497 void CodeGenFunction::EmitOMPTargetParallelDirective( in EmitOMPTargetParallelDirective()
7499 auto &&CodeGen = [&S](CodeGenFunction &CGF, PrePostActionTy &Action) { in EmitOMPTargetParallelDirective()
7505 static void emitTargetParallelForRegion(CodeGenFunction &CGF, in emitTargetParallelForRegion()
7511 auto &&CodeGen = [&S](CodeGenFunction &CGF, PrePostActionTy &Action) { in emitTargetParallelForRegion()
7513 CodeGenFunction::OMPCancelStackRAII CancelRegion( in emitTargetParallelForRegion()
7522 void CodeGenFunction::EmitOMPTargetParallelForDeviceFunction( in EmitOMPTargetParallelForDeviceFunction()
7526 auto &&CodeGen = [&S](CodeGenFunction &CGF, PrePostActionTy &Action) { in EmitOMPTargetParallelForDeviceFunction()
7537 void CodeGenFunction::EmitOMPTargetParallelForDirective( in EmitOMPTargetParallelForDirective()
7539 auto &&CodeGen = [&S](CodeGenFunction &CGF, PrePostActionTy &Action) { in EmitOMPTargetParallelForDirective()
7546 emitTargetParallelForSimdRegion(CodeGenFunction &CGF, in emitTargetParallelForSimdRegion()
7552 auto &&CodeGen = [&S](CodeGenFunction &CGF, PrePostActionTy &Action) { in emitTargetParallelForSimdRegion()
7561 void CodeGenFunction::EmitOMPTargetParallelForSimdDeviceFunction( in EmitOMPTargetParallelForSimdDeviceFunction()
7565 auto &&CodeGen = [&S](CodeGenFunction &CGF, PrePostActionTy &Action) { in EmitOMPTargetParallelForSimdDeviceFunction()
7576 void CodeGenFunction::EmitOMPTargetParallelForSimdDirective( in EmitOMPTargetParallelForSimdDirective()
7578 auto &&CodeGen = [&S](CodeGenFunction &CGF, PrePostActionTy &Action) { in EmitOMPTargetParallelForSimdDirective()
7585 static void mapParam(CodeGenFunction &CGF, const DeclRefExpr *Helper, in mapParam()
7587 CodeGenFunction::OMPPrivateScope &Privates) { in mapParam()
7592 void CodeGenFunction::EmitOMPTaskLoopBasedDirective(const OMPLoopDirective &S) { in EmitOMPTaskLoopBasedDirective()
7627 auto &&BodyGen = [CS, &S](CodeGenFunction &CGF, PrePostActionTy &) { in EmitOMPTaskLoopBasedDirective()
7692 [&S](CodeGenFunction &CGF, PrePostActionTy &) { in EmitOMPTaskLoopBasedDirective()
7696 [&S, &LoopScope](CodeGenFunction &CGF, PrePostActionTy &) { in EmitOMPTaskLoopBasedDirective()
7699 [&S](CodeGenFunction &CGF) { in EmitOMPTaskLoopBasedDirective()
7701 CodeGenFunction::JumpDest()); in EmitOMPTaskLoopBasedDirective()
7703 [](CodeGenFunction &) {}); in EmitOMPTaskLoopBasedDirective() argument
7720 CGF.EmitOMPLinearClauseFinal(S, [LIP, &S](CodeGenFunction &CGF) { in EmitOMPTaskLoopBasedDirective()
7727 IfCond](CodeGenFunction &CGF, llvm::Function *OutlinedFn, in EmitOMPTaskLoopBasedDirective()
7730 &Data](CodeGenFunction &CGF, PrePostActionTy &) { in EmitOMPTaskLoopBasedDirective()
7744 [&S, &BodyGen, &TaskGen, &Data](CodeGenFunction &CGF, in EmitOMPTaskLoopBasedDirective()
7754 void CodeGenFunction::EmitOMPTaskLoopDirective(const OMPTaskLoopDirective &S) { in EmitOMPTaskLoopDirective()
7760 void CodeGenFunction::EmitOMPTaskLoopSimdDirective( in EmitOMPTaskLoopSimdDirective()
7768 void CodeGenFunction::EmitOMPMasterTaskLoopDirective( in EmitOMPMasterTaskLoopDirective()
7770 auto &&CodeGen = [this, &S](CodeGenFunction &CGF, PrePostActionTy &Action) { in EmitOMPMasterTaskLoopDirective()
7780 void CodeGenFunction::EmitOMPMasterTaskLoopSimdDirective( in EmitOMPMasterTaskLoopSimdDirective()
7782 auto &&CodeGen = [this, &S](CodeGenFunction &CGF, PrePostActionTy &Action) { in EmitOMPMasterTaskLoopSimdDirective()
7792 void CodeGenFunction::EmitOMPParallelMasterTaskLoopDirective( in EmitOMPParallelMasterTaskLoopDirective()
7794 auto &&CodeGen = [this, &S](CodeGenFunction &CGF, PrePostActionTy &Action) { in EmitOMPParallelMasterTaskLoopDirective()
7795 auto &&TaskLoopCodeGen = [&S](CodeGenFunction &CGF, in EmitOMPParallelMasterTaskLoopDirective()
7810 void CodeGenFunction::EmitOMPParallelMasterTaskLoopSimdDirective( in EmitOMPParallelMasterTaskLoopSimdDirective()
7812 auto &&CodeGen = [this, &S](CodeGenFunction &CGF, PrePostActionTy &Action) { in EmitOMPParallelMasterTaskLoopSimdDirective()
7813 auto &&TaskLoopCodeGen = [&S](CodeGenFunction &CGF, in EmitOMPParallelMasterTaskLoopSimdDirective()
7829 void CodeGenFunction::EmitOMPTargetUpdateDirective( in EmitOMPTargetUpdateDirective()
7850 void CodeGenFunction::EmitOMPGenericLoopDirective( in EmitOMPGenericLoopDirective()
7853 auto &&CodeGen = [&S](CodeGenFunction &CGF, PrePostActionTy &Action) { in EmitOMPGenericLoopDirective()
7872 void CodeGenFunction::EmitOMPParallelGenericLoopDirective( in EmitOMPParallelGenericLoopDirective()
7876 auto &&CodeGen = [&S](CodeGenFunction &CGF, PrePostActionTy &Action) { in EmitOMPParallelGenericLoopDirective()
7891 void CodeGenFunction::EmitOMPTeamsGenericLoopDirective( in EmitOMPTeamsGenericLoopDirective()
7896 auto &&CodeGenDistribute = [&S](CodeGenFunction &CGF, PrePostActionTy &) { in EmitOMPTeamsGenericLoopDirective()
7902 auto &&CodeGen = [&S, &CodeGenDistribute](CodeGenFunction &CGF, in EmitOMPTeamsGenericLoopDirective()
7914 [](CodeGenFunction &) { return nullptr; }); in EmitOMPTeamsGenericLoopDirective() argument
7918 emitTargetTeamsGenericLoopRegion(CodeGenFunction &CGF, in emitTargetTeamsGenericLoopRegion()
7924 auto &&CodeGenDistribute = [&S](CodeGenFunction &CGF, PrePostActionTy &) { in emitTargetTeamsGenericLoopRegion()
7930 auto &&CodeGenTeams = [&S, &CodeGenDistribute](CodeGenFunction &CGF, in emitTargetTeamsGenericLoopRegion()
7933 CodeGenFunction::OMPPrivateScope PrivateScope(CGF); in emitTargetTeamsGenericLoopRegion()
7944 [](CodeGenFunction &) { return nullptr; }); in emitTargetTeamsGenericLoopRegion() argument
7949 void CodeGenFunction::EmitOMPTargetTeamsGenericLoopDirective( in EmitOMPTargetTeamsGenericLoopDirective()
7951 auto &&CodeGen = [&S](CodeGenFunction &CGF, PrePostActionTy &Action) { in EmitOMPTargetTeamsGenericLoopDirective()
7957 void CodeGenFunction::EmitOMPTargetTeamsGenericLoopDeviceFunction( in EmitOMPTargetTeamsGenericLoopDeviceFunction()
7961 auto &&CodeGen = [&S](CodeGenFunction &CGF, PrePostActionTy &Action) { in EmitOMPTargetTeamsGenericLoopDeviceFunction()
7974 CodeGenFunction &CGF, const OMPTargetParallelGenericLoopDirective &S, in emitTargetParallelGenericLoopRegion()
7978 auto &&CodeGen = [&S](CodeGenFunction &CGF, PrePostActionTy &Action) { in emitTargetParallelGenericLoopRegion()
7980 CodeGenFunction::OMPCancelStackRAII CancelRegion( in emitTargetParallelGenericLoopRegion()
7989 void CodeGenFunction::EmitOMPTargetParallelGenericLoopDeviceFunction( in EmitOMPTargetParallelGenericLoopDeviceFunction()
7993 auto &&CodeGen = [&S](CodeGenFunction &CGF, PrePostActionTy &Action) { in EmitOMPTargetParallelGenericLoopDeviceFunction()
8006 void CodeGenFunction::EmitOMPTargetParallelGenericLoopDirective( in EmitOMPTargetParallelGenericLoopDirective()
8008 auto &&CodeGen = [&S](CodeGenFunction &CGF, PrePostActionTy &Action) { in EmitOMPTargetParallelGenericLoopDirective()
8014 void CodeGenFunction::EmitSimpleOMPExecutableDirective( in EmitSimpleOMPExecutableDirective()
8022 auto &&CodeGen = [&D](CodeGenFunction &CGF, PrePostActionTy &Action) { in EmitSimpleOMPExecutableDirective()