clang API Documentation

Static Public Member Functions | Friends
clang::OMPParallelForSimdDirective Class Reference

This represents '#pragma omp parallel for simd' directive. More...

#include <StmtOpenMP.h>

Inheritance diagram for clang::OMPParallelForSimdDirective:
Inheritance graph
[legend]
Collaboration diagram for clang::OMPParallelForSimdDirective:
Collaboration graph
[legend]

List of all members.

Static Public Member Functions

static
OMPParallelForSimdDirective
Create (const ASTContext &C, SourceLocation StartLoc, SourceLocation EndLoc, unsigned CollapsedNum, ArrayRef< OMPClause * > Clauses, Stmt *AssociatedStmt, Expr *IV, Expr *LastIteration, Expr *CalcLastIteration, Expr *PreCond, Expr *Cond, Expr *SeparatedCond, Expr *Init, Expr *Inc, ArrayRef< Expr * > Counters, ArrayRef< Expr * > Updates, ArrayRef< Expr * > Finals)
 Creates directive with a list of Clauses.
static
OMPParallelForSimdDirective
CreateEmpty (const ASTContext &C, unsigned NumClauses, unsigned CollapsedNum, EmptyShell)
 Creates an empty directive with the place for NumClauses clauses.
static bool classof (const Stmt *T)

Friends

class ASTStmtReader

Detailed Description

This represents '#pragma omp parallel for simd' directive.

 #pragma omp parallel for simd private(a,b) linear(i,j:s) reduction(+:c,d)

In this example directive '#pragma omp parallel for simd' has clauses 'private' with the variables 'a' and 'b', 'linear' with variables 'i', 'j' and linear step 's', 'reduction' with operator '+' and variables 'c' and 'd'.

Definition at line 998 of file StmtOpenMP.h.


Member Function Documentation

static bool clang::OMPParallelForSimdDirective::classof ( const Stmt T) [inline, static]

Reimplemented from clang::OMPLoopDirective.

Definition at line 1064 of file StmtOpenMP.h.

References clang::Stmt::getStmtClass().

OMPParallelForSimdDirective * OMPParallelForSimdDirective::Create ( const ASTContext C,
SourceLocation  StartLoc,
SourceLocation  EndLoc,
unsigned  CollapsedNum,
ArrayRef< OMPClause * >  Clauses,
Stmt AssociatedStmt,
Expr IV,
Expr LastIteration,
Expr CalcLastIteration,
Expr PreCond,
Expr Cond,
Expr SeparatedCond,
Expr Init,
Expr Inc,
ArrayRef< Expr * >  Counters,
ArrayRef< Expr * >  Updates,
ArrayRef< Expr * >  Finals 
) [static]

Creates directive with a list of Clauses.

Parameters:
CAST context.
StartLocStarting location of the directive kind.
EndLocEnding Location of the directive.
CollapsedNumNumber of collapsed loops.
ClausesList of clauses.
AssociatedStmtStatement, associated with the directive.
IVLoop iteration variable for CodeGen.
LastIterationLoop last iteration number for CodeGen.
CalcLastIterationCalculation of last iteration.
PreCondPre-condition.
CondCondition.
SeparatedCondCondition with 1 iteration separated.
IncLoop increment.
CountersLoop counters.
UpdatesExpressions for loop counters update for CodeGen.
FinalsFinal loop counter values for GodeGen.

Definition at line 1753 of file Stmt.cpp.

References clang::ASTContext::Allocate(), clang::OMPLoopDirective::numLoopChildren(), clang::OMPExecutableDirective::setAssociatedStmt(), clang::OMPLoopDirective::setCalcLastIteration(), clang::OMPExecutableDirective::setClauses(), clang::OMPLoopDirective::setCond(), clang::OMPLoopDirective::setCounters(), clang::OMPLoopDirective::setFinals(), clang::OMPLoopDirective::setInc(), clang::OMPLoopDirective::setInit(), clang::OMPLoopDirective::setIterationVariable(), clang::OMPLoopDirective::setLastIteration(), clang::OMPLoopDirective::setPreCond(), and clang::OMPLoopDirective::setUpdates().

Referenced by clang::Sema::ActOnOpenMPParallelForSimdDirective().

OMPParallelForSimdDirective * OMPParallelForSimdDirective::CreateEmpty ( const ASTContext C,
unsigned  NumClauses,
unsigned  CollapsedNum,
EmptyShell   
) [static]

Creates an empty directive with the place for NumClauses clauses.

Parameters:
CAST context.
CollapsedNumNumber of collapsed nested loops.
NumClausesNumber of clauses.

Definition at line 1782 of file Stmt.cpp.

References clang::ASTContext::Allocate(), and clang::OMPLoopDirective::numLoopChildren().


Friends And Related Function Documentation

friend class ASTStmtReader [friend]

Reimplemented from clang::OMPLoopDirective.

Definition at line 999 of file StmtOpenMP.h.


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