class OMPCopyprivateClause

Declaration

class OMPCopyprivateClause : public OMPVarListClause,
                             private TrailingObjects { /* full declaration omitted */ };

Description

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

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

Inherits from: OMPVarListClause, TrailingObjects

Method Overview

  • public static clang::OMPCopyprivateClause * Create(const clang::ASTContext & C, clang::SourceLocation StartLoc, clang::SourceLocation LParenLoc, clang::SourceLocation EndLoc, ArrayRef<clang::Expr *> VL, ArrayRef<clang::Expr *> SrcExprs, ArrayRef<clang::Expr *> DstExprs, ArrayRef<clang::Expr *> AssignmentOps)
  • public static clang::OMPCopyprivateClause * CreateEmpty(const clang::ASTContext & C, unsigned int N)
  • private OMPCopyprivateClause(unsigned int N)
  • private OMPCopyprivateClause(clang::SourceLocation StartLoc, clang::SourceLocation LParenLoc, clang::SourceLocation EndLoc, unsigned int N)
  • public clang::OMPCopyprivateClause::helper_expr_range assignment_ops()
  • public clang::OMPCopyprivateClause::helper_expr_const_range assignment_ops() const
  • public clang::OMPClause::const_child_range children() const
  • public clang::OMPClause::child_range children()
  • public static bool classof(const clang::OMPClause * T)
  • public clang::OMPCopyprivateClause::helper_expr_range destination_exprs()
  • public clang::OMPCopyprivateClause::helper_expr_const_range destination_exprs() const
  • private MutableArrayRef<clang::Expr *> getAssignmentOps()
  • private ArrayRef<const clang::Expr *> getAssignmentOps() const
  • private MutableArrayRef<clang::Expr *> getDestinationExprs()
  • private ArrayRef<const clang::Expr *> getDestinationExprs() const
  • private ArrayRef<const clang::Expr *> getSourceExprs() const
  • private MutableArrayRef<clang::Expr *> getSourceExprs()
  • private void setAssignmentOps(ArrayRef<clang::Expr *> AssignmentOps)
  • private void setDestinationExprs(ArrayRef<clang::Expr *> DstExprs)
  • private void setSourceExprs(ArrayRef<clang::Expr *> SrcExprs)
  • public clang::OMPCopyprivateClause::helper_expr_range source_exprs()
  • public clang::OMPCopyprivateClause::helper_expr_const_range source_exprs() const
  • public clang::OMPClause::child_range used_children()
  • public clang::OMPClause::const_child_range used_children() const

Methods

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

Description

Creates clause with a list of variables \a VL. Required for proper codegen of final assignment performed by the copyprivate clause.

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

Parameters

const clang::ASTContext& C
AST context.
clang::SourceLocation StartLoc
Starting location of the clause.
clang::SourceLocation LParenLoc
Location of '('.
clang::SourceLocation EndLoc
Ending location of the clause.
ArrayRef<clang::Expr*> VL
List of references to the variables.
ArrayRef<clang::Expr*> SrcExprs
List of helper expressions for proper generation of assignment operation required for copyprivate clause. This list represents sources.
ArrayRef<clang::Expr*> DstExprs
List of helper expressions for proper generation of assignment operation required for copyprivate clause. This list represents destinations.
ArrayRef<clang::Expr*> AssignmentOps
List of helper expressions that represents assignment operation:

static clang::OMPCopyprivateClause* CreateEmpty(
    const clang::ASTContext& C,
    unsigned int N)

Description

Creates an empty clause with \a N variables.

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

Parameters

const clang::ASTContext& C
AST context.
unsigned int N
The number of variables.

OMPCopyprivateClause(unsigned int N)

Description

Build an empty clause.

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

Parameters

unsigned int N
Number of variables.

OMPCopyprivateClause(
    clang::SourceLocation StartLoc,
    clang::SourceLocation LParenLoc,
    clang::SourceLocation EndLoc,
    unsigned int N)

Description

Build clause with number of variables \a N.

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

Parameters

clang::SourceLocation StartLoc
Starting location of the clause.
clang::SourceLocation LParenLoc
Location of '('.
clang::SourceLocation EndLoc
Ending location of the clause.
unsigned int N
Number of the variables in the clause.

clang::OMPCopyprivateClause::helper_expr_range
assignment_ops()

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

clang::OMPCopyprivateClause::
    helper_expr_const_range
    assignment_ops() const

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

clang::OMPClause::const_child_range children()
    const

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

clang::OMPClause::child_range children()

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

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

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

Parameters

const clang::OMPClause* T

clang::OMPCopyprivateClause::helper_expr_range
destination_exprs()

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

clang::OMPCopyprivateClause::
    helper_expr_const_range
    destination_exprs() const

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

MutableArrayRef<clang::Expr*> getAssignmentOps()

Description

Get the list of helper assignment expressions.

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

ArrayRef<const clang::Expr*> getAssignmentOps()
    const

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

MutableArrayRef<clang::Expr*>
getDestinationExprs()

Description

Get the list of helper destination expressions.

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

ArrayRef<const clang::Expr*> getDestinationExprs()
    const

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

ArrayRef<const clang::Expr*> getSourceExprs()
    const

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

MutableArrayRef<clang::Expr*> getSourceExprs()

Description

Get the list of helper source expressions.

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

void setAssignmentOps(
    ArrayRef<clang::Expr*> AssignmentOps)

Description

Set list of helper assignment expressions, required for proper codegen of the clause. These expressions are assignment expressions that assign source helper expressions to destination helper expressions correspondingly.

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

Parameters

ArrayRef<clang::Expr*> AssignmentOps

void setDestinationExprs(
    ArrayRef<clang::Expr*> DstExprs)

Description

Set list of helper expressions, required for proper codegen of the clause. These expressions represent destination expression in the final assignment statement performed by the copyprivate clause.

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

Parameters

ArrayRef<clang::Expr*> DstExprs

void setSourceExprs(
    ArrayRef<clang::Expr*> SrcExprs)

Description

Set list of helper expressions, required for proper codegen of the clause. These expressions represent source expression in the final assignment statement performed by the copyprivate clause.

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

Parameters

ArrayRef<clang::Expr*> SrcExprs

clang::OMPCopyprivateClause::helper_expr_range
source_exprs()

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

clang::OMPCopyprivateClause::
    helper_expr_const_range
    source_exprs() const

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

clang::OMPClause::child_range used_children()

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

clang::OMPClause::const_child_range
used_children() const

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