clang 20.0.0git
Public Member Functions | Friends | List of all members
clang::OMPSafelenClause Class Referencefinal

This represents 'safelen' clause in the '#pragma omp ...' directive. More...

#include "clang/AST/OpenMPClause.h"

Inheritance diagram for clang::OMPSafelenClause:
Inheritance graph
[legend]

Public Member Functions

 OMPSafelenClause (Expr *Len, SourceLocation StartLoc, SourceLocation LParenLoc, SourceLocation EndLoc)
 Build 'safelen' clause.
 
 OMPSafelenClause ()
 Build an empty clause.
 
ExprgetSafelen () const
 Return safe iteration space distance.
 
- Public Member Functions inherited from clang::OMPOneStmtClause< llvm::omp::OMPC_safelen, OMPClause >
 OMPOneStmtClause (Stmt *S, SourceLocation StartLoc, SourceLocation LParenLoc, SourceLocation EndLoc)
 
 OMPOneStmtClause ()
 
T * getStmtAs () const
 Return the associated statement, potentially casted to T.
 
void setLParenLoc (SourceLocation Loc)
 Sets the location of '('.
 
SourceLocation getLParenLoc () const
 Returns the location of '('.
 
child_range children ()
 
const_child_range children () const
 
child_range used_children ()
 
const_child_range used_children () const
 
- Public Member Functions inherited from clang::OMPClause
SourceLocation getBeginLoc () const
 Returns the starting location of the clause.
 
SourceLocation getEndLoc () const
 Returns the ending location of the clause.
 
void setLocStart (SourceLocation Loc)
 Sets the starting location of the clause.
 
void setLocEnd (SourceLocation Loc)
 Sets the ending location of the clause.
 
OpenMPClauseKind getClauseKind () const
 Returns kind of OpenMP clause (private, shared, reduction, etc.).
 
bool isImplicit () const
 
child_range children ()
 
const_child_range children () const
 
child_range used_children ()
 Get the iterator range for the expressions used in the clauses.
 
const_child_range used_children () const
 

Friends

class OMPClauseReader
 

Additional Inherited Members

- Public Types inherited from clang::OMPOneStmtClause< llvm::omp::OMPC_safelen, OMPClause >
using child_iterator = StmtIterator
 
using const_child_iterator = ConstStmtIterator
 
using child_range = llvm::iterator_range< child_iterator >
 
using const_child_range = llvm::iterator_range< const_child_iterator >
 
- Public Types inherited from clang::OMPClause
using child_iterator = StmtIterator
 
using const_child_iterator = ConstStmtIterator
 
using child_range = llvm::iterator_range< child_iterator >
 
using const_child_range = llvm::iterator_range< const_child_iterator >
 
- Static Public Member Functions inherited from clang::OMPOneStmtClause< llvm::omp::OMPC_safelen, OMPClause >
static bool classof (const OMPClause *T)
 
- Static Public Member Functions inherited from clang::OMPClause
static bool classof (const OMPClause *)
 
- Protected Member Functions inherited from clang::OMPOneStmtClause< llvm::omp::OMPC_safelen, OMPClause >
void setStmt (Stmt *S)
 
- Protected Member Functions inherited from clang::OMPClause
 OMPClause (OpenMPClauseKind K, SourceLocation StartLoc, SourceLocation EndLoc)
 

Detailed Description

This represents 'safelen' clause in the '#pragma omp ...' directive.

#pragma omp simd safelen(4)

In this example directive '#pragma omp simd' has clause 'safelen' with single expression '4'. If the safelen clause is used then no two iterations executed concurrently with SIMD instructions can have a greater distance in the logical iteration space than its value. The parameter of the safelen clause must be a constant positive integer expression.

Definition at line 805 of file OpenMPClause.h.

Constructor & Destructor Documentation

◆ OMPSafelenClause() [1/2]

clang::OMPSafelenClause::OMPSafelenClause ( Expr Len,
SourceLocation  StartLoc,
SourceLocation  LParenLoc,
SourceLocation  EndLoc 
)
inline

Build 'safelen' clause.

Parameters
LenExpression associated with this clause.
StartLocStarting location of the clause.
EndLocEnding location of the clause.

Definition at line 818 of file OpenMPClause.h.

◆ OMPSafelenClause() [2/2]

clang::OMPSafelenClause::OMPSafelenClause ( )
inlineexplicit

Build an empty clause.

Definition at line 823 of file OpenMPClause.h.

Member Function Documentation

◆ getSafelen()

Expr * clang::OMPSafelenClause::getSafelen ( ) const
inline

Return safe iteration space distance.

Definition at line 826 of file OpenMPClause.h.

Referenced by checkSimdlenSafelenSpecified().

Friends And Related Function Documentation

◆ OMPClauseReader

friend class OMPClauseReader
friend

Definition at line 807 of file OpenMPClause.h.


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