class OMPFirstprivateClause

Declaration

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

Description

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

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

Inherits from: OMPVarListClause, OMPClauseWithPreInit, TrailingObjects

Member Variables

Method Overview

  • public static clang::OMPFirstprivateClause * Create(const clang::ASTContext & C, clang::SourceLocation StartLoc, clang::SourceLocation LParenLoc, clang::SourceLocation EndLoc, ArrayRef<clang::Expr *> VL, ArrayRef<clang::Expr *> PrivateVL, ArrayRef<clang::Expr *> InitVL, clang::Stmt * PreInit)
  • public static clang::OMPFirstprivateClause * CreateEmpty(const clang::ASTContext & C, unsigned int N)
  • private OMPFirstprivateClause(unsigned int N)
  • private OMPFirstprivateClause(clang::SourceLocation StartLoc, clang::SourceLocation LParenLoc, clang::SourceLocation EndLoc, unsigned int N)
  • public clang::OMPClause::child_range children()
  • public clang::OMPClause::const_child_range children() const
  • public static bool classof(const clang::OMPClause * T)
  • private MutableArrayRef<clang::Expr *> getInits()
  • private ArrayRef<const clang::Expr *> getInits() const
  • private MutableArrayRef<clang::Expr *> getPrivateCopies()
  • private ArrayRef<const clang::Expr *> getPrivateCopies() const
  • public clang::OMPFirstprivateClause::inits_range inits()
  • public clang::OMPFirstprivateClause::inits_const_range inits() const
  • public clang::OMPFirstprivateClause::private_copies_range private_copies()
  • public clang::OMPFirstprivateClause::private_copies_const_range private_copies() const
  • private void setInits(ArrayRef<clang::Expr *> VL)
  • private void setPrivateCopies(ArrayRef<clang::Expr *> VL)
  • public clang::OMPClause::child_range used_children()
  • public clang::OMPClause::const_child_range used_children() const

Inherited from OMPClauseWithPreInit:

Methods

static clang::OMPFirstprivateClause* Create(
    const clang::ASTContext& C,
    clang::SourceLocation StartLoc,
    clang::SourceLocation LParenLoc,
    clang::SourceLocation EndLoc,
    ArrayRef<clang::Expr*> VL,
    ArrayRef<clang::Expr*> PrivateVL,
    ArrayRef<clang::Expr*> InitVL,
    clang::Stmt* PreInit)

Description

Creates clause with a list of variables \a VL.

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

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 original variables.
ArrayRef<clang::Expr*> PrivateVL
List of references to private copies with initializers.
ArrayRef<clang::Expr*> InitVL
List of references to auto generated variables used for initialization of a single array element. Used if firstprivate variable is of array type.
clang::Stmt* PreInit
Statement that must be executed before entering the OpenMP region with this clause.

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

Description

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

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

Parameters

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

OMPFirstprivateClause(unsigned int N)

Description

Build an empty clause.

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

Parameters

unsigned int N
Number of variables.

OMPFirstprivateClause(
    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:2601

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::OMPClause::child_range children()

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

clang::OMPClause::const_child_range children()
    const

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

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

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

Parameters

const clang::OMPClause* T

MutableArrayRef<clang::Expr*> getInits()

Description

Gets the list of references to initializer variables for new private variables.

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

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

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

MutableArrayRef<clang::Expr*> getPrivateCopies()

Description

Gets the list of references to private copies with initializers for new private variables.

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

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

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

clang::OMPFirstprivateClause::inits_range inits()

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

clang::OMPFirstprivateClause::inits_const_range
inits() const

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

clang::OMPFirstprivateClause::private_copies_range
private_copies()

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

clang::OMPFirstprivateClause::
    private_copies_const_range
    private_copies() const

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

void setInits(ArrayRef<clang::Expr*> VL)

Description

Sets the list of references to initializer variables for new private variables.

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

Parameters

ArrayRef<clang::Expr*> VL
List of references.

void setPrivateCopies(ArrayRef<clang::Expr*> VL)

Description

Sets the list of references to private copies with initializers for new private variables.

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

Parameters

ArrayRef<clang::Expr*> VL
List of references.

clang::OMPClause::child_range used_children()

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

clang::OMPClause::const_child_range
used_children() const

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