|
clang
5.0.0
|
This represents clause 'map' in the '#pragma omp ...' directives. More...
#include "clang/AST/OpenMPClause.h"
Public Member Functions | |
| OpenMPMapClauseKind | getMapType () const LLVM_READONLY |
| Fetches mapping kind for the clause. More... | |
| bool | isImplicitMapType () const LLVM_READONLY |
| Is this an implicit map type? We have to capture 'IsMapTypeImplicit' from the parser for more informative error messages. More... | |
| OpenMPMapClauseKind | getMapTypeModifier () const LLVM_READONLY |
| Fetches the map type modifier for the clause. More... | |
| SourceLocation | getMapLoc () const LLVM_READONLY |
| Fetches location of clause mapping kind. More... | |
| SourceLocation | getColonLoc () const |
| Get colon location. More... | |
| child_range | children () |
Public Member Functions inherited from OMPMappableExprListClause< OMPMapClause > | |
| unsigned | getUniqueDeclarationsNum () const |
| Return the number of unique base declarations in this clause. More... | |
| unsigned | getTotalComponentListNum () const |
| Return the number of lists derived from the clause expressions. More... | |
| unsigned | getTotalComponentsNum () const |
| Return the total number of components in all lists derived from the clause. More... | |
| const_component_lists_iterator | component_lists_begin () const |
| Iterators for all component lists. More... | |
| const_component_lists_iterator | component_lists_end () const |
| const_component_lists_range | component_lists () const |
| const_component_lists_iterator | decl_component_lists_begin (const ValueDecl *VD) const |
| Iterators for component lists associated with the provided declaration. More... | |
| const_component_lists_iterator | decl_component_lists_end () const |
| const_component_lists_range | decl_component_lists (const ValueDecl *VD) const |
| const_all_decls_range | all_decls () const |
| const_all_num_lists_range | all_num_lists () const |
| const_all_lists_sizes_range | all_lists_sizes () const |
| const_all_components_range | all_components () const |
Static Public Member Functions | |
| static OMPMapClause * | Create (const ASTContext &C, SourceLocation StartLoc, SourceLocation LParenLoc, SourceLocation EndLoc, ArrayRef< Expr * > Vars, ArrayRef< ValueDecl * > Declarations, MappableExprComponentListsRef ComponentLists, OpenMPMapClauseKind TypeModifier, OpenMPMapClauseKind Type, bool TypeIsImplicit, SourceLocation TypeLoc) |
| Creates clause with a list of variables VL. More... | |
| static OMPMapClause * | CreateEmpty (const ASTContext &C, unsigned NumVars, unsigned NumUniqueDeclarations, unsigned NumComponentLists, unsigned NumComponents) |
| Creates an empty clause with the place for for NumVars original expressions, NumUniqueDeclarations declarations, lists, and NumComponents expression components. More... | |
| static bool | classof (const OMPClause *T) |
Friends | |
| class | OMPClauseReader |
Additional Inherited Members | |
Public Types inherited from OMPMappableExprListClause< OMPMapClause > | |
| typedef llvm::iterator_range < const_component_lists_iterator > | const_component_lists_range |
| typedef ArrayRef< ValueDecl * > ::iterator | const_all_decls_iterator |
| Iterators to access all the declarations, number of lists, list sizes, and components. More... | |
| typedef llvm::iterator_range < const_all_decls_iterator > | const_all_decls_range |
| typedef ArrayRef< unsigned > ::iterator | const_all_num_lists_iterator |
| typedef llvm::iterator_range < const_all_num_lists_iterator > | const_all_num_lists_range |
| typedef ArrayRef< unsigned > ::iterator | const_all_lists_sizes_iterator |
| typedef llvm::iterator_range < const_all_lists_sizes_iterator > | const_all_lists_sizes_range |
| typedef ArrayRef < MappableComponent > ::iterator | const_all_components_iterator |
| typedef llvm::iterator_range < const_all_components_iterator > | const_all_components_range |
Public Types inherited from OMPClauseMappableExprCommon | |
| typedef SmallVector < MappableComponent, 8 > | MappableExprComponentList |
| typedef ArrayRef < MappableComponent > | MappableExprComponentListRef |
| typedef SmallVector < MappableExprComponentList, 8 > | MappableExprComponentLists |
| typedef ArrayRef < MappableExprComponentList > | MappableExprComponentListsRef |
Protected Member Functions inherited from OMPMappableExprListClause< OMPMapClause > | |
| MutableArrayRef< ValueDecl * > | getUniqueDeclsRef () |
| Get the unique declarations that are in the trailing objects of the class. More... | |
| ArrayRef< ValueDecl * > | getUniqueDeclsRef () const |
| Get the unique declarations that are in the trailing objects of the class. More... | |
| void | setUniqueDecls (ArrayRef< ValueDecl * > UDs) |
| Set the unique declarations that are in the trailing objects of the class. More... | |
| MutableArrayRef< unsigned > | getDeclNumListsRef () |
| Get the number of lists per declaration that are in the trailing objects of the class. More... | |
| ArrayRef< unsigned > | getDeclNumListsRef () const |
| Get the number of lists per declaration that are in the trailing objects of the class. More... | |
| void | setDeclNumLists (ArrayRef< unsigned > DNLs) |
| Set the number of lists per declaration that are in the trailing objects of the class. More... | |
| MutableArrayRef< unsigned > | getComponentListSizesRef () |
| Get the cumulative component lists sizes that are in the trailing objects of the class. More... | |
| ArrayRef< unsigned > | getComponentListSizesRef () const |
| Get the cumulative component lists sizes that are in the trailing objects of the class. More... | |
| void | setComponentListSizes (ArrayRef< unsigned > CLSs) |
| Set the cumulative component lists sizes that are in the trailing objects of the class. More... | |
| MutableArrayRef < MappableComponent > | getComponentsRef () |
| Get the components that are in the trailing objects of the class. More... | |
| ArrayRef< MappableComponent > | getComponentsRef () const |
| Get the components that are in the trailing objects of the class. More... | |
| void | setComponents (ArrayRef< MappableComponent > Components, ArrayRef< unsigned > CLSs) |
| Set the components that are in the trailing objects of the class. More... | |
| void | setClauseInfo (ArrayRef< ValueDecl * > Declarations, MappableExprComponentListsRef ComponentLists) |
| Fill the clause information from the list of declarations and associated component lists. More... | |
| OMPMappableExprListClause (OpenMPClauseKind K, SourceLocation StartLoc, SourceLocation LParenLoc, SourceLocation EndLoc, unsigned NumVars, unsigned NumUniqueDeclarations, unsigned NumComponentLists, unsigned NumComponents) | |
| Build a clause for NumUniqueDeclarations declarations, NumComponentLists total component lists, and NumComponents total components. More... | |
Static Protected Member Functions inherited from OMPClauseMappableExprCommon | |
| static unsigned | getComponentsTotalNumber (MappableExprComponentListsRef ComponentLists) |
| static unsigned | getUniqueDeclarationsTotalNumber (ArrayRef< ValueDecl * > Declarations) |
This represents clause 'map' in the '#pragma omp ...' directives.
In this example directive '#pragma omp target' has clause 'map' with the variables 'a' and 'b'.
Definition at line 3517 of file OpenMPClause.h.
|
inline |
Definition at line 3678 of file OpenMPClause.h.
Definition at line 3674 of file OpenMPClause.h.
|
static |
Creates clause with a list of variables VL.
| C | AST context. |
| StartLoc | Starting location of the clause. |
| EndLoc | Ending location of the clause. |
| Vars | The original expression used in the clause. |
| Declarations | Declarations used in the clause. |
| ComponentLists | Component lists used in the clause. |
| TypeModifier | Map type modifier. |
| Type | Map type. |
| TypeIsImplicit | Map type is inferred implicitly. |
| TypeLoc | Location of the map type. |
Definition at line 645 of file OpenMPClause.cpp.
References clang::ASTContext::Allocate(), and OMPMappableExprListClause< T >::setClauseInfo().
Referenced by clang::Sema::ActOnOpenMPMapClause().
|
static |
Creates an empty clause with the place for for NumVars original expressions, NumUniqueDeclarations declarations, lists, and NumComponents expression components.
| C | AST context. |
| NumVars | Number of expressions listed in the clause. |
| NumUniqueDeclarations | Number of unique base declarations in this clause. |
| NumComponentLists | Number of unique base declarations in this clause. |
| NumComponents | Total number of expression components in the clause. |
Definition at line 685 of file OpenMPClause.cpp.
References clang::ASTContext::Allocate().
Referenced by clang::OMPClauseReader::readClause().
|
inline |
|
inline |
Fetches location of clause mapping kind.
Definition at line 3669 of file OpenMPClause.h.
|
inline |
Fetches mapping kind for the clause.
Definition at line 3654 of file OpenMPClause.h.
|
inline |
Fetches the map type modifier for the clause.
Definition at line 3664 of file OpenMPClause.h.
|
inline |
Is this an implicit map type? We have to capture 'IsMapTypeImplicit' from the parser for more informative error messages.
It helps distinguish map(r) from map(tofrom: r), which is important to print more helpful error messages for some target directives.
Definition at line 3661 of file OpenMPClause.h.
|
friend |
Definition at line 3524 of file OpenMPClause.h.
1.8.6