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 5107 of file OpenMPClause.h.

Member Typedef Documentation

◆ helper_expr_const_iterator

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

Definition at line 5220 of file OpenMPClause.h.

◆ helper_expr_const_range

Initial value:
llvm::iterator_range<helper_expr_const_iterator>

Definition at line 5222 of file OpenMPClause.h.

◆ helper_expr_iterator

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

Definition at line 5219 of file OpenMPClause.h.

◆ helper_expr_range

Definition at line 5221 of file OpenMPClause.h.

Member Function Documentation

◆ assignment_ops() [1/2]

helper_expr_range OMPCopyinClause::assignment_ops ( )
inline

Definition at line 5237 of file OpenMPClause.h.

◆ assignment_ops() [2/2]

helper_expr_const_range OMPCopyinClause::assignment_ops ( ) const
inline

Definition at line 5235 of file OpenMPClause.h.

◆ children() [1/2]

child_range OMPCopyinClause::children ( )
inline

Definition at line 5239 of file OpenMPClause.h.

Referenced by children().

◆ children() [2/2]

const_child_range OMPCopyinClause::children ( ) const
inline

Definition at line 5244 of file OpenMPClause.h.

References children().

◆ classof()

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

Definition at line 5255 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 693 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 707 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 5233 of file OpenMPClause.h.

◆ destination_exprs() [2/2]

helper_expr_const_range OMPCopyinClause::destination_exprs ( ) const
inline

Definition at line 5229 of file OpenMPClause.h.

◆ source_exprs() [1/2]

helper_expr_range OMPCopyinClause::source_exprs ( )
inline

Definition at line 5227 of file OpenMPClause.h.

◆ source_exprs() [2/2]

helper_expr_const_range OMPCopyinClause::source_exprs ( ) const
inline

Definition at line 5225 of file OpenMPClause.h.

◆ used_children() [1/2]

child_range OMPCopyinClause::used_children ( )
inline

Definition at line 5248 of file OpenMPClause.h.

◆ used_children() [2/2]

const_child_range OMPCopyinClause::used_children ( ) const
inline

Definition at line 5251 of file OpenMPClause.h.

◆ OMPClauseReader

friend class OMPClauseReader
friend

Definition at line 5123 of file OpenMPClause.h.

References OMPClauseReader.

Referenced by OMPClauseReader.


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