clang 20.0.0git
Public Member Functions | List of all members
GlobalDeclRefChecker Class Referencefinal

This class visits every VarDecl that the initializer references and adds OMPDeclareTargetDeclAttr to each of them. More...

Inheritance diagram for GlobalDeclRefChecker:
Inheritance graph
[legend]

Public Member Functions

void VisitDeclRefExpr (DeclRefExpr *Node)
 A StmtVisitor class function that visits all DeclRefExpr and adds OMPDeclareTargetDeclAttr to them.
 
void VisitExpr (Expr *Ex)
 A function that iterates across each of the Expr's children.
 
void declareTargetInitializer (Decl *TD)
 A function that keeps a record of all the Decls that are variables, has OMPDeclareTargetDeclAttr, and has global storage in the DeclVector.
 
- Public Member Functions inherited from clang::StmtVisitorBase< Ptr, ImplClass, RetTy, ParamTys >
RetTy Visit (PTR(Stmt) S, ParamTys... P)
 
 BINOP_FALLBACK (PtrMemD) BINOP_FALLBACK(PtrMemI) BINOP_FALLBACK(Mul) BINOP_FALLBACK(Div) BINOP_FALLBACK(Rem) BINOP_FALLBACK(Add) BINOP_FALLBACK(Sub) BINOP_FALLBACK(Shl) BINOP_FALLBACK(LT) BINOP_FALLBACK(GT) BINOP_FALLBACK(LE) BINOP_FALLBACK(GE) BINOP_FALLBACK(EQ) BINOP_FALLBACK(NE) BINOP_FALLBACK(And) BINOP_FALLBACK(Xor) BINOP_FALLBACK(Or) BINOP_FALLBACK(LAnd) BINOP_FALLBACK(LOr) CAO_FALLBACK(MulAssign) CAO_FALLBACK(DivAssign) CAO_FALLBACK(RemAssign) CAO_FALLBACK(AddAssign) CAO_FALLBACK(SubAssign) CAO_FALLBACK(ShlAssign) CAO_FALLBACK(ShrAssign) CAO_FALLBACK(AndAssign) CAO_FALLBACK(OrAssign) UNARYOP_FALLBACK(PostInc) UNARYOP_FALLBACK(PostDec) UNARYOP_FALLBACK(PreInc) UNARYOP_FALLBACK(PreDec) UNARYOP_FALLBACK(AddrOf) UNARYOP_FALLBACK(Deref) UNARYOP_FALLBACK(Plus) UNARYOP_FALLBACK(Minus) UNARYOP_FALLBACK(Not) UNARYOP_FALLBACK(LNot) UNARYOP_FALLBACK(Real) UNARYOP_FALLBACK(Imag) UNARYOP_FALLBACK(Extension) UNARYOP_FALLBACK(Coawait) RetTy VisitStmt(PTR(Stmt) Node
 

Additional Inherited Members

- Public Attributes inherited from clang::StmtVisitorBase< Ptr, ImplClass, RetTy, ParamTys >
ParamTys P { return RetTy()
 

Detailed Description

This class visits every VarDecl that the initializer references and adds OMPDeclareTargetDeclAttr to each of them.

Definition at line 22653 of file SemaOpenMP.cpp.

Member Function Documentation

◆ declareTargetInitializer()

void GlobalDeclRefChecker::declareTargetInitializer ( Decl TD)
inline

A function that keeps a record of all the Decls that are variables, has OMPDeclareTargetDeclAttr, and has global storage in the DeclVector.

Pop each Decl one at a time and use the inherited 'visit' functions to look for DeclRefExpr.

Definition at line 22676 of file SemaOpenMP.cpp.

References clang::Decl::getAttr(), clang::VarDecl::getInit(), clang::Decl::hasAttr(), clang::VarDecl::hasGlobalStorage(), and clang::VarDecl::hasInit().

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

◆ VisitDeclRefExpr()

void GlobalDeclRefChecker::VisitDeclRefExpr ( DeclRefExpr Node)
inline

A StmtVisitor class function that visits all DeclRefExpr and adds OMPDeclareTargetDeclAttr to them.

Definition at line 22660 of file SemaOpenMP.cpp.

References clang::Decl::addAttr(), and Node.

◆ VisitExpr()

void GlobalDeclRefChecker::VisitExpr ( Expr Ex)
inline

A function that iterates across each of the Expr's children.

Definition at line 22667 of file SemaOpenMP.cpp.

References clang::Stmt::children().


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