clang 23.0.0git
OMPCopyinClause Class Referencefinal

This represents clause 'copyin' in the '#pragma omp ...' directives. More...

#include "clang/AST/OpenMPClause.h"

Inheritance diagram for OMPCopyinClause:
[legend]

Public Types

using helper_expr_iterator = MutableArrayRef<Expr *>::iterator
using helper_expr_const_iterator = ArrayRef<const Expr *>::iterator
using helper_expr_range = llvm::iterator_range<helper_expr_iterator>
using helper_expr_const_range

Public Member Functions

helper_expr_const_range source_exprs () const
helper_expr_range source_exprs ()
helper_expr_const_range destination_exprs () const
helper_expr_range destination_exprs ()
helper_expr_const_range assignment_ops () const
helper_expr_range assignment_ops ()
child_range children ()
const_child_range children () const
child_range used_children ()
const_child_range used_children () const

Static Public Member Functions

static OMPCopyinClauseCreate (const ASTContext &C, SourceLocation StartLoc, SourceLocation LParenLoc, SourceLocation EndLoc, ArrayRef< Expr * > VL, ArrayRef< Expr * > SrcExprs, ArrayRef< Expr * > DstExprs, ArrayRef< Expr * > AssignmentOps)
 Creates clause with a list of variables VL.
static OMPCopyinClauseCreateEmpty (const ASTContext &C, unsigned N)
 Creates an empty clause with N variables.
static bool classof (const OMPClause *T)

Friends

class OMPClauseReader

Detailed Description

This represents clause 'copyin' in the '#pragma omp ...' directives.

#pragma omp parallel copyin(a,b)

In this example directive '#pragma omp parallel' has clause 'copyin' with the variables 'a' and 'b'.

Definition at line 5102 of file OpenMPClause.h.

Member Typedef Documentation

◆ helper_expr_const_iterator

using OMPCopyinClause::helper_expr_const_iterator = ArrayRef<const Expr *>::iterator

Definition at line 5215 of file OpenMPClause.h.

◆ helper_expr_const_range

Initial value:
llvm::iterator_range<helper_expr_const_iterator>

Definition at line 5217 of file OpenMPClause.h.

◆ helper_expr_iterator

using OMPCopyinClause::helper_expr_iterator = MutableArrayRef<Expr *>::iterator

Definition at line 5214 of file OpenMPClause.h.

◆ helper_expr_range

Definition at line 5216 of file OpenMPClause.h.

Member Function Documentation

◆ assignment_ops() [1/2]

helper_expr_range OMPCopyinClause::assignment_ops ( )
inline

Definition at line 5232 of file OpenMPClause.h.

◆ assignment_ops() [2/2]

helper_expr_const_range OMPCopyinClause::assignment_ops ( ) const
inline

Definition at line 5230 of file OpenMPClause.h.

◆ children() [1/2]

child_range OMPCopyinClause::children ( )
inline

Definition at line 5234 of file OpenMPClause.h.

Referenced by children().

◆ children() [2/2]

const_child_range OMPCopyinClause::children ( ) const
inline

Definition at line 5239 of file OpenMPClause.h.

References children().

◆ classof()

bool OMPCopyinClause::classof ( const OMPClause * T)
inlinestatic

Definition at line 5250 of file OpenMPClause.h.

◆ Create()

OMPCopyinClause * OMPCopyinClause::Create ( const ASTContext & C,
SourceLocation StartLoc,
SourceLocation LParenLoc,
SourceLocation EndLoc,
ArrayRef< Expr * > VL,
ArrayRef< Expr * > SrcExprs,
ArrayRef< Expr * > DstExprs,
ArrayRef< Expr * > AssignmentOps )
static

Creates clause with a list of variables VL.

Parameters
CAST context.
StartLocStarting location of the clause.
LParenLocLocation of '('.
EndLocEnding location of the clause.
VLList of references to the variables.
SrcExprsList of helper expressions for proper generation of assignment operation required for copyin clause. This list represents sources.
DstExprsList of helper expressions for proper generation of assignment operation required for copyin clause. This list represents destinations.
AssignmentOpsList of helper expressions that represents assignment operation:
DstExprs = SrcExprs;
Required for proper codegen of propagation of master's thread values of threadprivate variables to local instances of that variables in other implicit threads.

Definition at line 692 of file OpenMPClause.cpp.

References clang::C.

Referenced by clang::SemaOpenMP::ActOnOpenMPCopyinClause().

◆ CreateEmpty()

OMPCopyinClause * OMPCopyinClause::CreateEmpty ( const ASTContext & C,
unsigned N )
static

Creates an empty clause with N variables.

Parameters
CAST context.
NThe number of variables.

Definition at line 706 of file OpenMPClause.cpp.

References clang::C.

Referenced by clang::OMPClauseReader::readClause().

◆ destination_exprs() [1/2]

helper_expr_range OMPCopyinClause::destination_exprs ( )
inline

Definition at line 5228 of file OpenMPClause.h.

◆ destination_exprs() [2/2]

helper_expr_const_range OMPCopyinClause::destination_exprs ( ) const
inline

Definition at line 5224 of file OpenMPClause.h.

◆ source_exprs() [1/2]

helper_expr_range OMPCopyinClause::source_exprs ( )
inline

Definition at line 5222 of file OpenMPClause.h.

◆ source_exprs() [2/2]

helper_expr_const_range OMPCopyinClause::source_exprs ( ) const
inline

Definition at line 5220 of file OpenMPClause.h.

◆ used_children() [1/2]

child_range OMPCopyinClause::used_children ( )
inline

Definition at line 5243 of file OpenMPClause.h.

◆ used_children() [2/2]

const_child_range OMPCopyinClause::used_children ( ) const
inline

Definition at line 5246 of file OpenMPClause.h.

◆ OMPClauseReader

friend class OMPClauseReader
friend

Definition at line 5118 of file OpenMPClause.h.

References OMPClauseReader.

Referenced by OMPClauseReader.


The documentation for this class was generated from the following files: