clang
3.7.0
|
This represents clause 'reduction' in the '#pragma omp ...' directives. More...
#include <OpenMPClause.h>
Public Types | |
typedef MutableArrayRef< Expr * > ::iterator | helper_expr_iterator |
typedef ArrayRef< const Expr * > ::iterator | helper_expr_const_iterator |
typedef llvm::iterator_range < helper_expr_iterator > | helper_expr_range |
typedef llvm::iterator_range < helper_expr_const_iterator > | helper_expr_const_range |
![]() | |
typedef MutableArrayRef< Expr * > ::iterator | varlist_iterator |
typedef ArrayRef< const Expr * > ::iterator | varlist_const_iterator |
typedef llvm::iterator_range < varlist_iterator > | varlist_range |
typedef llvm::iterator_range < varlist_const_iterator > | varlist_const_range |
Static Public Member Functions | |
static OMPReductionClause * | Create (const ASTContext &C, SourceLocation StartLoc, SourceLocation LParenLoc, SourceLocation ColonLoc, SourceLocation EndLoc, ArrayRef< Expr * > VL, NestedNameSpecifierLoc QualifierLoc, const DeclarationNameInfo &NameInfo, ArrayRef< Expr * > LHSExprs, ArrayRef< Expr * > RHSExprs, ArrayRef< Expr * > ReductionOps) |
Creates clause with a list of variables VL. More... | |
static OMPReductionClause * | CreateEmpty (const ASTContext &C, unsigned N) |
Creates an empty clause with the place for N variables. More... | |
static bool | classof (const OMPClause *T) |
![]() | |
static bool | classof (const OMPClause *) |
Friends | |
class | OMPClauseReader |
Additional Inherited Members | |
![]() | |
MutableArrayRef< Expr * > | getVarRefs () |
Fetches list of variables associated with this clause. More... | |
void | setVarRefs (ArrayRef< Expr * > VL) |
Sets the list of variables for this clause. More... | |
OMPVarListClause (OpenMPClauseKind K, SourceLocation StartLoc, SourceLocation LParenLoc, SourceLocation EndLoc, unsigned N) | |
Build a clause with N variables. More... | |
![]() | |
OMPClause (OpenMPClauseKind K, SourceLocation StartLoc, SourceLocation EndLoc) | |
This represents clause 'reduction' in the '#pragma omp ...' directives.
In this example directive '#pragma omp parallel' has clause 'reduction' with operator '+' and the variables 'a' and 'b'.
Definition at line 1413 of file OpenMPClause.h.
typedef ArrayRef<const Expr *>::iterator clang::OMPReductionClause::helper_expr_const_iterator |
Definition at line 1548 of file OpenMPClause.h.
typedef llvm::iterator_range<helper_expr_const_iterator> clang::OMPReductionClause::helper_expr_const_range |
Definition at line 1551 of file OpenMPClause.h.
typedef MutableArrayRef<Expr *>::iterator clang::OMPReductionClause::helper_expr_iterator |
Definition at line 1547 of file OpenMPClause.h.
typedef llvm::iterator_range<helper_expr_iterator> clang::OMPReductionClause::helper_expr_range |
Definition at line 1549 of file OpenMPClause.h.
|
inline |
Definition at line 1574 of file OpenMPClause.h.
References clang::OMPVarListClause< OMPReductionClause >::varlist_begin(), and clang::OMPVarListClause< OMPReductionClause >::varlist_end().
Definition at line 1579 of file OpenMPClause.h.
References clang::OMPClause::getClauseKind().
|
static |
Creates clause with a list of variables VL.
StartLoc | Starting location of the clause. |
LParenLoc | Location of '('. |
ColonLoc | Location of ':'. |
EndLoc | Ending location of the clause. |
VL | The variables in the clause. |
QualifierLoc | The nested-name qualifier with location information |
NameInfo | The full name info for reduction identifier. |
LHSExprs | List of helper expressions for proper generation of assignment operation required for copyprivate clause. This list represents LHSs of the reduction expressions. |
RHSExprs | List of helper expressions for proper generation of assignment operation required for copyprivate clause. This list represents RHSs of the reduction expressions. Also, variables in these expressions are used for proper initialization of reduction copies. |
ReductionOps | List of helper expressions that represents reduction expressions: LHSExprs binop RHSExprs;
operator binop(LHSExpr, RHSExpr);
<CutomReduction>(LHSExpr, RHSExpr);
|
Definition at line 1543 of file Stmt.cpp.
References clang::ASTContext::Allocate(), and clang::OMPVarListClause< T >::setVarRefs().
Referenced by clang::Sema::ActOnOpenMPReductionClause().
|
static |
Creates an empty clause with the place for N variables.
C | AST context. |
N | The number of variables. |
Definition at line 1561 of file Stmt.cpp.
References clang::ASTContext::Allocate().
Referenced by clang::OMPClauseReader::readClause().
|
inline |
Gets location of ':' symbol in clause.
Definition at line 1541 of file OpenMPClause.h.
References ColonLoc.
|
inline |
Gets the name info for specified reduction identifier.
Definition at line 1543 of file OpenMPClause.h.
|
inline |
Gets the nested name specifier.
Definition at line 1545 of file OpenMPClause.h.
|
inline |
Definition at line 1553 of file OpenMPClause.h.
|
inline |
Definition at line 1556 of file OpenMPClause.h.
|
inline |
Definition at line 1565 of file OpenMPClause.h.
|
inline |
Definition at line 1569 of file OpenMPClause.h.
|
inline |
Definition at line 1559 of file OpenMPClause.h.
|
inline |
Definition at line 1562 of file OpenMPClause.h.
|
friend |
Definition at line 1414 of file OpenMPClause.h.