clang 20.0.0git
|
This represents clause 'linear' in the '#pragma omp ...' directives. More...
#include "clang/AST/OpenMPClause.h"
Public Member Functions | |
void | setModifier (OpenMPLinearClauseKind Kind) |
Set modifier. | |
OpenMPLinearClauseKind | getModifier () const |
Return modifier. | |
void | setModifierLoc (SourceLocation Loc) |
Set modifier location. | |
SourceLocation | getModifierLoc () const |
Return modifier location. | |
void | setColonLoc (SourceLocation Loc) |
Sets the location of ':'. | |
void | setStepModifierLoc (SourceLocation Loc) |
Sets the location of 'step' modifier. | |
SourceLocation | getColonLoc () const |
Returns the location of ':'. | |
SourceLocation | getStepModifierLoc () const |
Returns the location of 'step' modifier. | |
Expr * | getStep () |
Returns linear step. | |
const Expr * | getStep () const |
Returns linear step. | |
Expr * | getCalcStep () |
Returns expression to calculate linear step. | |
const Expr * | getCalcStep () const |
Returns expression to calculate linear step. | |
void | setUpdates (ArrayRef< Expr * > UL) |
Sets the list of update expressions for linear variables. | |
void | setFinals (ArrayRef< Expr * > FL) |
Sets the list of final update expressions for linear variables. | |
void | setUsedExprs (ArrayRef< Expr * > UE) |
Sets the list of used expressions for the linear clause. | |
privates_range | privates () |
privates_const_range | privates () const |
inits_range | inits () |
inits_const_range | inits () const |
updates_range | updates () |
updates_const_range | updates () const |
finals_range | finals () |
finals_const_range | finals () const |
used_expressions_range | used_expressions () |
used_expressions_const_range | used_expressions () const |
child_range | children () |
const_child_range | children () const |
child_range | used_children () |
const_child_range | used_children () const |
Public Member Functions inherited from clang::OMPVarListClause< OMPLinearClause > | |
ArrayRef< const Expr * > | getVarRefs () const |
Fetches list of all variables in the clause. | |
unsigned | varlist_size () const |
bool | varlist_empty () const |
varlist_range | varlist () |
varlist_const_range | varlist () const |
varlist_iterator | varlist_begin () |
varlist_const_iterator | varlist_begin () const |
varlist_iterator | varlist_end () |
varlist_const_iterator | varlist_end () const |
void | setLParenLoc (SourceLocation Loc) |
Sets the location of '('. | |
SourceLocation | getLParenLoc () const |
Returns the location of '('. | |
Public Member Functions inherited from clang::OMPClause | |
SourceLocation | getBeginLoc () const |
Returns the starting location of the clause. | |
SourceLocation | getEndLoc () const |
Returns the ending location of the clause. | |
void | setLocStart (SourceLocation Loc) |
Sets the starting location of the clause. | |
void | setLocEnd (SourceLocation Loc) |
Sets the ending location of the clause. | |
OpenMPClauseKind | getClauseKind () const |
Returns kind of OpenMP clause (private, shared, reduction, etc.). | |
bool | isImplicit () const |
child_range | children () |
const_child_range | children () const |
child_range | used_children () |
Get the iterator range for the expressions used in the clauses. | |
const_child_range | used_children () const |
Public Member Functions inherited from clang::OMPClauseWithPostUpdate | |
const Expr * | getPostUpdateExpr () const |
Get post-update expression for the clause. | |
Expr * | getPostUpdateExpr () |
Get post-update expression for the clause. | |
Public Member Functions inherited from clang::OMPClauseWithPreInit | |
const Stmt * | getPreInitStmt () const |
Get pre-initialization statement for the clause. | |
Stmt * | getPreInitStmt () |
Get pre-initialization statement for the clause. | |
OpenMPDirectiveKind | getCaptureRegion () const |
Get capture region for the stmt in the clause. | |
Static Public Member Functions | |
static OMPLinearClause * | Create (const ASTContext &C, SourceLocation StartLoc, SourceLocation LParenLoc, OpenMPLinearClauseKind Modifier, SourceLocation ModifierLoc, SourceLocation ColonLoc, SourceLocation StepModifierLoc, SourceLocation EndLoc, ArrayRef< Expr * > VL, ArrayRef< Expr * > PL, ArrayRef< Expr * > IL, Expr *Step, Expr *CalcStep, Stmt *PreInit, Expr *PostUpdate) |
Creates clause with a list of variables VL and a linear step Step. | |
static OMPLinearClause * | CreateEmpty (const ASTContext &C, unsigned NumVars) |
Creates an empty clause with the place for NumVars variables. | |
static bool | classof (const OMPClause *T) |
Static Public Member Functions inherited from clang::OMPClause | |
static bool | classof (const OMPClause *) |
Static Public Member Functions inherited from clang::OMPClauseWithPostUpdate | |
static OMPClauseWithPostUpdate * | get (OMPClause *C) |
static const OMPClauseWithPostUpdate * | get (const OMPClause *C) |
Static Public Member Functions inherited from clang::OMPClauseWithPreInit | |
static OMPClauseWithPreInit * | get (OMPClause *C) |
static const OMPClauseWithPreInit * | get (const OMPClause *C) |
Friends | |
class | OMPClauseReader |
Additional Inherited Members | |
Protected Member Functions inherited from clang::OMPVarListClause< OMPLinearClause > | |
OMPVarListClause (OpenMPClauseKind K, SourceLocation StartLoc, SourceLocation LParenLoc, SourceLocation EndLoc, unsigned N) | |
Build a clause with N variables. | |
MutableArrayRef< Expr * > | getVarRefs () |
Fetches list of variables associated with this clause. | |
void | setVarRefs (ArrayRef< Expr * > VL) |
Sets the list of variables for this clause. | |
Protected Member Functions inherited from clang::OMPClause | |
OMPClause (OpenMPClauseKind K, SourceLocation StartLoc, SourceLocation EndLoc) | |
Protected Member Functions inherited from clang::OMPClauseWithPostUpdate | |
OMPClauseWithPostUpdate (const OMPClause *This) | |
void | setPostUpdateExpr (Expr *S) |
Set pre-initialization statement for the clause. | |
Protected Member Functions inherited from clang::OMPClauseWithPreInit | |
OMPClauseWithPreInit (const OMPClause *This) | |
void | setPreInitStmt (Stmt *S, OpenMPDirectiveKind ThisRegion=llvm::omp::OMPD_unknown) |
Set pre-initialization statement for the clause. | |
This represents clause 'linear' in the '#pragma omp ...' directives.
In this example directive '#pragma omp simd' has clause 'linear' with variables 'a', 'b' and linear step '2'.
Definition at line 4265 of file OpenMPClause.h.
using clang::OMPLinearClause::finals_const_iterator = ArrayRef<const Expr *>::iterator |
Definition at line 4498 of file OpenMPClause.h.
using clang::OMPLinearClause::finals_const_range = llvm::iterator_range<finals_const_iterator> |
Definition at line 4500 of file OpenMPClause.h.
using clang::OMPLinearClause::finals_iterator = MutableArrayRef<Expr *>::iterator |
Definition at line 4497 of file OpenMPClause.h.
using clang::OMPLinearClause::finals_range = llvm::iterator_range<finals_iterator> |
Definition at line 4499 of file OpenMPClause.h.
using clang::OMPLinearClause::inits_const_iterator = ArrayRef<const Expr *>::iterator |
Definition at line 4472 of file OpenMPClause.h.
using clang::OMPLinearClause::inits_const_range = llvm::iterator_range<inits_const_iterator> |
Definition at line 4474 of file OpenMPClause.h.
using clang::OMPLinearClause::inits_iterator = MutableArrayRef<Expr *>::iterator |
Definition at line 4471 of file OpenMPClause.h.
using clang::OMPLinearClause::inits_range = llvm::iterator_range<inits_iterator> |
Definition at line 4473 of file OpenMPClause.h.
using clang::OMPLinearClause::privates_const_iterator = ArrayRef<const Expr *>::iterator |
Definition at line 4459 of file OpenMPClause.h.
using clang::OMPLinearClause::privates_const_range = llvm::iterator_range<privates_const_iterator> |
Definition at line 4461 of file OpenMPClause.h.
using clang::OMPLinearClause::privates_iterator = MutableArrayRef<Expr *>::iterator |
Definition at line 4458 of file OpenMPClause.h.
using clang::OMPLinearClause::privates_range = llvm::iterator_range<privates_iterator> |
Definition at line 4460 of file OpenMPClause.h.
using clang::OMPLinearClause::updates_const_iterator = ArrayRef<const Expr *>::iterator |
Definition at line 4485 of file OpenMPClause.h.
using clang::OMPLinearClause::updates_const_range = llvm::iterator_range<updates_const_iterator> |
Definition at line 4487 of file OpenMPClause.h.
using clang::OMPLinearClause::updates_iterator = MutableArrayRef<Expr *>::iterator |
Definition at line 4484 of file OpenMPClause.h.
using clang::OMPLinearClause::updates_range = llvm::iterator_range<updates_iterator> |
Definition at line 4486 of file OpenMPClause.h.
using clang::OMPLinearClause::used_expressions_const_iterator = ArrayRef<const Expr *>::iterator |
Definition at line 4511 of file OpenMPClause.h.
using clang::OMPLinearClause::used_expressions_const_range = llvm::iterator_range<used_expressions_const_iterator> |
Definition at line 4514 of file OpenMPClause.h.
using clang::OMPLinearClause::used_expressions_iterator = MutableArrayRef<Expr *>::iterator |
Definition at line 4510 of file OpenMPClause.h.
using clang::OMPLinearClause::used_expressions_range = llvm::iterator_range<used_expressions_iterator> |
Definition at line 4512 of file OpenMPClause.h.
|
inline |
Definition at line 4525 of file OpenMPClause.h.
References clang::OMPVarListClause< OMPLinearClause >::varlist_begin(), and clang::OMPVarListClause< OMPLinearClause >::varlist_end().
Referenced by children().
|
inline |
Definition at line 4530 of file OpenMPClause.h.
References children().
Definition at line 4542 of file OpenMPClause.h.
References clang::T.
|
static |
Creates clause with a list of variables VL and a linear step Step.
C | AST Context. |
StartLoc | Starting location of the clause. |
LParenLoc | Location of '('. |
Modifier | Modifier of 'linear' clause. |
ModifierLoc | Modifier location. |
ColonLoc | Location of ':'. |
StepModifierLoc | Location of 'step' modifier. |
EndLoc | Ending location of the clause. |
VL | List of references to the variables. |
PL | List of private copies of original variables. |
IL | List of initial values for the variables. |
Step | Linear step. |
CalcStep | Calculation of the linear step. |
PreInit | Statement that must be executed before entering the OpenMP region with this clause. |
PostUpdate | Expression that must be executed after exit from the OpenMP region with this clause. |
Definition at line 585 of file OpenMPClause.cpp.
References clang::C, clang::OMPClauseWithPostUpdate::setPostUpdateExpr(), clang::OMPClauseWithPreInit::setPreInitStmt(), and clang::OMPVarListClause< T >::setVarRefs().
Referenced by clang::SemaOpenMP::ActOnOpenMPLinearClause().
|
static |
Creates an empty clause with the place for NumVars variables.
C | AST context. |
NumVars | Number of variables. |
Definition at line 617 of file OpenMPClause.cpp.
References clang::C.
Referenced by clang::OMPClauseReader::readClause().
|
inline |
Definition at line 4502 of file OpenMPClause.h.
|
inline |
Definition at line 4506 of file OpenMPClause.h.
|
inline |
Returns expression to calculate linear step.
Definition at line 4442 of file OpenMPClause.h.
Referenced by FinishOpenMPLinearClause().
|
inline |
Returns expression to calculate linear step.
Definition at line 4445 of file OpenMPClause.h.
|
inline |
Returns the location of ':'.
Definition at line 4430 of file OpenMPClause.h.
|
inline |
Return modifier.
Definition at line 4415 of file OpenMPClause.h.
Referenced by FinishOpenMPLinearClause().
|
inline |
Return modifier location.
Definition at line 4421 of file OpenMPClause.h.
|
inline |
Returns linear step.
Definition at line 4436 of file OpenMPClause.h.
Referenced by FinishOpenMPLinearClause().
|
inline |
Returns linear step.
Definition at line 4439 of file OpenMPClause.h.
|
inline |
Returns the location of 'step' modifier.
Definition at line 4433 of file OpenMPClause.h.
|
inline |
Definition at line 4476 of file OpenMPClause.h.
Referenced by FinishOpenMPLinearClause().
|
inline |
Definition at line 4480 of file OpenMPClause.h.
|
inline |
Definition at line 4463 of file OpenMPClause.h.
Referenced by FinishOpenMPLinearClause().
|
inline |
Definition at line 4467 of file OpenMPClause.h.
|
inline |
Sets the list of final update expressions for linear variables.
FL | List of expressions. |
Definition at line 572 of file OpenMPClause.cpp.
References clang::OMPVarListClause< OMPLinearClause >::varlist_size().
Referenced by FinishOpenMPLinearClause().
|
inline |
|
inline |
|
inline |
Sets the location of 'step' modifier.
Definition at line 4427 of file OpenMPClause.h.
References Loc.
Sets the list of update expressions for linear variables.
UL | List of expressions. |
Definition at line 566 of file OpenMPClause.cpp.
References clang::OMPVarListClause< OMPLinearClause >::varlist_size().
Referenced by FinishOpenMPLinearClause().
Sets the list of used expressions for the linear clause.
Definition at line 578 of file OpenMPClause.cpp.
References clang::OMPVarListClause< OMPLinearClause >::varlist_size().
Referenced by FinishOpenMPLinearClause().
|
inline |
Definition at line 4489 of file OpenMPClause.h.
|
inline |
Definition at line 4493 of file OpenMPClause.h.
OMPClause::child_range OMPLinearClause::used_children | ( | ) |
Definition at line 625 of file OpenMPClause.cpp.
Referenced by used_children().
|
inline |
Definition at line 4537 of file OpenMPClause.h.
References used_children().
|
inline |
Definition at line 4517 of file OpenMPClause.h.
|
inline |
Definition at line 4521 of file OpenMPClause.h.
|
friend |
Definition at line 4269 of file OpenMPClause.h.