clang 22.0.0git
OMPTargetParallelForDirective Class Reference

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

#include "clang/AST/StmtOpenMP.h"

Inheritance diagram for OMPTargetParallelForDirective:
[legend]

Public Member Functions

Expr * getTaskReductionRefExpr ()
 Returns special task reduction reference expression.
const Expr * getTaskReductionRefExpr () const
bool hasCancel () const
 Return true if current directive has inner cancel directive.

Static Public Member Functions

static OMPTargetParallelForDirectiveCreate (const ASTContext &C, SourceLocation StartLoc, SourceLocation EndLoc, unsigned CollapsedNum, ArrayRef< OMPClause * > Clauses, Stmt *AssociatedStmt, const HelperExprs &Exprs, Expr *TaskRedRef, bool HasCancel)
 Creates directive with a list of Clauses.
static OMPTargetParallelForDirectiveCreateEmpty (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
class OMPExecutableDirective

Detailed Description

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

#pragma omp target parallel for private(a,b) reduction(+:c,d)

In this example directive '#pragma omp target parallel for' has clauses 'private' with the variables 'a' and 'b' and 'reduction' with operator '+' and variables 'c' and 'd'.

Definition at line 3449 of file StmtOpenMP.h.

Member Function Documentation

◆ classof()

bool OMPTargetParallelForDirective::classof ( const Stmt * T)
inlinestatic

Definition at line 3531 of file StmtOpenMP.h.

◆ Create()

OMPTargetParallelForDirective * OMPTargetParallelForDirective::Create ( const ASTContext & C,
SourceLocation StartLoc,
SourceLocation EndLoc,
unsigned CollapsedNum,
ArrayRef< OMPClause * > Clauses,
Stmt * AssociatedStmt,
const HelperExprs & Exprs,
Expr * TaskRedRef,
bool HasCancel )
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.
ExprsHelper expressions for CodeGen.
TaskRedRefTask reduction special reference expression to handle taskgroup descriptor.
HasCanceltrue if current directive has inner cancel directive.

Definition at line 1053 of file StmtOpenMP.cpp.

References clang::C.

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

◆ CreateEmpty()

OMPTargetParallelForDirective * OMPTargetParallelForDirective::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 1091 of file StmtOpenMP.cpp.

References clang::C.

◆ getTaskReductionRefExpr() [1/2]

Expr * OMPTargetParallelForDirective::getTaskReductionRefExpr ( )
inline

Returns special task reduction reference expression.

Definition at line 3519 of file StmtOpenMP.h.

Referenced by getTaskReductionRefExpr().

◆ getTaskReductionRefExpr() [2/2]

const Expr * OMPTargetParallelForDirective::getTaskReductionRefExpr ( ) const
inline

Definition at line 3523 of file StmtOpenMP.h.

References getTaskReductionRefExpr().

◆ hasCancel()

bool OMPTargetParallelForDirective::hasCancel ( ) const
inline

Return true if current directive has inner cancel directive.

Definition at line 3529 of file StmtOpenMP.h.

Referenced by emitTargetParallelForRegion().

◆ ASTStmtReader

friend class ASTStmtReader
friend

Definition at line 3450 of file StmtOpenMP.h.

References ASTStmtReader.

Referenced by ASTStmtReader.

◆ OMPExecutableDirective

friend class OMPExecutableDirective
friend

Definition at line 3451 of file StmtOpenMP.h.

References OMPExecutableDirective.

Referenced by OMPExecutableDirective.


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