clang
8.0.0
|
This represents clause 'is_device_ptr' in the '#pragma omp ...' directives. More...
#include "clang/AST/OpenMPClause.h"
Public Member Functions | |
child_range | children () |
![]() | |
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 OMPIsDevicePtrClause * | Create (const ASTContext &C, SourceLocation StartLoc, SourceLocation LParenLoc, SourceLocation EndLoc, ArrayRef< Expr *> Vars, ArrayRef< ValueDecl *> Declarations, MappableExprComponentListsRef ComponentLists) |
Creates clause with a list of variables Vars. More... | |
static OMPIsDevicePtrClause * | CreateEmpty (const ASTContext &C, unsigned NumVars, unsigned NumUniqueDeclarations, unsigned NumComponentLists, unsigned NumComponents) |
Creates an empty clause with the place for NumVars variables. More... | |
static bool | classof (const OMPClause *T) |
Friends | |
class | OMPClauseReader |
Additional Inherited Members | |
![]() | |
using | const_component_lists_range = llvm::iterator_range< const_component_lists_iterator > |
using | const_all_decls_iterator = ArrayRef< ValueDecl *>::iterator |
Iterators to access all the declarations, number of lists, list sizes, and components. More... | |
using | const_all_decls_range = llvm::iterator_range< const_all_decls_iterator > |
using | const_all_num_lists_iterator = ArrayRef< unsigned >::iterator |
using | const_all_num_lists_range = llvm::iterator_range< const_all_num_lists_iterator > |
using | const_all_lists_sizes_iterator = ArrayRef< unsigned >::iterator |
using | const_all_lists_sizes_range = llvm::iterator_range< const_all_lists_sizes_iterator > |
using | const_all_components_iterator = ArrayRef< MappableComponent >::iterator |
using | const_all_components_range = llvm::iterator_range< const_all_components_iterator > |
![]() | |
using | MappableExprComponentList = SmallVector< MappableComponent, 8 > |
using | MappableExprComponentListRef = ArrayRef< MappableComponent > |
using | MappableExprComponentLists = SmallVector< MappableExprComponentList, 8 > |
using | MappableExprComponentListsRef = ArrayRef< MappableExprComponentList > |
![]() | |
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... | |
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... | |
![]() | |
static unsigned | getComponentsTotalNumber (MappableExprComponentListsRef ComponentLists) |
static unsigned | getUniqueDeclarationsTotalNumber (ArrayRef< const ValueDecl *> Declarations) |
This represents clause 'is_device_ptr' in the '#pragma omp ...' directives.
In this example directive '#pragma omp target' has clause 'is_device_ptr' with the variables 'a' and 'b'.
Definition at line 5214 of file OpenMPClause.h.
|
inline |
Definition at line 5301 of file OpenMPClause.h.
Definition at line 5306 of file OpenMPClause.h.
|
static |
Creates clause with a list of variables Vars.
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. |
Definition at line 1010 of file OpenMPClause.cpp.
References clang::ASTContext::Allocate(), and OMPMappableExprListClause< T >::setClauseInfo().
Referenced by clang::Sema::ActOnOpenMPIsDevicePtrClause().
|
static |
Creates an empty clause with the place for NumVars variables.
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 1046 of file OpenMPClause.cpp.
References clang::ASTContext::Allocate(), OMPAlignedClause::getAlignment(), clang::OMPAtomicDefaultMemOrderClause::getAtomicDefaultMemOrderKind(), clang::OMPScheduleClause::getChunkSize(), OMPDistScheduleClause::getChunkSize(), clang::OMPIfClause::getCondition(), clang::OMPFinalClause::getCondition(), clang::DeclarationName::getCXXOverloadedOperator(), clang::OMPDefaultClause::getDefaultKind(), OMPDefaultmapClause::getDefaultmapKind(), OMPDefaultmapClause::getDefaultmapModifier(), OMPDependClause::getDependencyKind(), OMPDeviceClause::getDevice(), OMPDistScheduleClause::getDistScheduleKind(), clang::OMPScheduleClause::getFirstScheduleModifier(), OMPGrainsizeClause::getGrainsize(), OMPHintClause::getHint(), OMPMapClause::getMapType(), OMPMapClause::getMapTypeModifier(), clang::DeclarationNameInfo::getName(), clang::OMPReductionClause::getNameInfo(), clang::OMPTaskReductionClause::getNameInfo(), clang::OMPInReductionClause::getNameInfo(), clang::OMPIfClause::getNameModifier(), clang::NestedNameSpecifierLoc::getNestedNameSpecifier(), clang::OMPCollapseClause::getNumForLoops(), clang::OMPOrderedClause::getNumForLoops(), OMPNumTasksClause::getNumTasks(), OMPNumTeamsClause::getNumTeams(), clang::OMPNumThreadsClause::getNumThreads(), clang::getOpenMPDirectiveName(), clang::getOpenMPSimpleClauseTypeName(), clang::getOperatorSpelling(), OMPPriorityClause::getPriority(), clang::OMPProcBindClause::getProcBindKind(), clang::OMPReductionClause::getQualifierLoc(), clang::OMPTaskReductionClause::getQualifierLoc(), clang::OMPInReductionClause::getQualifierLoc(), clang::OMPSafelenClause::getSafelen(), clang::OMPScheduleClause::getScheduleKind(), clang::OMPScheduleClause::getSecondScheduleModifier(), clang::OMPSimdlenClause::getSimdlen(), OMPThreadLimitClause::getThreadLimit(), Node, OMPMapClause::NumberOfModifiers, clang::OMPC_MAP_MODIFIER_unknown, clang::OMPC_MAP_unknown, clang::OMPC_SCHEDULE_MODIFIER_unknown, clang::OMPD_unknown, clang::OO_None, clang::NestedNameSpecifier::print(), clang::Stmt::printPretty(), and clang::OMPVarListClause< T >::varlist_empty().
|
friend |
Definition at line 5219 of file OpenMPClause.h.