clang 20.0.0git
|
This represents '#pragma omp distribute parallel for simd' composite directive. More...
#include "clang/AST/StmtOpenMP.h"
Static Public Member Functions | |
static OMPDistributeParallelForSimdDirective * | Create (const ASTContext &C, SourceLocation StartLoc, SourceLocation EndLoc, unsigned CollapsedNum, ArrayRef< OMPClause * > Clauses, Stmt *AssociatedStmt, const HelperExprs &Exprs) |
Creates directive with a list of Clauses. | |
static OMPDistributeParallelForSimdDirective * | CreateEmpty (const ASTContext &C, unsigned NumClauses, unsigned CollapsedNum, EmptyShell) |
Creates an empty directive with the place for NumClauses clauses. | |
static bool | classof (const Stmt *T) |
![]() | |
static bool | classof (const Stmt *T) |
![]() | |
static Stmt * | tryToFindNextInnerLoop (Stmt *CurStmt, bool TryImperfectlyNestedLoops) |
Try to find the next loop sub-statement in the specified statement CurStmt . | |
static const Stmt * | tryToFindNextInnerLoop (const Stmt *CurStmt, bool TryImperfectlyNestedLoops) |
static bool | doForAllLoops (Stmt *CurStmt, bool TryImperfectlyNestedLoops, unsigned NumLoops, llvm::function_ref< bool(unsigned, Stmt *)> Callback, llvm::function_ref< void(OMPLoopTransformationDirective *)> OnTransformationCallback) |
Calls the specified callback function for all the loops in CurStmt , from the outermost to the innermost. | |
static bool | doForAllLoops (const Stmt *CurStmt, bool TryImperfectlyNestedLoops, unsigned NumLoops, llvm::function_ref< bool(unsigned, const Stmt *)> Callback, llvm::function_ref< void(const OMPLoopTransformationDirective *)> OnTransformationCallback) |
static bool | doForAllLoops (Stmt *CurStmt, bool TryImperfectlyNestedLoops, unsigned NumLoops, llvm::function_ref< bool(unsigned, Stmt *)> Callback) |
Calls the specified callback function for all the loops in CurStmt , from the outermost to the innermost. | |
static bool | doForAllLoops (const Stmt *CurStmt, bool TryImperfectlyNestedLoops, unsigned NumLoops, llvm::function_ref< bool(unsigned, const Stmt *)> Callback) |
static void | doForAllLoopsBodies (Stmt *CurStmt, bool TryImperfectlyNestedLoops, unsigned NumLoops, llvm::function_ref< void(unsigned, Stmt *, Stmt *)> Callback) |
Calls the specified callback function for all the loop bodies in CurStmt , from the outermost loop to the innermost. | |
static void | doForAllLoopsBodies (const Stmt *CurStmt, bool TryImperfectlyNestedLoops, unsigned NumLoops, llvm::function_ref< void(unsigned, const Stmt *, const Stmt *)> Callback) |
static bool | classof (const Stmt *T) |
![]() | |
static llvm::iterator_range< used_clauses_child_iterator > | used_clauses_children (ArrayRef< OMPClause * > Clauses) |
template<typename SpecificClause > | |
static llvm::iterator_range< specific_clause_iterator< SpecificClause > > | getClausesOfKind (ArrayRef< OMPClause * > Clauses) |
template<typename SpecificClause > | |
static const SpecificClause * | getSingleClause (ArrayRef< OMPClause * > Clauses) |
Gets a single clause of the specified kind associated with the current directive iff there is only one clause of this kind (and assertion is fired if there is more than one clause is associated with the directive). | |
static bool | classof (const Stmt *S) |
![]() | |
static void | addStmtClass (const StmtClass s) |
static void | EnableStatistics () |
static void | PrintStats () |
static Likelihood | getLikelihood (ArrayRef< const Attr * > Attrs) |
static Likelihood | getLikelihood (const Stmt *S) |
static const Attr * | getLikelihoodAttr (const Stmt *S) |
static Likelihood | getLikelihood (const Stmt *Then, const Stmt *Else) |
static std::tuple< bool, const Attr *, const Attr * > | determineLikelihoodConflict (const Stmt *Then, const Stmt *Else) |
Friends | |
class | ASTStmtReader |
class | OMPExecutableDirective |
This represents '#pragma omp distribute parallel for simd' composite directive.
In this example directive '#pragma omp distribute parallel for simd' has clause 'private' with the variables 'x'
Definition at line 4643 of file StmtOpenMP.h.
Definition at line 4695 of file StmtOpenMP.h.
References clang::T.
|
static |
Creates directive with a list of Clauses.
C | AST context. |
StartLoc | Starting location of the directive kind. |
EndLoc | Ending Location of the directive. |
CollapsedNum | Number of collapsed loops. |
Clauses | List of clauses. |
AssociatedStmt | Statement, associated with the directive. |
Exprs | Helper expressions for CodeGen. |
Definition at line 1707 of file StmtOpenMP.cpp.
References clang::C, clang::OMPLoopBasedDirective::HelperExprs::CalcLastIteration, clang::OMPLoopBasedDirective::DistCombinedHelperExprs::Cond, clang::OMPLoopBasedDirective::HelperExprs::Cond, clang::OMPLoopBasedDirective::HelperExprs::Counters, clang::OMPLoopBasedDirective::HelperExprs::DependentCounters, clang::OMPLoopBasedDirective::HelperExprs::DependentInits, clang::OMPLoopBasedDirective::HelperExprs::DistCombinedFields, clang::OMPLoopBasedDirective::DistCombinedHelperExprs::DistCond, clang::OMPLoopBasedDirective::HelperExprs::DistInc, clang::OMPLoopBasedDirective::DistCombinedHelperExprs::EUB, clang::OMPLoopBasedDirective::HelperExprs::EUB, clang::OMPLoopBasedDirective::HelperExprs::Finals, clang::OMPLoopBasedDirective::HelperExprs::FinalsConditions, clang::OMPLoopBasedDirective::HelperExprs::IL, clang::OMPLoopBasedDirective::HelperExprs::Inc, clang::OMPLoopBasedDirective::DistCombinedHelperExprs::Init, clang::OMPLoopBasedDirective::HelperExprs::Init, clang::OMPLoopBasedDirective::HelperExprs::Inits, clang::OMPLoopBasedDirective::HelperExprs::IterationVarRef, clang::OMPLoopBasedDirective::HelperExprs::LastIteration, clang::OMPLoopBasedDirective::DistCombinedHelperExprs::LB, clang::OMPLoopBasedDirective::HelperExprs::LB, clang::OMPLoopBasedDirective::DistCombinedHelperExprs::NLB, clang::OMPLoopBasedDirective::HelperExprs::NLB, clang::OMPLoopBasedDirective::DistCombinedHelperExprs::NUB, clang::OMPLoopBasedDirective::HelperExprs::NUB, clang::OMPLoopBasedDirective::HelperExprs::NumIterations, clang::OMPLoopDirective::numLoopChildren(), clang::OMPLoopBasedDirective::DistCombinedHelperExprs::ParForInDistCond, clang::OMPLoopBasedDirective::HelperExprs::PreCond, clang::OMPLoopBasedDirective::HelperExprs::PreInits, clang::OMPLoopBasedDirective::HelperExprs::PrevEUB, clang::OMPLoopBasedDirective::HelperExprs::PrevLB, clang::OMPLoopBasedDirective::HelperExprs::PrevUB, clang::OMPLoopBasedDirective::HelperExprs::PrivateCounters, clang::OMPLoopBasedDirective::HelperExprs::ST, clang::OMPLoopBasedDirective::DistCombinedHelperExprs::UB, clang::OMPLoopBasedDirective::HelperExprs::UB, and clang::OMPLoopBasedDirective::HelperExprs::Updates.
Referenced by clang::SemaOpenMP::ActOnOpenMPDistributeParallelForSimdDirective().
|
static |
Creates an empty directive with the place for NumClauses clauses.
C | AST context. |
CollapsedNum | Number of collapsed nested loops. |
NumClauses | Number of clauses. |
Definition at line 1756 of file StmtOpenMP.cpp.
References clang::C, and clang::OMPLoopDirective::numLoopChildren().
|
friend |
Definition at line 4644 of file StmtOpenMP.h.
|
friend |
Definition at line 4645 of file StmtOpenMP.h.