clang
9.0.0
|
All available information about a concrete callee. More...
#include "/work/llvm-www-releases/9.0.0/docsbuild/llvm.src/tools/clang/lib/CodeGen/CGCall.h"
Public Member Functions | |
CGCallee () | |
CGCallee (const CGCalleeInfo &abstractInfo, llvm::Value *functionPtr) | |
Construct a callee. More... | |
bool | isBuiltin () const |
const FunctionDecl * | getBuiltinDecl () const |
unsigned | getBuiltinID () const |
bool | isPseudoDestructor () const |
const CXXPseudoDestructorExpr * | getPseudoDestructorExpr () const |
bool | isOrdinary () const |
CGCalleeInfo | getAbstractInfo () const |
llvm::Value * | getFunctionPointer () const |
void | setFunctionPointer (llvm::Value *functionPtr) |
bool | isVirtual () const |
const CallExpr * | getVirtualCallExpr () const |
GlobalDecl | getVirtualMethodDecl () const |
Address | getThisAddress () const |
llvm::FunctionType * | getVirtualFunctionType () const |
CGCallee | prepareConcreteCallee (CodeGenFunction &CGF) const |
If this is a delayed callee computation of some sort, prepare a concrete callee. More... | |
Static Public Member Functions | |
static CGCallee | forBuiltin (unsigned builtinID, const FunctionDecl *builtinDecl) |
static CGCallee | forPseudoDestructor (const CXXPseudoDestructorExpr *E) |
static CGCallee | forDirect (llvm::Constant *functionPtr, const CGCalleeInfo &abstractInfo=CGCalleeInfo()) |
static CGCallee | forDirect (llvm::FunctionCallee functionPtr, const CGCalleeInfo &abstractInfo=CGCalleeInfo()) |
static CGCallee | forVirtual (const CallExpr *CE, GlobalDecl MD, Address Addr, llvm::FunctionType *FTy) |
|
inline |
|
inlinestatic |
Definition at line 119 of file CGCall.h.
References BuiltinInfo, and result.
Referenced by EmitDirectCallee().
|
inlinestatic |
Definition at line 133 of file CGCall.h.
Referenced by decomposeTypeForEH(), emitAtomicLibcall(), clang::CodeGen::CodeGenFunction::EmitCallAndReturnForThunk(), emitCPPObjectAtomicGetterCall(), emitCPPObjectAtomicSetterCall(), clang::CodeGen::CodeGenFunction::EmitCXXConstructorCall(), clang::CodeGen::CodeGenFunction::EmitCXXMemberCallExpr(), EmitDirectCallee(), clang::CodeGen::CodeGenFunction::EmitForwardingCallToLambda(), emitLibraryCall(), clang::CodeGen::CGCXXABI::EmitLoadOfMemberFunctionPointer(), EmitNewDeleteCall(), emitStructSetterCall(), clang::CodeGen::CodeGenFunction::generateObjCGetterBody(), clang::CodeGen::CodeGenFunction::generateObjCSetterBody(), hasDefaultCXXMethodCC(), and isWeakLinkedClass().
|
inlinestatic |
|
inlinestatic |
Definition at line 127 of file CGCall.h.
References PseudoDestructorInfo, and result.
Referenced by clang::CodeGen::CodeGenFunction::EmitCallee().
|
inlinestatic |
Definition at line 144 of file CGCall.h.
References result, and VirtualInfo.
|
inline |
Definition at line 177 of file CGCall.h.
Referenced by clang::CodeGen::CodeGenFunction::EmitCall().
|
inline |
Definition at line 157 of file CGCall.h.
References BuiltinInfo.
Referenced by clang::CodeGen::CodeGenFunction::EmitCallExpr().
|
inline |
Definition at line 161 of file CGCall.h.
References BuiltinInfo.
Referenced by clang::CodeGen::CodeGenFunction::EmitCallExpr().
|
inline |
Definition at line 183 of file CGCall.h.
Referenced by clang::CodeGen::CodeGenFunction::EmitCall().
|
inline |
Definition at line 169 of file CGCall.h.
Referenced by clang::CodeGen::CodeGenFunction::EmitCallExpr().
|
inline |
|
inline |
|
inline |
Definition at line 207 of file CGCall.h.
Referenced by clang::CodeGen::CodeGenFunction::EmitCall().
|
inline |
|
inline |
Definition at line 154 of file CGCall.h.
Referenced by clang::CodeGen::CodeGenFunction::EmitCallExpr().
|
inline |
Definition at line 174 of file CGCall.h.
Referenced by clang::CodeGen::CodeGenFunction::EmitCall().
|
inline |
Definition at line 166 of file CGCall.h.
Referenced by clang::CodeGen::CodeGenFunction::EmitCallExpr().
|
inline |
Definition at line 192 of file CGCall.h.
Referenced by clang::CodeGen::CodeGenFunction::EmitCall().
CGCallee CGCallee::prepareConcreteCallee | ( | CodeGenFunction & | CGF | ) | const |
If this is a delayed callee computation of some sort, prepare a concrete callee.
Definition at line 4564 of file CGCall.cpp.
References clang::CodeGen::CodeGenFunction::CGM, clang::CallExpr::getBeginLoc(), clang::CodeGen::CodeGenModule::getCXXABI(), and clang::CodeGen::CGCXXABI::getVirtualFunctionPointer().
|
inline |
Definition at line 187 of file CGCall.h.
Referenced by clang::CodeGen::CodeGenFunction::EmitCall().
CGCalleeInfo clang::CodeGen::CGCallee::AbstractInfo |
BuiltinInfoStorage clang::CodeGen::CGCallee::BuiltinInfo |
Definition at line 93 of file CGCall.h.
Referenced by forBuiltin().
PseudoDestructorInfoStorage clang::CodeGen::CGCallee::PseudoDestructorInfo |
Definition at line 94 of file CGCall.h.
Referenced by forPseudoDestructor().
VirtualInfoStorage clang::CodeGen::CGCallee::VirtualInfo |
Definition at line 95 of file CGCall.h.
Referenced by forVirtual().