class OMPUseDeviceAddrClause

Declaration

class OMPUseDeviceAddrClause : public OMPMappableExprListClause,
                               private TrailingObjects { /* full declaration omitted */ };

Description

This represents clause 'use_device_addr' in the '#pragma omp ...' directives. In this example directive '#pragma omp target data' has clause 'use_device_addr' with the variables 'a' and 'b'.

Declared at: clang/include/clang/AST/OpenMPClause.h:7233

Inherits from: OMPMappableExprListClause, TrailingObjects

Method Overview

  • public static clang::OMPUseDeviceAddrClause * Create(const clang::ASTContext & C, const clang::OMPVarListLocTy & Locs, ArrayRef<clang::Expr *> Vars, ArrayRef<clang::ValueDecl *> Declarations, clang::OMPClauseMappableExprCommon::MappableExprComponentListsRef ComponentLists)
  • public static clang::OMPUseDeviceAddrClause * CreateEmpty(const clang::ASTContext & C, const clang::OMPMappableExprListSizeTy & Sizes)
  • private OMPUseDeviceAddrClause(const clang::OMPVarListLocTy & Locs, const clang::OMPMappableExprListSizeTy & Sizes)
  • private OMPUseDeviceAddrClause(const clang::OMPMappableExprListSizeTy & Sizes)
  • public clang::OMPClause::child_range children()
  • public clang::OMPClause::const_child_range children() const
  • public static bool classof(const clang::OMPClause * T)
  • private size_t numTrailingObjects(OverloadToken<clang::Expr *>) const
  • private size_t numTrailingObjects(OverloadToken<clang::ValueDecl *>) const
  • private size_t numTrailingObjects(OverloadToken<unsigned int>) const
  • public clang::OMPClause::child_range used_children()
  • public clang::OMPClause::const_child_range used_children() const

Methods

static clang::OMPUseDeviceAddrClause* Create(
    const clang::ASTContext& C,
    const clang::OMPVarListLocTy& Locs,
    ArrayRef<clang::Expr*> Vars,
    ArrayRef<clang::ValueDecl*> Declarations,
    clang::OMPClauseMappableExprCommon::
        MappableExprComponentListsRef
            ComponentLists)

Description

Creates clause with a list of variables \a Vars.

Declared at: clang/include/clang/AST/OpenMPClause.h:7292

Parameters

const clang::ASTContext& C
AST context.
const clang::OMPVarListLocTy& Locs
Locations needed to build a mappable clause. It includes 1) StartLoc: starting location of the clause (the clause keyword); 2) LParenLoc: location of '('; 3) EndLoc: ending location of the clause.
ArrayRef<clang::Expr*> Vars
The original expression used in the clause.
ArrayRef<clang::ValueDecl*> Declarations
Declarations used in the clause.
clang::OMPClauseMappableExprCommon:: MappableExprComponentListsRef ComponentLists
Component lists used in the clause.

static clang::OMPUseDeviceAddrClause* CreateEmpty(
    const clang::ASTContext& C,
    const clang::OMPMappableExprListSizeTy& Sizes)

Description

Creates an empty clause with the place for \a NumVars variables.

Declared at: clang/include/clang/AST/OpenMPClause.h:7305

Parameters

const clang::ASTContext& C
AST context.
const clang::OMPMappableExprListSizeTy& Sizes
All required sizes to build a mappable clause. It includes 1) NumVars: number of expressions listed in this clause; 2) NumUniqueDeclarations: number of unique base declarations in this clause; 3) NumComponentLists: number of component lists in this clause; and 4) NumComponents: total number of expression components in the clause.

OMPUseDeviceAddrClause(
    const clang::OMPVarListLocTy& Locs,
    const clang::OMPMappableExprListSizeTy& Sizes)

Description

Build clause with number of variables \a NumVars.

Declared at: clang/include/clang/AST/OpenMPClause.h:7253

Parameters

const clang::OMPVarListLocTy& Locs
Locations needed to build a mappable clause. It includes 1) StartLoc: starting location of the clause (the clause keyword); 2) LParenLoc: location of '('; 3) EndLoc: ending location of the clause.
const clang::OMPMappableExprListSizeTy& Sizes
All required sizes to build a mappable clause. It includes 1) NumVars: number of expressions listed in this clause; 2) NumUniqueDeclarations: number of unique base declarations in this clause; 3) NumComponentLists: number of component lists in this clause; and 4) NumComponents: total number of expression components in the clause.

OMPUseDeviceAddrClause(
    const clang::OMPMappableExprListSizeTy& Sizes)

Description

Build an empty clause.

Declared at: clang/include/clang/AST/OpenMPClause.h:7265

Parameters

const clang::OMPMappableExprListSizeTy& Sizes
All required sizes to build a mappable clause. It includes 1) NumVars: number of expressions listed in this clause; 2) NumUniqueDeclarations: number of unique base declarations in this clause; 3) NumComponentLists: number of component lists in this clause; and 4) NumComponents: total number of expression components in the clause.

clang::OMPClause::child_range children()

Declared at: clang/include/clang/AST/OpenMPClause.h:7307

clang::OMPClause::const_child_range children()
    const

Declared at: clang/include/clang/AST/OpenMPClause.h:7312

static bool classof(const clang::OMPClause* T)

Declared at: clang/include/clang/AST/OpenMPClause.h:7324

Parameters

const clang::OMPClause* T

size_t numTrailingObjects(
    OverloadToken<clang::Expr*>) const

Description

Define the sizes of each trailing object array except the last one. This is required for TrailingObjects to work properly.

Declared at: clang/include/clang/AST/OpenMPClause.h:7271

Parameters

OverloadToken<clang::Expr*>

size_t numTrailingObjects(
    OverloadToken<clang::ValueDecl*>) const

Declared at: clang/include/clang/AST/OpenMPClause.h:7274

Parameters

OverloadToken<clang::ValueDecl*>

size_t numTrailingObjects(
    OverloadToken<unsigned int>) const

Declared at: clang/include/clang/AST/OpenMPClause.h:7277

Parameters

OverloadToken<unsigned int>

clang::OMPClause::child_range used_children()

Declared at: clang/include/clang/AST/OpenMPClause.h:7317

clang::OMPClause::const_child_range
used_children() const

Declared at: clang/include/clang/AST/OpenMPClause.h:7320