clang 20.0.0git
Public Member Functions | Static Public Member Functions | Friends | List of all members
clang::OMPTargetTeamsGenericLoopDirective Class Referencefinal

This represents '#pragma omp target teams loop' directive. More...

#include "clang/AST/StmtOpenMP.h"

Inheritance diagram for clang::OMPTargetTeamsGenericLoopDirective:
Inheritance graph
[legend]

Public Member Functions

bool canBeParallelFor () const
 Return true if current loop directive's associated loop can be a parallel for.
 
- Public Member Functions inherited from clang::OMPLoopDirective
ExprgetIterationVariable () const
 
ExprgetLastIteration () const
 
ExprgetCalcLastIteration () const
 
ExprgetPreCond () const
 
ExprgetCond () const
 
ExprgetInit () const
 
ExprgetInc () const
 
const StmtgetPreInits () const
 
StmtgetPreInits ()
 
ExprgetIsLastIterVariable () const
 
ExprgetLowerBoundVariable () const
 
ExprgetUpperBoundVariable () const
 
ExprgetStrideVariable () const
 
ExprgetEnsureUpperBound () const
 
ExprgetNextLowerBound () const
 
ExprgetNextUpperBound () const
 
ExprgetNumIterations () const
 
ExprgetPrevLowerBoundVariable () const
 
ExprgetPrevUpperBoundVariable () const
 
ExprgetDistInc () const
 
ExprgetPrevEnsureUpperBound () const
 
ExprgetCombinedLowerBoundVariable () const
 
ExprgetCombinedUpperBoundVariable () const
 
ExprgetCombinedEnsureUpperBound () const
 
ExprgetCombinedInit () const
 
ExprgetCombinedCond () const
 
ExprgetCombinedNextLowerBound () const
 
ExprgetCombinedNextUpperBound () const
 
ExprgetCombinedDistCond () const
 
ExprgetCombinedParForInDistCond () const
 
StmtgetBody ()
 
const StmtgetBody () const
 
ArrayRef< Expr * > counters ()
 
ArrayRef< Expr * > counters () const
 
ArrayRef< Expr * > private_counters ()
 
ArrayRef< Expr * > private_counters () const
 
ArrayRef< Expr * > inits ()
 
ArrayRef< Expr * > inits () const
 
ArrayRef< Expr * > updates ()
 
ArrayRef< Expr * > updates () const
 
ArrayRef< Expr * > finals ()
 
ArrayRef< Expr * > finals () const
 
ArrayRef< Expr * > dependent_counters ()
 
ArrayRef< Expr * > dependent_counters () const
 
ArrayRef< Expr * > dependent_inits ()
 
ArrayRef< Expr * > dependent_inits () const
 
ArrayRef< Expr * > finals_conditions ()
 
ArrayRef< Expr * > finals_conditions () const
 
- Public Member Functions inherited from clang::OMPLoopBasedDirective
unsigned getLoopsNumber () const
 Get number of collapsed loops.
 
- Public Member Functions inherited from clang::OMPExecutableDirective
template<typename SpecificClause >
llvm::iterator_range< specific_clause_iterator< SpecificClause > > getClausesOfKind () const
 
template<typename SpecificClause >
const SpecificClause * getSingleClause () const
 
template<typename SpecificClause >
bool hasClausesOfKind () const
 Returns true if the current directive has one or more clauses of a specific kind.
 
SourceLocation getBeginLoc () const
 Returns starting location of directive kind.
 
SourceLocation getEndLoc () const
 Returns ending location of directive.
 
void setLocStart (SourceLocation Loc)
 Set starting location of directive kind.
 
void setLocEnd (SourceLocation Loc)
 Set ending location of directive.
 
unsigned getNumClauses () const
 Get number of clauses.
 
OMPClausegetClause (unsigned I) const
 Returns specified clause.
 
bool hasAssociatedStmt () const
 Returns true if directive has associated statement.
 
const StmtgetAssociatedStmt () const
 Returns statement associated with the directive.
 
StmtgetAssociatedStmt ()
 
const CapturedStmtgetCapturedStmt (OpenMPDirectiveKind RegionKind) const
 Returns the captured statement associated with the component region within the (combined) directive.
 
CapturedStmtgetInnermostCapturedStmt ()
 Get innermost captured statement for the construct.
 
const CapturedStmtgetInnermostCapturedStmt () const
 
OpenMPDirectiveKind getDirectiveKind () const
 
child_range children ()
 
const_child_range children () const
 
ArrayRef< OMPClause * > clauses () const
 
bool isStandaloneDirective () const
 Returns whether or not this is a Standalone directive.
 
const StmtgetStructuredBlock () const
 Returns the AST node representing OpenMP structured-block of this OpenMP executable directive, Prerequisite: Executable Directive must not be Standalone directive.
 
StmtgetStructuredBlock ()
 
const StmtgetRawStmt () const
 
StmtgetRawStmt ()
 
- Public Member Functions inherited from clang::Stmt
void * operator new (size_t bytes, const ASTContext &C, unsigned alignment=8)
 
void * operator new (size_t bytes, const ASTContext *C, unsigned alignment=8)
 
void * operator new (size_t bytes, void *mem) noexcept
 
void operator delete (void *, const ASTContext &, unsigned) noexcept
 
void operator delete (void *, const ASTContext *, unsigned) noexcept
 
void operator delete (void *, size_t) noexcept
 
void operator delete (void *, void *) noexcept
 
 Stmt ()=delete
 
 Stmt (const Stmt &)=delete
 
 Stmt (Stmt &&)=delete
 
Stmtoperator= (const Stmt &)=delete
 
Stmtoperator= (Stmt &&)=delete
 
 Stmt (StmtClass SC)
 
StmtClass getStmtClass () const
 
const char * getStmtClassName () const
 
SourceRange getSourceRange () const LLVM_READONLY
 SourceLocation tokens are not useful in isolation - they are low level value objects created/interpreted by SourceManager.
 
SourceLocation getBeginLoc () const LLVM_READONLY
 
SourceLocation getEndLoc () const LLVM_READONLY
 
void dump () const
 Dumps the specified AST fragment and all subtrees to llvm::errs().
 
void dump (raw_ostream &OS, const ASTContext &Context) const
 
int64_t getID (const ASTContext &Context) const
 
void dumpColor () const
 dumpColor - same as dump(), but forces color highlighting.
 
void dumpPretty (const ASTContext &Context) const
 dumpPretty/printPretty - These two methods do a "pretty print" of the AST back to its original source language syntax.
 
void printPretty (raw_ostream &OS, PrinterHelper *Helper, const PrintingPolicy &Policy, unsigned Indentation=0, StringRef NewlineSymbol="\n", const ASTContext *Context=nullptr) const
 
void printPrettyControlled (raw_ostream &OS, PrinterHelper *Helper, const PrintingPolicy &Policy, unsigned Indentation=0, StringRef NewlineSymbol="\n", const ASTContext *Context=nullptr) const
 
void printJson (raw_ostream &Out, PrinterHelper *Helper, const PrintingPolicy &Policy, bool AddQuotes) const
 Pretty-prints in JSON format.
 
void viewAST () const
 viewAST - Visualize an AST rooted at this Stmt* using GraphViz.
 
StmtIgnoreContainers (bool IgnoreCaptured=false)
 Skip no-op (attributed, compound) container stmts and skip captured stmt at the top, if IgnoreCaptured is true.
 
const StmtIgnoreContainers (bool IgnoreCaptured=false) const
 
const StmtstripLabelLikeStatements () const
 Strip off all label-like statements.
 
StmtstripLabelLikeStatements ()
 
child_range children ()
 
const_child_range children () const
 
child_iterator child_begin ()
 
child_iterator child_end ()
 
const_child_iterator child_begin () const
 
const_child_iterator child_end () const
 
void Profile (llvm::FoldingSetNodeID &ID, const ASTContext &Context, bool Canonical, bool ProfileLambdaExpr=false) const
 Produce a unique representation of the given statement.
 
void ProcessODRHash (llvm::FoldingSetNodeID &ID, ODRHash &Hash) const
 Calculate a unique representation for a statement that is stable across compiler invocations.
 

Static Public Member Functions

static OMPTargetTeamsGenericLoopDirectiveCreate (const ASTContext &C, SourceLocation StartLoc, SourceLocation EndLoc, unsigned CollapsedNum, ArrayRef< OMPClause * > Clauses, Stmt *AssociatedStmt, const HelperExprs &Exprs, bool CanBeParallelFor)
 Creates directive with a list of Clauses.
 
static OMPTargetTeamsGenericLoopDirectiveCreateEmpty (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 Public Member Functions inherited from clang::OMPLoopDirective
static bool classof (const Stmt *T)
 
- Static Public Member Functions inherited from clang::OMPLoopBasedDirective
static StmttryToFindNextInnerLoop (Stmt *CurStmt, bool TryImperfectlyNestedLoops)
 Try to find the next loop sub-statement in the specified statement CurStmt.
 
static const StmttryToFindNextInnerLoop (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