clang 22.0.0git
clang::CIRGen::CIRGenCallee Class Reference

#include "/home/buildbot/as-worker-4/publish-doxygen-docs/llvm-project/clang/lib/CIR/CodeGen/CIRGenCall.h"

Public Member Functions

 CIRGenCallee ()
 CIRGenCallee (const CIRGenCalleeInfo &abstractInfo, mlir::Operation *funcPtr)
bool isBuiltin () const
const clang::FunctionDeclgetBuiltinDecl () const
unsigned getBuiltinID () const
bool isPseudoDestructor () const
const CXXPseudoDestructorExprgetPseudoDestructorExpr () const
bool isOrdinary () const
CIRGenCallee prepareConcreteCallee (CIRGenFunction &cgf) const
 If this is a delayed callee computation of some sort, prepare a concrete callee.
CIRGenCalleeInfo getAbstractInfo () const
mlir::Operation * getFunctionPointer () const
bool isVirtual () const
const clang::CallExprgetVirtualCallExpr () const
clang::GlobalDecl getVirtualMethodDecl () const
Address getThisAddress () const
cir::FuncType getVirtualFunctionType () const
void setFunctionPointer (mlir::Operation *functionPtr)

Static Public Member Functions

static CIRGenCallee forDirect (mlir::Operation *funcPtr, const CIRGenCalleeInfo &abstractInfo=CIRGenCalleeInfo())
static CIRGenCallee forBuiltin (unsigned builtinID, const clang::FunctionDecl *builtinDecl)
static CIRGenCallee forPseudoDestructor (const clang::CXXPseudoDestructorExpr *expr)
static CIRGenCallee forVirtual (const clang::CallExpr *ce, clang::GlobalDecl md, Address addr, cir::FuncType fTy)

Detailed Description

Definition at line 45 of file CIRGenCall.h.

Constructor & Destructor Documentation

◆ CIRGenCallee() [1/2]

clang::CIRGen::CIRGenCallee::CIRGenCallee ( )
inline

Definition at line 81 of file CIRGenCall.h.

Referenced by forDirect().

◆ CIRGenCallee() [2/2]

clang::CIRGen::CIRGenCallee::CIRGenCallee ( const CIRGenCalleeInfo & abstractInfo,
mlir::Operation * funcPtr )
inline

Definition at line 83 of file CIRGenCall.h.

References abstractInfo.

Member Function Documentation

◆ forBuiltin()

CIRGenCallee clang::CIRGen::CIRGenCallee::forBuiltin ( unsigned builtinID,
const clang::FunctionDecl * builtinDecl )
inlinestatic

Definition at line 106 of file CIRGenCall.h.

References builtinInfo.

◆ forDirect()

◆ forPseudoDestructor()

CIRGenCallee clang::CIRGen::CIRGenCallee::forPseudoDestructor ( const clang::CXXPseudoDestructorExpr * expr)
inlinestatic

◆ forVirtual()

CIRGenCallee clang::CIRGen::CIRGenCallee::forVirtual ( const clang::CallExpr * ce,
clang::GlobalDecl md,
Address addr,
cir::FuncType fTy )
inlinestatic

◆ getAbstractInfo()

CIRGenCalleeInfo clang::CIRGen::CIRGenCallee::getAbstractInfo ( ) const
inline

Definition at line 138 of file CIRGenCall.h.

References abstractInfo, isOrdinary(), isVirtual(), and virtualInfo.

Referenced by clang::CIRGen::CIRGenFunction::emitCall().

◆ getBuiltinDecl()

const clang::FunctionDecl * clang::CIRGen::CIRGenCallee::getBuiltinDecl ( ) const
inline

Definition at line 97 of file CIRGenCall.h.

References builtinInfo, and isBuiltin().

Referenced by clang::CIRGen::CIRGenFunction::emitCallExpr().

◆ getBuiltinID()

unsigned clang::CIRGen::CIRGenCallee::getBuiltinID ( ) const
inline

Definition at line 101 of file CIRGenCall.h.

References builtinInfo, and isBuiltin().

Referenced by clang::CIRGen::CIRGenFunction::emitCallExpr().

◆ getFunctionPointer()

mlir::Operation * clang::CIRGen::CIRGenCallee::getFunctionPointer ( ) const
inline

◆ getPseudoDestructorExpr()

const CXXPseudoDestructorExpr * clang::CIRGen::CIRGenCallee::getPseudoDestructorExpr ( ) const
inline

◆ getThisAddress()

Address clang::CIRGen::CIRGenCallee::getThisAddress ( ) const
inline

Definition at line 173 of file CIRGenCall.h.

References isVirtual(), and virtualInfo.

Referenced by prepareConcreteCallee().

◆ getVirtualCallExpr()

const clang::CallExpr * clang::CIRGen::CIRGenCallee::getVirtualCallExpr ( ) const
inline

Definition at line 163 of file CIRGenCall.h.

References isVirtual(), and virtualInfo.

Referenced by prepareConcreteCallee().

◆ getVirtualFunctionType()

cir::FuncType clang::CIRGen::CIRGenCallee::getVirtualFunctionType ( ) const
inline

Definition at line 178 of file CIRGenCall.h.

References isVirtual(), and virtualInfo.

Referenced by prepareConcreteCallee().

◆ getVirtualMethodDecl()

clang::GlobalDecl clang::CIRGen::CIRGenCallee::getVirtualMethodDecl ( ) const
inline

Definition at line 168 of file CIRGenCall.h.

References isVirtual(), and virtualInfo.

Referenced by prepareConcreteCallee().

◆ isBuiltin()

bool clang::CIRGen::CIRGenCallee::isBuiltin ( ) const
inline

◆ isOrdinary()

bool clang::CIRGen::CIRGenCallee::isOrdinary ( ) const
inline

Definition at line 130 of file CIRGenCall.h.

Referenced by getAbstractInfo(), getFunctionPointer(), and setFunctionPointer().

◆ isPseudoDestructor()

bool clang::CIRGen::CIRGenCallee::isPseudoDestructor ( ) const
inline

◆ isVirtual()

bool clang::CIRGen::CIRGenCallee::isVirtual ( ) const
inline

◆ prepareConcreteCallee()

◆ setFunctionPointer()

void clang::CIRGen::CIRGenCallee::setFunctionPointer ( mlir::Operation * functionPtr)
inline

Definition at line 183 of file CIRGenCall.h.

References isOrdinary().

Referenced by clang::CIRGen::CIRGenFunction::emitCall().

Member Data Documentation

◆ abstractInfo

CIRGenCalleeInfo clang::CIRGen::CIRGenCallee::abstractInfo

Definition at line 72 of file CIRGenCall.h.

Referenced by CIRGenCallee(), forDirect(), and getAbstractInfo().

◆ builtinInfo

BuiltinInfoStorage clang::CIRGen::CIRGenCallee::builtinInfo

Definition at line 73 of file CIRGenCall.h.

Referenced by forBuiltin(), getBuiltinDecl(), and getBuiltinID().

◆ pseudoDestructorInfo

PseudoDestructorInfoStorage clang::CIRGen::CIRGenCallee::pseudoDestructorInfo

Definition at line 74 of file CIRGenCall.h.

Referenced by forPseudoDestructor(), and getPseudoDestructorExpr().

◆ virtualInfo

VirtualInfoStorage clang::CIRGen::CIRGenCallee::virtualInfo

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