class CGCallee
Declaration
class CGCallee { /* full declaration omitted */ };
Description
All available information about a concrete callee.
Declared at: clang/lib/CodeGen/CGCall.h:60
Member Variables
- private clang::CodeGen::CGCallee::SpecialKind KindOrFunctionPointer
- private anonymous struct / union
Method Overview
- private CGCallee(const clang::FunctionDecl * builtinDecl, unsigned int builtinID)
- public CGCallee()
- public CGCallee(const clang::CodeGen::CGCalleeInfo & abstractInfo, llvm::Value * functionPtr)
- private CGCallee(clang::CodeGen::CGCallee::SpecialKind kind)
- public static clang::CodeGen::CGCallee forBuiltin(unsigned int builtinID, const clang::FunctionDecl * builtinDecl)
- public static clang::CodeGen::CGCallee forDirect(llvm::Constant * functionPtr, const clang::CodeGen::CGCalleeInfo & abstractInfo = clang::CodeGen::CGCalleeInfo())
- public static clang::CodeGen::CGCallee forDirect(llvm::FunctionCallee functionPtr, const clang::CodeGen::CGCalleeInfo & abstractInfo = clang::CodeGen::CGCalleeInfo())
- public static clang::CodeGen::CGCallee forPseudoDestructor(const clang::CXXPseudoDestructorExpr * E)
- public static clang::CodeGen::CGCallee forVirtual(const clang::CallExpr * CE, clang::GlobalDecl MD, clang::CodeGen::Address Addr, llvm::FunctionType * FTy)
- public clang::CodeGen::CGCalleeInfo getAbstractInfo() const
- public const clang::FunctionDecl * getBuiltinDecl() const
- public unsigned int getBuiltinID() const
- public llvm::Value * getFunctionPointer() const
- public const clang::CXXPseudoDestructorExpr * getPseudoDestructorExpr() const
- public clang::CodeGen::Address getThisAddress() const
- public const clang::CallExpr * getVirtualCallExpr() const
- public llvm::FunctionType * getVirtualFunctionType() const
- public clang::GlobalDecl getVirtualMethodDecl() const
- public bool isBuiltin() const
- public bool isOrdinary() const
- public bool isPseudoDestructor() const
- public bool isVirtual() const
- public clang::CodeGen::CGCallee prepareConcreteCallee(clang::CodeGen::CodeGenFunction & CGF) const
- public void setFunctionPointer(llvm::Value * functionPtr)
Methods
¶CGCallee(const clang::FunctionDecl* builtinDecl,
unsigned int builtinID)
CGCallee(const clang::FunctionDecl* builtinDecl,
unsigned int builtinID)
Declared at: clang/lib/CodeGen/CGCall.h:94
Parameters
- const clang::FunctionDecl* builtinDecl
- unsigned int builtinID
¶CGCallee()
CGCallee()
Declared at: clang/lib/CodeGen/CGCall.h:101
¶CGCallee(const clang::CodeGen::CGCalleeInfo&
abstractInfo,
llvm::Value* functionPtr)
CGCallee(const clang::CodeGen::CGCalleeInfo&
abstractInfo,
llvm::Value* functionPtr)
Description
Construct a callee. Call this constructor directly when this isn't a direct call.
Declared at: clang/lib/CodeGen/CGCall.h:105
Parameters
- const clang::CodeGen::CGCalleeInfo& abstractInfo
- llvm::Value* functionPtr
¶CGCallee(
clang::CodeGen::CGCallee::SpecialKind kind)
CGCallee(
clang::CodeGen::CGCallee::SpecialKind kind)
Declared at: clang/lib/CodeGen/CGCall.h:92
Parameters
- clang::CodeGen::CGCallee::SpecialKind kind
¶static clang::CodeGen::CGCallee forBuiltin(
unsigned int builtinID,
const clang::FunctionDecl* builtinDecl)
static clang::CodeGen::CGCallee forBuiltin(
unsigned int builtinID,
const clang::FunctionDecl* builtinDecl)
Declared at: clang/lib/CodeGen/CGCall.h:116
Parameters
- unsigned int builtinID
- const clang::FunctionDecl* builtinDecl
¶static clang::CodeGen::CGCallee forDirect(
llvm::Constant* functionPtr,
const clang::CodeGen::CGCalleeInfo&
abstractInfo =
clang::CodeGen::CGCalleeInfo())
static clang::CodeGen::CGCallee forDirect(
llvm::Constant* functionPtr,
const clang::CodeGen::CGCalleeInfo&
abstractInfo =
clang::CodeGen::CGCalleeInfo())
Declared at: clang/lib/CodeGen/CGCall.h:130
Parameters
- llvm::Constant* functionPtr
- const clang::CodeGen::CGCalleeInfo& abstractInfo = clang::CodeGen::CGCalleeInfo()
¶static clang::CodeGen::CGCallee forDirect(
llvm::FunctionCallee functionPtr,
const clang::CodeGen::CGCalleeInfo&
abstractInfo =
clang::CodeGen::CGCalleeInfo())
static clang::CodeGen::CGCallee forDirect(
llvm::FunctionCallee functionPtr,
const clang::CodeGen::CGCalleeInfo&
abstractInfo =
clang::CodeGen::CGCalleeInfo())
Declared at: clang/lib/CodeGen/CGCall.h:135
Parameters
- llvm::FunctionCallee functionPtr
- const clang::CodeGen::CGCalleeInfo& abstractInfo = clang::CodeGen::CGCalleeInfo()
¶static clang::CodeGen::CGCallee
forPseudoDestructor(
const clang::CXXPseudoDestructorExpr* E)
static clang::CodeGen::CGCallee
forPseudoDestructor(
const clang::CXXPseudoDestructorExpr* E)
Declared at: clang/lib/CodeGen/CGCall.h:124
Parameters
- const clang::CXXPseudoDestructorExpr* E
¶static clang::CodeGen::CGCallee forVirtual(
const clang::CallExpr* CE,
clang::GlobalDecl MD,
clang::CodeGen::Address Addr,
llvm::FunctionType* FTy)
static clang::CodeGen::CGCallee forVirtual(
const clang::CallExpr* CE,
clang::GlobalDecl MD,
clang::CodeGen::Address Addr,
llvm::FunctionType* FTy)
Declared at: clang/lib/CodeGen/CGCall.h:140
Parameters
- const clang::CallExpr* CE
- clang::GlobalDecl MD
- clang::CodeGen::Address Addr
- llvm::FunctionType* FTy
¶clang::CodeGen::CGCalleeInfo getAbstractInfo()
const
clang::CodeGen::CGCalleeInfo getAbstractInfo()
const
Declared at: clang/lib/CodeGen/CGCall.h:173
¶const clang::FunctionDecl* getBuiltinDecl() const
const clang::FunctionDecl* getBuiltinDecl() const
Declared at: clang/lib/CodeGen/CGCall.h:153
¶unsigned int getBuiltinID() const
unsigned int getBuiltinID() const
Declared at: clang/lib/CodeGen/CGCall.h:157
¶llvm::Value* getFunctionPointer() const
llvm::Value* getFunctionPointer() const
Declared at: clang/lib/CodeGen/CGCall.h:179
¶const clang::CXXPseudoDestructorExpr*
getPseudoDestructorExpr() const
const clang::CXXPseudoDestructorExpr*
getPseudoDestructorExpr() const
Declared at: clang/lib/CodeGen/CGCall.h:165
¶clang::CodeGen::Address getThisAddress() const
clang::CodeGen::Address getThisAddress() const
Declared at: clang/lib/CodeGen/CGCall.h:200
¶const clang::CallExpr* getVirtualCallExpr() const
const clang::CallExpr* getVirtualCallExpr() const
Declared at: clang/lib/CodeGen/CGCall.h:192
¶llvm::FunctionType* getVirtualFunctionType() const
llvm::FunctionType* getVirtualFunctionType() const
Declared at: clang/lib/CodeGen/CGCall.h:204
¶clang::GlobalDecl getVirtualMethodDecl() const
clang::GlobalDecl getVirtualMethodDecl() const
Declared at: clang/lib/CodeGen/CGCall.h:196
¶bool isBuiltin() const
bool isBuiltin() const
Declared at: clang/lib/CodeGen/CGCall.h:150
¶bool isOrdinary() const
bool isOrdinary() const
Declared at: clang/lib/CodeGen/CGCall.h:170
¶bool isPseudoDestructor() const
bool isPseudoDestructor() const
Declared at: clang/lib/CodeGen/CGCall.h:162
¶bool isVirtual() const
bool isVirtual() const
Declared at: clang/lib/CodeGen/CGCall.h:189
¶clang::CodeGen::CGCallee prepareConcreteCallee(
clang::CodeGen::CodeGenFunction& CGF) const
clang::CodeGen::CGCallee prepareConcreteCallee(
clang::CodeGen::CodeGenFunction& CGF) const
Description
If this is a delayed callee computation of some sort, prepare a concrete callee.
Declared at: clang/lib/CodeGen/CGCall.h:211
Parameters
¶void setFunctionPointer(llvm::Value* functionPtr)
void setFunctionPointer(llvm::Value* functionPtr)
Declared at: clang/lib/CodeGen/CGCall.h:183
Parameters
- llvm::Value* functionPtr