Lines Matching refs:AStmt
5733 StmtResult Sema::ActOnOpenMPCanonicalLoop(Stmt *AStmt) { in ActOnOpenMPCanonicalLoop() argument
5740 if (auto *For = dyn_cast<ForStmt>(AStmt)) { in ActOnOpenMPCanonicalLoop()
5757 } else if (auto *RangeFor = dyn_cast<CXXForRangeStmt>(AStmt)) { in ActOnOpenMPCanonicalLoop()
5874 *this, LVTy, LogicalTy, CounterRef, Step, isa<CXXForRangeStmt>(AStmt)); in ActOnOpenMPCanonicalLoop()
5877 return OMPCanonicalLoop::create(getASTContext(), AStmt, DistanceFunc, in ActOnOpenMPCanonicalLoop()
5881 StmtResult Sema::ActOnOpenMPLoopnest(Stmt *AStmt) { in ActOnOpenMPLoopnest() argument
5883 if (isa<ForStmt>(AStmt) || isa<CXXForRangeStmt>(AStmt)) in ActOnOpenMPLoopnest()
5884 return ActOnOpenMPCanonicalLoop(AStmt); in ActOnOpenMPLoopnest()
5887 OMPExecutableDirective *LoopTransform = cast<OMPExecutableDirective>(AStmt); in ActOnOpenMPLoopnest()
6038 Stmt *AStmt, SourceLocation StartLoc, SourceLocation EndLoc) { in ActOnOpenMPExecutableDirective() argument
6054 if (AStmt && !CurContext->isDependentContext() && Kind != OMPD_atomic && in ActOnOpenMPExecutableDirective()
6057 assert(isa<CapturedStmt>(AStmt) && "Captured statement expected"); in ActOnOpenMPExecutableDirective()
6060 DSAAttrChecker DSAChecker(DSAStack, *this, cast<CapturedStmt>(AStmt)); in ActOnOpenMPExecutableDirective()
6062 Stmt *S = AStmt; in ActOnOpenMPExecutableDirective()
6069 auto *CS = cast<CapturedStmt>(AStmt); in ActOnOpenMPExecutableDirective()
6208 Res = ActOnOpenMPParallelDirective(ClausesWithImplicit, AStmt, StartLoc, in ActOnOpenMPExecutableDirective()
6213 Res = ActOnOpenMPSimdDirective(ClausesWithImplicit, AStmt, StartLoc, EndLoc, in ActOnOpenMPExecutableDirective()
6220 ActOnOpenMPTileDirective(ClausesWithImplicit, AStmt, StartLoc, EndLoc); in ActOnOpenMPExecutableDirective()
6223 Res = ActOnOpenMPUnrollDirective(ClausesWithImplicit, AStmt, StartLoc, in ActOnOpenMPExecutableDirective()
6227 Res = ActOnOpenMPForDirective(ClausesWithImplicit, AStmt, StartLoc, EndLoc, in ActOnOpenMPExecutableDirective()
6231 Res = ActOnOpenMPForSimdDirective(ClausesWithImplicit, AStmt, StartLoc, in ActOnOpenMPExecutableDirective()
6237 Res = ActOnOpenMPSectionsDirective(ClausesWithImplicit, AStmt, StartLoc, in ActOnOpenMPExecutableDirective()
6243 Res = ActOnOpenMPSectionDirective(AStmt, StartLoc, EndLoc); in ActOnOpenMPExecutableDirective()
6246 Res = ActOnOpenMPSingleDirective(ClausesWithImplicit, AStmt, StartLoc, in ActOnOpenMPExecutableDirective()
6252 Res = ActOnOpenMPMasterDirective(AStmt, StartLoc, EndLoc); in ActOnOpenMPExecutableDirective()
6255 Res = ActOnOpenMPMaskedDirective(ClausesWithImplicit, AStmt, StartLoc, in ActOnOpenMPExecutableDirective()
6259 Res = ActOnOpenMPCriticalDirective(DirName, ClausesWithImplicit, AStmt, in ActOnOpenMPExecutableDirective()
6263 Res = ActOnOpenMPParallelForDirective(ClausesWithImplicit, AStmt, StartLoc, in ActOnOpenMPExecutableDirective()
6269 ClausesWithImplicit, AStmt, StartLoc, EndLoc, VarsWithInheritedDSA); in ActOnOpenMPExecutableDirective()
6275 Res = ActOnOpenMPParallelMasterDirective(ClausesWithImplicit, AStmt, in ActOnOpenMPExecutableDirective()
6280 Res = ActOnOpenMPParallelMaskedDirective(ClausesWithImplicit, AStmt, in ActOnOpenMPExecutableDirective()
6285 Res = ActOnOpenMPParallelSectionsDirective(ClausesWithImplicit, AStmt, in ActOnOpenMPExecutableDirective()
6291 ActOnOpenMPTaskDirective(ClausesWithImplicit, AStmt, StartLoc, EndLoc); in ActOnOpenMPExecutableDirective()
6297 assert(AStmt == nullptr && in ActOnOpenMPExecutableDirective()
6304 assert(AStmt == nullptr && in ActOnOpenMPExecutableDirective()
6309 assert(AStmt == nullptr && in ActOnOpenMPExecutableDirective()
6314 Res = ActOnOpenMPTaskgroupDirective(ClausesWithImplicit, AStmt, StartLoc, in ActOnOpenMPExecutableDirective()
6318 assert(AStmt == nullptr && in ActOnOpenMPExecutableDirective()
6323 assert(AStmt == nullptr && in ActOnOpenMPExecutableDirective()
6328 assert(AStmt == nullptr && in ActOnOpenMPExecutableDirective()
6333 Res = ActOnOpenMPOrderedDirective(ClausesWithImplicit, AStmt, StartLoc, in ActOnOpenMPExecutableDirective()
6337 Res = ActOnOpenMPAtomicDirective(ClausesWithImplicit, AStmt, StartLoc, in ActOnOpenMPExecutableDirective()
6342 ActOnOpenMPTeamsDirective(ClausesWithImplicit, AStmt, StartLoc, EndLoc); in ActOnOpenMPExecutableDirective()
6345 Res = ActOnOpenMPTargetDirective(ClausesWithImplicit, AStmt, StartLoc, in ActOnOpenMPExecutableDirective()
6350 Res = ActOnOpenMPTargetParallelDirective(ClausesWithImplicit, AStmt, in ActOnOpenMPExecutableDirective()
6357 ClausesWithImplicit, AStmt, StartLoc, EndLoc, VarsWithInheritedDSA); in ActOnOpenMPExecutableDirective()
6364 assert(AStmt == nullptr && "No associated statement allowed for 'omp " in ActOnOpenMPExecutableDirective()
6369 assert(AStmt == nullptr && in ActOnOpenMPExecutableDirective()
6376 Res = ActOnOpenMPTargetDataDirective(ClausesWithImplicit, AStmt, StartLoc, in ActOnOpenMPExecutableDirective()
6382 EndLoc, AStmt); in ActOnOpenMPExecutableDirective()
6387 EndLoc, AStmt); in ActOnOpenMPExecutableDirective()
6391 Res = ActOnOpenMPTaskLoopDirective(ClausesWithImplicit, AStmt, StartLoc, in ActOnOpenMPExecutableDirective()
6396 Res = ActOnOpenMPTaskLoopSimdDirective(ClausesWithImplicit, AStmt, StartLoc, in ActOnOpenMPExecutableDirective()
6404 ClausesWithImplicit, AStmt, StartLoc, EndLoc, VarsWithInheritedDSA); in ActOnOpenMPExecutableDirective()
6409 ClausesWithImplicit, AStmt, StartLoc, EndLoc, VarsWithInheritedDSA); in ActOnOpenMPExecutableDirective()
6414 ClausesWithImplicit, AStmt, StartLoc, EndLoc, VarsWithInheritedDSA); in ActOnOpenMPExecutableDirective()
6421 ClausesWithImplicit, AStmt, StartLoc, EndLoc, VarsWithInheritedDSA); in ActOnOpenMPExecutableDirective()
6429 ClausesWithImplicit, AStmt, StartLoc, EndLoc, VarsWithInheritedDSA); in ActOnOpenMPExecutableDirective()
6435 ClausesWithImplicit, AStmt, StartLoc, EndLoc, VarsWithInheritedDSA); in ActOnOpenMPExecutableDirective()
6443 ClausesWithImplicit, AStmt, StartLoc, EndLoc, VarsWithInheritedDSA); in ActOnOpenMPExecutableDirective()
6451 ClausesWithImplicit, AStmt, StartLoc, EndLoc, VarsWithInheritedDSA); in ActOnOpenMPExecutableDirective()
6459 Res = ActOnOpenMPDistributeDirective(ClausesWithImplicit, AStmt, StartLoc, in ActOnOpenMPExecutableDirective()
6464 EndLoc, AStmt); in ActOnOpenMPExecutableDirective()
6469 ClausesWithImplicit, AStmt, StartLoc, EndLoc, VarsWithInheritedDSA); in ActOnOpenMPExecutableDirective()
6474 ClausesWithImplicit, AStmt, StartLoc, EndLoc, VarsWithInheritedDSA); in ActOnOpenMPExecutableDirective()
6481 ClausesWithImplicit, AStmt, StartLoc, EndLoc, VarsWithInheritedDSA); in ActOnOpenMPExecutableDirective()
6487 ClausesWithImplicit, AStmt, StartLoc, EndLoc, VarsWithInheritedDSA); in ActOnOpenMPExecutableDirective()
6494 Res = ActOnOpenMPTargetSimdDirective(ClausesWithImplicit, AStmt, StartLoc, in ActOnOpenMPExecutableDirective()
6502 ClausesWithImplicit, AStmt, StartLoc, EndLoc, VarsWithInheritedDSA); in ActOnOpenMPExecutableDirective()
6506 ClausesWithImplicit, AStmt, StartLoc, EndLoc, VarsWithInheritedDSA); in ActOnOpenMPExecutableDirective()
6512 ClausesWithImplicit, AStmt, StartLoc, EndLoc, VarsWithInheritedDSA); in ActOnOpenMPExecutableDirective()
6519 ClausesWithImplicit, AStmt, StartLoc, EndLoc, VarsWithInheritedDSA); in ActOnOpenMPExecutableDirective()
6523 Res = ActOnOpenMPTargetTeamsDirective(ClausesWithImplicit, AStmt, StartLoc, in ActOnOpenMPExecutableDirective()
6529 ClausesWithImplicit, AStmt, StartLoc, EndLoc, VarsWithInheritedDSA); in ActOnOpenMPExecutableDirective()
6534 ClausesWithImplicit, AStmt, StartLoc, EndLoc, VarsWithInheritedDSA); in ActOnOpenMPExecutableDirective()
6540 ClausesWithImplicit, AStmt, StartLoc, EndLoc, VarsWithInheritedDSA); in ActOnOpenMPExecutableDirective()
6548 ClausesWithImplicit, AStmt, StartLoc, EndLoc, VarsWithInheritedDSA); in ActOnOpenMPExecutableDirective()
6554 assert(AStmt == nullptr && in ActOnOpenMPExecutableDirective()
6559 Res = ActOnOpenMPDispatchDirective(ClausesWithImplicit, AStmt, StartLoc, in ActOnOpenMPExecutableDirective()
6563 Res = ActOnOpenMPGenericLoopDirective(ClausesWithImplicit, AStmt, StartLoc, in ActOnOpenMPExecutableDirective()
6568 ClausesWithImplicit, AStmt, StartLoc, EndLoc, VarsWithInheritedDSA); in ActOnOpenMPExecutableDirective()
6572 ClausesWithImplicit, AStmt, StartLoc, EndLoc, VarsWithInheritedDSA); in ActOnOpenMPExecutableDirective()
6576 ClausesWithImplicit, AStmt, StartLoc, EndLoc, VarsWithInheritedDSA); in ActOnOpenMPExecutableDirective()
6580 ClausesWithImplicit, AStmt, StartLoc, EndLoc, VarsWithInheritedDSA); in ActOnOpenMPExecutableDirective()
7650 Stmt *AStmt, in ActOnOpenMPParallelDirective() argument
7653 if (!AStmt) in ActOnOpenMPParallelDirective()
7656 auto *CS = cast<CapturedStmt>(AStmt); in ActOnOpenMPParallelDirective()
7666 return OMPParallelDirective::Create(Context, StartLoc, EndLoc, Clauses, AStmt, in ActOnOpenMPParallelDirective()
9444 Expr *OrderedLoopCountExpr, Stmt *AStmt, Sema &SemaRef, in checkOpenMPLoop() argument
9491 AStmt->IgnoreContainers(!isOpenMPLoopTransformationDirective(DKind)), in checkOpenMPLoop()
9744 const CapturedDecl *CD = cast<CapturedStmt>(AStmt)->getCapturedDecl(); in checkOpenMPLoop()
9802 SourceLocation CondLoc = AStmt->getBeginLoc(); in checkOpenMPLoop()
9848 SourceLocation IncLoc = AStmt->getBeginLoc(); in checkOpenMPLoop()
9921 SourceLocation DistIncLoc = AStmt->getBeginLoc(); in checkOpenMPLoop()
9940 SourceLocation DistEUBLoc = AStmt->getBeginLoc(); in checkOpenMPLoop()
10194 Sema::ActOnOpenMPSimdDirective(ArrayRef<OMPClause *> Clauses, Stmt *AStmt, in ActOnOpenMPSimdDirective() argument
10197 if (!AStmt) in ActOnOpenMPSimdDirective()
10200 assert(isa<CapturedStmt>(AStmt) && "Captured statement expected"); in ActOnOpenMPSimdDirective()
10206 AStmt, *this, *DSAStack, VarsWithImplicitDSA, B); in ActOnOpenMPSimdDirective()
10229 Clauses, AStmt, B); in ActOnOpenMPSimdDirective()
10233 Sema::ActOnOpenMPForDirective(ArrayRef<OMPClause *> Clauses, Stmt *AStmt, in ActOnOpenMPForDirective() argument
10236 if (!AStmt) in ActOnOpenMPForDirective()
10239 assert(isa<CapturedStmt>(AStmt) && "Captured statement expected"); in ActOnOpenMPForDirective()
10245 AStmt, *this, *DSAStack, VarsWithImplicitDSA, B); in ActOnOpenMPForDirective()
10265 Context, StartLoc, EndLoc, NestedLoopCount, Clauses, AStmt, B, in ActOnOpenMPForDirective()
10270 ArrayRef<OMPClause *> Clauses, Stmt *AStmt, SourceLocation StartLoc, in ActOnOpenMPForSimdDirective() argument
10272 if (!AStmt) in ActOnOpenMPForSimdDirective()
10275 assert(isa<CapturedStmt>(AStmt) && "Captured statement expected"); in ActOnOpenMPForSimdDirective()
10281 getOrderedNumberExpr(Clauses), AStmt, *this, *DSAStack, in ActOnOpenMPForSimdDirective()
10305 Clauses, AStmt, B); in ActOnOpenMPForSimdDirective()
10309 Stmt *AStmt, in ActOnOpenMPSectionsDirective() argument
10312 if (!AStmt) in ActOnOpenMPSectionsDirective()
10315 assert(isa<CapturedStmt>(AStmt) && "Captured statement expected"); in ActOnOpenMPSectionsDirective()
10316 auto BaseStmt = AStmt; in ActOnOpenMPSectionsDirective()
10336 Diag(AStmt->getBeginLoc(), diag::err_omp_sections_not_compound_stmt); in ActOnOpenMPSectionsDirective()
10342 return OMPSectionsDirective::Create(Context, StartLoc, EndLoc, Clauses, AStmt, in ActOnOpenMPSectionsDirective()
10347 StmtResult Sema::ActOnOpenMPSectionDirective(Stmt *AStmt, in ActOnOpenMPSectionDirective() argument
10350 if (!AStmt) in ActOnOpenMPSectionDirective()
10356 return OMPSectionDirective::Create(Context, StartLoc, EndLoc, AStmt, in ActOnOpenMPSectionDirective()
10369 Stmt *AStmt, in ActOnOpenMPDispatchDirective() argument
10372 if (!AStmt) in ActOnOpenMPDispatchDirective()
10375 Stmt *S = cast<CapturedStmt>(AStmt)->getCapturedStmt(); in ActOnOpenMPDispatchDirective()
10414 return OMPDispatchDirective::Create(Context, StartLoc, EndLoc, Clauses, AStmt, in ActOnOpenMPDispatchDirective()
10444 ArrayRef<OMPClause *> Clauses, Stmt *AStmt, SourceLocation StartLoc, in ActOnOpenMPGenericLoopDirective() argument
10446 if (!AStmt) in ActOnOpenMPGenericLoopDirective()
10455 auto *CS = cast<CapturedStmt>(AStmt); in ActOnOpenMPGenericLoopDirective()
10467 AStmt, *this, *DSAStack, VarsWithImplicitDSA, B); in ActOnOpenMPGenericLoopDirective()
10476 NestedLoopCount, Clauses, AStmt, B); in ActOnOpenMPGenericLoopDirective()
10480 ArrayRef<OMPClause *> Clauses, Stmt *AStmt, SourceLocation StartLoc, in ActOnOpenMPTeamsGenericLoopDirective() argument
10482 if (!AStmt) in ActOnOpenMPTeamsGenericLoopDirective()
10491 auto *CS = cast<CapturedStmt>(AStmt); in ActOnOpenMPTeamsGenericLoopDirective()
10525 Context, StartLoc, EndLoc, NestedLoopCount, Clauses, AStmt, B); in ActOnOpenMPTeamsGenericLoopDirective()
10529 ArrayRef<OMPClause *> Clauses, Stmt *AStmt, SourceLocation StartLoc, in ActOnOpenMPTargetTeamsGenericLoopDirective() argument
10531 if (!AStmt) in ActOnOpenMPTargetTeamsGenericLoopDirective()
10541 auto *CS = cast<CapturedStmt>(AStmt); in ActOnOpenMPTargetTeamsGenericLoopDirective()
10574 Context, StartLoc, EndLoc, NestedLoopCount, Clauses, AStmt, B); in ActOnOpenMPTargetTeamsGenericLoopDirective()
10578 ArrayRef<OMPClause *> Clauses, Stmt *AStmt, SourceLocation StartLoc, in ActOnOpenMPParallelGenericLoopDirective() argument
10580 if (!AStmt) in ActOnOpenMPParallelGenericLoopDirective()
10589 auto *CS = cast<CapturedStmt>(AStmt); in ActOnOpenMPParallelGenericLoopDirective()
10622 Context, StartLoc, EndLoc, NestedLoopCount, Clauses, AStmt, B); in ActOnOpenMPParallelGenericLoopDirective()
10626 ArrayRef<OMPClause *> Clauses, Stmt *AStmt, SourceLocation StartLoc, in ActOnOpenMPTargetParallelGenericLoopDirective() argument
10628 if (!AStmt) in ActOnOpenMPTargetParallelGenericLoopDirective()
10638 auto *CS = cast<CapturedStmt>(AStmt); in ActOnOpenMPTargetParallelGenericLoopDirective()
10671 Context, StartLoc, EndLoc, NestedLoopCount, Clauses, AStmt, B); in ActOnOpenMPTargetParallelGenericLoopDirective()
10675 Stmt *AStmt, in ActOnOpenMPSingleDirective() argument
10678 if (!AStmt) in ActOnOpenMPSingleDirective()
10681 assert(isa<CapturedStmt>(AStmt) && "Captured statement expected"); in ActOnOpenMPSingleDirective()
10702 return OMPSingleDirective::Create(Context, StartLoc, EndLoc, Clauses, AStmt); in ActOnOpenMPSingleDirective()
10705 StmtResult Sema::ActOnOpenMPMasterDirective(Stmt *AStmt, in ActOnOpenMPMasterDirective() argument
10708 if (!AStmt) in ActOnOpenMPMasterDirective()
10713 return OMPMasterDirective::Create(Context, StartLoc, EndLoc, AStmt); in ActOnOpenMPMasterDirective()
10717 Stmt *AStmt, in ActOnOpenMPMaskedDirective() argument
10720 if (!AStmt) in ActOnOpenMPMaskedDirective()
10725 return OMPMaskedDirective::Create(Context, StartLoc, EndLoc, Clauses, AStmt); in ActOnOpenMPMaskedDirective()
10730 Stmt *AStmt, SourceLocation StartLoc, SourceLocation EndLoc) { in ActOnOpenMPCriticalDirective() argument
10731 if (!AStmt) in ActOnOpenMPCriticalDirective()
10779 Clauses, AStmt); in ActOnOpenMPCriticalDirective()
10786 ArrayRef<OMPClause *> Clauses, Stmt *AStmt, SourceLocation StartLoc, in ActOnOpenMPParallelForDirective() argument
10788 if (!AStmt) in ActOnOpenMPParallelForDirective()
10791 auto *CS = cast<CapturedStmt>(AStmt); in ActOnOpenMPParallelForDirective()
10804 getOrderedNumberExpr(Clauses), AStmt, *this, *DSAStack, in ActOnOpenMPParallelForDirective()
10825 Context, StartLoc, EndLoc, NestedLoopCount, Clauses, AStmt, B, in ActOnOpenMPParallelForDirective()
10830 ArrayRef<OMPClause *> Clauses, Stmt *AStmt, SourceLocation StartLoc, in ActOnOpenMPParallelForSimdDirective() argument
10832 if (!AStmt) in ActOnOpenMPParallelForSimdDirective()
10835 auto *CS = cast<CapturedStmt>(AStmt); in ActOnOpenMPParallelForSimdDirective()
10848 getOrderedNumberExpr(Clauses), AStmt, *this, *DSAStack, in ActOnOpenMPParallelForSimdDirective()
10869 Context, StartLoc, EndLoc, NestedLoopCount, Clauses, AStmt, B); in ActOnOpenMPParallelForSimdDirective()
10874 Stmt *AStmt, SourceLocation StartLoc, in ActOnOpenMPParallelMasterDirective() argument
10876 if (!AStmt) in ActOnOpenMPParallelMasterDirective()
10879 assert(isa<CapturedStmt>(AStmt) && "Captured statement expected"); in ActOnOpenMPParallelMasterDirective()
10880 auto *CS = cast<CapturedStmt>(AStmt); in ActOnOpenMPParallelMasterDirective()
10891 Context, StartLoc, EndLoc, Clauses, AStmt, in ActOnOpenMPParallelMasterDirective()
10897 Stmt *AStmt, SourceLocation StartLoc, in ActOnOpenMPParallelMaskedDirective() argument
10899 if (!AStmt) in ActOnOpenMPParallelMaskedDirective()
10902 assert(isa<CapturedStmt>(AStmt) && "Captured statement expected"); in ActOnOpenMPParallelMaskedDirective()
10903 auto *CS = cast<CapturedStmt>(AStmt); in ActOnOpenMPParallelMaskedDirective()
10914 Context, StartLoc, EndLoc, Clauses, AStmt, in ActOnOpenMPParallelMaskedDirective()
10920 Stmt *AStmt, SourceLocation StartLoc, in ActOnOpenMPParallelSectionsDirective() argument
10922 if (!AStmt) in ActOnOpenMPParallelSectionsDirective()
10925 assert(isa<CapturedStmt>(AStmt) && "Captured statement expected"); in ActOnOpenMPParallelSectionsDirective()
10926 auto BaseStmt = AStmt; in ActOnOpenMPParallelSectionsDirective()
10946 Diag(AStmt->getBeginLoc(), in ActOnOpenMPParallelSectionsDirective()
10954 Context, StartLoc, EndLoc, Clauses, AStmt, in ActOnOpenMPParallelSectionsDirective()
10982 Stmt *AStmt, SourceLocation StartLoc, in ActOnOpenMPTaskDirective() argument
10984 if (!AStmt) in ActOnOpenMPTaskDirective()
10994 auto *CS = cast<CapturedStmt>(AStmt); in ActOnOpenMPTaskDirective()
11004 return OMPTaskDirective::Create(Context, StartLoc, EndLoc, Clauses, AStmt, in ActOnOpenMPTaskDirective()
11025 Stmt *AStmt, in ActOnOpenMPTaskgroupDirective() argument
11028 if (!AStmt) in ActOnOpenMPTaskgroupDirective()
11031 assert(isa<CapturedStmt>(AStmt) && "Captured statement expected"); in ActOnOpenMPTaskgroupDirective()
11036 AStmt, in ActOnOpenMPTaskgroupDirective()
11132 Stmt *AStmt, in ActOnOpenMPOrderedDirective() argument
11197 if ((!AStmt && !DependFound) || ErrorFound) in ActOnOpenMPOrderedDirective()
11216 if (AStmt) { in ActOnOpenMPOrderedDirective()
11217 assert(isa<CapturedStmt>(AStmt) && "Captured statement expected"); in ActOnOpenMPOrderedDirective()
11222 return OMPOrderedDirective::Create(Context, StartLoc, EndLoc, Clauses, AStmt); in ActOnOpenMPOrderedDirective()
12258 Stmt *AStmt, in ActOnOpenMPAtomicDirective() argument
12263 if (!AStmt) in ActOnOpenMPAtomicDirective()
12356 Stmt *Body = AStmt; in ActOnOpenMPAtomicDirective()
12797 Context, StartLoc, EndLoc, Clauses, AStmt, in ActOnOpenMPAtomicDirective()
12802 Stmt *AStmt, in ActOnOpenMPTargetDirective() argument
12805 if (!AStmt) in ActOnOpenMPTargetDirective()
12808 auto *CS = cast<CapturedStmt>(AStmt); in ActOnOpenMPTargetDirective()
12863 return OMPTargetDirective::Create(Context, StartLoc, EndLoc, Clauses, AStmt); in ActOnOpenMPTargetDirective()
12868 Stmt *AStmt, SourceLocation StartLoc, in ActOnOpenMPTargetParallelDirective() argument
12870 if (!AStmt) in ActOnOpenMPTargetParallelDirective()
12873 auto *CS = cast<CapturedStmt>(AStmt); in ActOnOpenMPTargetParallelDirective()
12894 Context, StartLoc, EndLoc, Clauses, AStmt, in ActOnOpenMPTargetParallelDirective()
12899 ArrayRef<OMPClause *> Clauses, Stmt *AStmt, SourceLocation StartLoc, in ActOnOpenMPTargetParallelForDirective() argument
12901 if (!AStmt) in ActOnOpenMPTargetParallelForDirective()
12904 auto *CS = cast<CapturedStmt>(AStmt); in ActOnOpenMPTargetParallelForDirective()
12948 Context, StartLoc, EndLoc, NestedLoopCount, Clauses, AStmt, B, in ActOnOpenMPTargetParallelForDirective()
12986 Stmt *AStmt, in ActOnOpenMPTargetDataDirective() argument
12989 if (!AStmt) in ActOnOpenMPTargetDataDirective()
12992 assert(isa<CapturedStmt>(AStmt) && "Captured statement expected"); in ActOnOpenMPTargetDataDirective()
13012 AStmt); in ActOnOpenMPTargetDataDirective()
13018 SourceLocation EndLoc, Stmt *AStmt) { in ActOnOpenMPTargetEnterDataDirective() argument
13019 if (!AStmt) in ActOnOpenMPTargetEnterDataDirective()
13022 auto *CS = cast<CapturedStmt>(AStmt); in ActOnOpenMPTargetEnterDataDirective()
13049 AStmt); in ActOnOpenMPTargetEnterDataDirective()
13055 SourceLocation EndLoc, Stmt *AStmt) { in ActOnOpenMPTargetExitDataDirective() argument
13056 if (!AStmt) in ActOnOpenMPTargetExitDataDirective()
13059 auto *CS = cast<CapturedStmt>(AStmt); in ActOnOpenMPTargetExitDataDirective()
13086 AStmt); in ActOnOpenMPTargetExitDataDirective()
13092 Stmt *AStmt) { in ActOnOpenMPTargetUpdateDirective() argument
13093 if (!AStmt) in ActOnOpenMPTargetUpdateDirective()
13096 auto *CS = cast<CapturedStmt>(AStmt); in ActOnOpenMPTargetUpdateDirective()
13125 AStmt); in ActOnOpenMPTargetUpdateDirective()
13129 Stmt *AStmt, SourceLocation StartLoc, in ActOnOpenMPTeamsDirective() argument
13131 if (!AStmt) in ActOnOpenMPTeamsDirective()
13134 auto *CS = cast<CapturedStmt>(AStmt); in ActOnOpenMPTeamsDirective()
13146 return OMPTeamsDirective::Create(Context, StartLoc, EndLoc, Clauses, AStmt); in ActOnOpenMPTeamsDirective()
13210 ArrayRef<OMPClause *> Clauses, Stmt *AStmt, SourceLocation StartLoc, in ActOnOpenMPTaskLoopDirective() argument
13212 if (!AStmt) in ActOnOpenMPTaskLoopDirective()
13215 assert(isa<CapturedStmt>(AStmt) && "Captured statement expected"); in ActOnOpenMPTaskLoopDirective()
13221 /*OrderedLoopCountExpr=*/nullptr, AStmt, *this, *DSAStack, in ActOnOpenMPTaskLoopDirective()
13243 NestedLoopCount, Clauses, AStmt, B, in ActOnOpenMPTaskLoopDirective()
13248 ArrayRef<OMPClause *> Clauses, Stmt *AStmt, SourceLocation StartLoc, in ActOnOpenMPTaskLoopSimdDirective() argument
13250 if (!AStmt) in ActOnOpenMPTaskLoopSimdDirective()
13253 assert(isa<CapturedStmt>(AStmt) && "Captured statement expected"); in ActOnOpenMPTaskLoopSimdDirective()
13259 /*OrderedLoopCountExpr=*/nullptr, AStmt, *this, *DSAStack, in ActOnOpenMPTaskLoopSimdDirective()
13294 NestedLoopCount, Clauses, AStmt, B); in ActOnOpenMPTaskLoopSimdDirective()
13298 ArrayRef<OMPClause *> Clauses, Stmt *AStmt, SourceLocation StartLoc, in ActOnOpenMPMasterTaskLoopDirective() argument
13300 if (!AStmt) in ActOnOpenMPMasterTaskLoopDirective()
13303 assert(isa<CapturedStmt>(AStmt) && "Captured statement expected"); in ActOnOpenMPMasterTaskLoopDirective()
13309 /*OrderedLoopCountExpr=*/nullptr, AStmt, *this, *DSAStack, in ActOnOpenMPMasterTaskLoopDirective()
13331 NestedLoopCount, Clauses, AStmt, B, in ActOnOpenMPMasterTaskLoopDirective()
13336 ArrayRef<OMPClause *> Clauses, Stmt *AStmt, SourceLocation StartLoc, in ActOnOpenMPMaskedTaskLoopDirective() argument
13338 if (!AStmt) in ActOnOpenMPMaskedTaskLoopDirective()
13341 assert(isa<CapturedStmt>(AStmt) && "Captured statement expected"); in ActOnOpenMPMaskedTaskLoopDirective()
13347 /*OrderedLoopCountExpr=*/nullptr, AStmt, *this, *DSAStack, in ActOnOpenMPMaskedTaskLoopDirective()
13369 NestedLoopCount, Clauses, AStmt, B, in ActOnOpenMPMaskedTaskLoopDirective()
13374 ArrayRef<OMPClause *> Clauses, Stmt *AStmt, SourceLocation StartLoc, in ActOnOpenMPMasterTaskLoopSimdDirective() argument
13376 if (!AStmt) in ActOnOpenMPMasterTaskLoopSimdDirective()
13379 assert(isa<CapturedStmt>(AStmt) && "Captured statement expected"); in ActOnOpenMPMasterTaskLoopSimdDirective()
13385 /*OrderedLoopCountExpr=*/nullptr, AStmt, *this, *DSAStack, in ActOnOpenMPMasterTaskLoopSimdDirective()
13420 Context, StartLoc, EndLoc, NestedLoopCount, Clauses, AStmt, B); in ActOnOpenMPMasterTaskLoopSimdDirective()
13424 ArrayRef<OMPClause *> Clauses, Stmt *AStmt, SourceLocation StartLoc, in ActOnOpenMPMaskedTaskLoopSimdDirective() argument
13426 if (!AStmt) in ActOnOpenMPMaskedTaskLoopSimdDirective()
13429 assert(isa<CapturedStmt>(AStmt) && "Captured statement expected"); in ActOnOpenMPMaskedTaskLoopSimdDirective()
13435 /*OrderedLoopCountExpr=*/nullptr, AStmt, *this, *DSAStack, in ActOnOpenMPMaskedTaskLoopSimdDirective()
13470 Context, StartLoc, EndLoc, NestedLoopCount, Clauses, AStmt, B); in ActOnOpenMPMaskedTaskLoopSimdDirective()
13474 ArrayRef<OMPClause *> Clauses, Stmt *AStmt, SourceLocation StartLoc, in ActOnOpenMPParallelMasterTaskLoopDirective() argument
13476 if (!AStmt) in ActOnOpenMPParallelMasterTaskLoopDirective()
13479 assert(isa<CapturedStmt>(AStmt) && "Captured statement expected"); in ActOnOpenMPParallelMasterTaskLoopDirective()
13480 auto *CS = cast<CapturedStmt>(AStmt); in ActOnOpenMPParallelMasterTaskLoopDirective()
13526 Context, StartLoc, EndLoc, NestedLoopCount, Clauses, AStmt, B, in ActOnOpenMPParallelMasterTaskLoopDirective()
13531 ArrayRef<OMPClause *> Clauses, Stmt *AStmt, SourceLocation StartLoc, in ActOnOpenMPParallelMaskedTaskLoopDirective() argument
13533 if (!AStmt) in ActOnOpenMPParallelMaskedTaskLoopDirective()
13536 assert(isa<CapturedStmt>(AStmt) && "Captured statement expected"); in ActOnOpenMPParallelMaskedTaskLoopDirective()
13537 auto *CS = cast<CapturedStmt>(AStmt); in ActOnOpenMPParallelMaskedTaskLoopDirective()
13583 Context, StartLoc, EndLoc, NestedLoopCount, Clauses, AStmt, B, in ActOnOpenMPParallelMaskedTaskLoopDirective()
13588 ArrayRef<OMPClause *> Clauses, Stmt *AStmt, SourceLocation StartLoc, in ActOnOpenMPParallelMasterTaskLoopSimdDirective() argument
13590 if (!AStmt) in ActOnOpenMPParallelMasterTaskLoopSimdDirective()
13593 assert(isa<CapturedStmt>(AStmt) && "Captured statement expected"); in ActOnOpenMPParallelMasterTaskLoopSimdDirective()
13594 auto *CS = cast<CapturedStmt>(AStmt); in ActOnOpenMPParallelMasterTaskLoopSimdDirective()
13653 Context, StartLoc, EndLoc, NestedLoopCount, Clauses, AStmt, B); in ActOnOpenMPParallelMasterTaskLoopSimdDirective()
13657 ArrayRef<OMPClause *> Clauses, Stmt *AStmt, SourceLocation StartLoc, in ActOnOpenMPParallelMaskedTaskLoopSimdDirective() argument
13659 if (!AStmt) in ActOnOpenMPParallelMaskedTaskLoopSimdDirective()
13662 assert(isa<CapturedStmt>(AStmt) && "Captured statement expected"); in ActOnOpenMPParallelMaskedTaskLoopSimdDirective()
13663 auto *CS = cast<CapturedStmt>(AStmt); in ActOnOpenMPParallelMaskedTaskLoopSimdDirective()
13722 Context, StartLoc, EndLoc, NestedLoopCount, Clauses, AStmt, B); in ActOnOpenMPParallelMaskedTaskLoopSimdDirective()
13726 ArrayRef<OMPClause *> Clauses, Stmt *AStmt, SourceLocation StartLoc, in ActOnOpenMPDistributeDirective() argument
13728 if (!AStmt) in ActOnOpenMPDistributeDirective()
13731 assert(isa<CapturedStmt>(AStmt) && "Captured statement expected"); in ActOnOpenMPDistributeDirective()
13737 nullptr /*ordered not a clause on distribute*/, AStmt, in ActOnOpenMPDistributeDirective()
13747 NestedLoopCount, Clauses, AStmt, B); in ActOnOpenMPDistributeDirective()
13751 ArrayRef<OMPClause *> Clauses, Stmt *AStmt, SourceLocation StartLoc, in ActOnOpenMPDistributeParallelForDirective() argument
13753 if (!AStmt) in ActOnOpenMPDistributeParallelForDirective()
13756 auto *CS = cast<CapturedStmt>(AStmt); in ActOnOpenMPDistributeParallelForDirective()
13790 Context, StartLoc, EndLoc, NestedLoopCount, Clauses, AStmt, B, in ActOnOpenMPDistributeParallelForDirective()
13795 ArrayRef<OMPClause *> Clauses, Stmt *AStmt, SourceLocation StartLoc, in ActOnOpenMPDistributeParallelForSimdDirective() argument
13797 if (!AStmt) in ActOnOpenMPDistributeParallelForSimdDirective()
13800 auto *CS = cast<CapturedStmt>(AStmt); in ActOnOpenMPDistributeParallelForSimdDirective()
13848 Context, StartLoc, EndLoc, NestedLoopCount, Clauses, AStmt, B); in ActOnOpenMPDistributeParallelForSimdDirective()
13852 ArrayRef<OMPClause *> Clauses, Stmt *AStmt, SourceLocation StartLoc, in ActOnOpenMPDistributeSimdDirective() argument
13854 if (!AStmt) in ActOnOpenMPDistributeSimdDirective()
13857 auto *CS = cast<CapturedStmt>(AStmt); in ActOnOpenMPDistributeSimdDirective()
13904 NestedLoopCount, Clauses, AStmt, B); in ActOnOpenMPDistributeSimdDirective()
13908 ArrayRef<OMPClause *> Clauses, Stmt *AStmt, SourceLocation StartLoc, in ActOnOpenMPTargetParallelForSimdDirective() argument
13910 if (!AStmt) in ActOnOpenMPTargetParallelForSimdDirective()
13913 auto *CS = cast<CapturedStmt>(AStmt); in ActOnOpenMPTargetParallelForSimdDirective()
13959 Context, StartLoc, EndLoc, NestedLoopCount, Clauses, AStmt, B); in ActOnOpenMPTargetParallelForSimdDirective()
13963 ArrayRef<OMPClause *> Clauses, Stmt *AStmt, SourceLocation StartLoc, in ActOnOpenMPTargetSimdDirective() argument
13965 if (!AStmt) in ActOnOpenMPTargetSimdDirective()
13968 auto *CS = cast<CapturedStmt>(AStmt); in ActOnOpenMPTargetSimdDirective()
14015 NestedLoopCount, Clauses, AStmt, B); in ActOnOpenMPTargetSimdDirective()
14019 ArrayRef<OMPClause *> Clauses, Stmt *AStmt, SourceLocation StartLoc, in ActOnOpenMPTeamsDistributeDirective() argument
14021 if (!AStmt) in ActOnOpenMPTeamsDistributeDirective()
14024 auto *CS = cast<CapturedStmt>(AStmt); in ActOnOpenMPTeamsDistributeDirective()
14060 Context, StartLoc, EndLoc, NestedLoopCount, Clauses, AStmt, B); in ActOnOpenMPTeamsDistributeDirective()
14064 ArrayRef<OMPClause *> Clauses, Stmt *AStmt, SourceLocation StartLoc, in ActOnOpenMPTeamsDistributeSimdDirective() argument
14066 if (!AStmt) in ActOnOpenMPTeamsDistributeSimdDirective()
14069 auto *CS = cast<CapturedStmt>(AStmt); in ActOnOpenMPTeamsDistributeSimdDirective()
14121 Context, StartLoc, EndLoc, NestedLoopCount, Clauses, AStmt, B); in ActOnOpenMPTeamsDistributeSimdDirective()
14125 ArrayRef<OMPClause *> Clauses, Stmt *AStmt, SourceLocation StartLoc, in ActOnOpenMPTeamsDistributeParallelForSimdDirective() argument
14127 if (!AStmt) in ActOnOpenMPTeamsDistributeParallelForSimdDirective()
14130 auto *CS = cast<CapturedStmt>(AStmt); in ActOnOpenMPTeamsDistributeParallelForSimdDirective()
14183 Context, StartLoc, EndLoc, NestedLoopCount, Clauses, AStmt, B); in ActOnOpenMPTeamsDistributeParallelForSimdDirective()
14187 ArrayRef<OMPClause *> Clauses, Stmt *AStmt, SourceLocation StartLoc, in ActOnOpenMPTeamsDistributeParallelForDirective() argument
14189 if (!AStmt) in ActOnOpenMPTeamsDistributeParallelForDirective()
14192 auto *CS = cast<CapturedStmt>(AStmt); in ActOnOpenMPTeamsDistributeParallelForDirective()
14231 Context, StartLoc, EndLoc, NestedLoopCount, Clauses, AStmt, B, in ActOnOpenMPTeamsDistributeParallelForDirective()
14236 Stmt *AStmt, in ActOnOpenMPTargetTeamsDirective() argument
14239 if (!AStmt) in ActOnOpenMPTargetTeamsDirective()
14242 auto *CS = cast<CapturedStmt>(AStmt); in ActOnOpenMPTargetTeamsDirective()
14263 AStmt); in ActOnOpenMPTargetTeamsDirective()
14267 ArrayRef<OMPClause *> Clauses, Stmt *AStmt, SourceLocation StartLoc, in ActOnOpenMPTargetTeamsDistributeDirective() argument
14269 if (!AStmt) in ActOnOpenMPTargetTeamsDistributeDirective()
14272 auto *CS = cast<CapturedStmt>(AStmt); in ActOnOpenMPTargetTeamsDistributeDirective()
14306 Context, StartLoc, EndLoc, NestedLoopCount, Clauses, AStmt, B); in ActOnOpenMPTargetTeamsDistributeDirective()
14310 ArrayRef<OMPClause *> Clauses, Stmt *AStmt, SourceLocation StartLoc, in ActOnOpenMPTargetTeamsDistributeParallelForDirective() argument
14312 if (!AStmt) in ActOnOpenMPTargetTeamsDistributeParallelForDirective()
14315 auto *CS = cast<CapturedStmt>(AStmt); in ActOnOpenMPTargetTeamsDistributeParallelForDirective()
14360 Context, StartLoc, EndLoc, NestedLoopCount, Clauses, AStmt, B, in ActOnOpenMPTargetTeamsDistributeParallelForDirective()
14365 ArrayRef<OMPClause *> Clauses, Stmt *AStmt, SourceLocation StartLoc, in ActOnOpenMPTargetTeamsDistributeParallelForSimdDirective() argument
14367 if (!AStmt) in ActOnOpenMPTargetTeamsDistributeParallelForSimdDirective()
14370 auto *CS = cast<CapturedStmt>(AStmt); in ActOnOpenMPTargetTeamsDistributeParallelForSimdDirective()
14420 Context, StartLoc, EndLoc, NestedLoopCount, Clauses, AStmt, B); in ActOnOpenMPTargetTeamsDistributeParallelForSimdDirective()
14424 ArrayRef<OMPClause *> Clauses, Stmt *AStmt, SourceLocation StartLoc, in ActOnOpenMPTargetTeamsDistributeSimdDirective() argument
14426 if (!AStmt) in ActOnOpenMPTargetTeamsDistributeSimdDirective()
14429 auto *CS = cast<CapturedStmt>(AStmt); in ActOnOpenMPTargetTeamsDistributeSimdDirective()
14477 Context, StartLoc, EndLoc, NestedLoopCount, Clauses, AStmt, B); in ActOnOpenMPTargetTeamsDistributeSimdDirective()
14481 OpenMPDirectiveKind Kind, Stmt *AStmt, int NumLoops, in checkTransformableLoopNest() argument
14488 AStmt->IgnoreContainers(), /*TryImperfectlyNestedLoops=*/false, NumLoops, in checkTransformableLoopNest()
14530 Stmt *AStmt, SourceLocation StartLoc, in ActOnOpenMPTileDirective() argument
14542 if (!AStmt) in ActOnOpenMPTileDirective()
14550 if (!checkTransformableLoopNest(OMPD_tile, AStmt, NumLoops, LoopHelpers, Body, in ActOnOpenMPTileDirective()
14557 NumLoops, AStmt, nullptr, nullptr); in ActOnOpenMPTileDirective()
14736 AStmt, Inner, in ActOnOpenMPTileDirective()
14741 Stmt *AStmt, in ActOnOpenMPUnrollDirective() argument
14745 if (!AStmt) in ActOnOpenMPUnrollDirective()
14764 if (!checkTransformableLoopNest(OMPD_unroll, AStmt, NumLoops, LoopHelpers, in ActOnOpenMPUnrollDirective()
14772 return OMPUnrollDirective::Create(Context, StartLoc, EndLoc, Clauses, AStmt, in ActOnOpenMPUnrollDirective()
14782 Diag(AStmt->getBeginLoc(), diag::err_omp_unroll_full_variable_trip_count); in ActOnOpenMPUnrollDirective()
14793 return OMPUnrollDirective::Create(Context, StartLoc, EndLoc, Clauses, AStmt, in ActOnOpenMPUnrollDirective()
15014 return OMPUnrollDirective::Create(Context, StartLoc, EndLoc, Clauses, AStmt, in ActOnOpenMPUnrollDirective()