clang
3.9.0
|
CallArgList - Type for representing both the value and type of arguments in a call. More...
#include <CGCall.h>
Classes | |
struct | CallArgCleanup |
struct | Writeback |
Public Types | |
typedef llvm::iterator_range < SmallVectorImpl< Writeback > ::const_iterator > | writeback_const_range |
Public Member Functions | |
CallArgList () | |
void | add (RValue rvalue, QualType type, bool needscopy=false) |
void | addFrom (const CallArgList &other) |
void | addWriteback (LValue srcLV, Address temporary, llvm::Value *toUse) |
bool | hasWritebacks () const |
writeback_const_range | writebacks () const |
void | addArgCleanupDeactivation (EHScopeStack::stable_iterator Cleanup, llvm::Instruction *IsActiveIP) |
ArrayRef< CallArgCleanup > | getCleanupsToDeactivate () const |
void | allocateArgumentMemory (CodeGenFunction &CGF) |
llvm::Instruction * | getStackBase () const |
void | freeArgumentMemory (CodeGenFunction &CGF) const |
bool | isUsingInAlloca () const |
Returns if we're using an inalloca struct to pass arguments in memory. More... | |
CallArgList - Type for representing both the value and type of arguments in a call.
typedef llvm::iterator_range<SmallVectorImpl<Writeback>::const_iterator> clang::CodeGen::CallArgList::writeback_const_range |
|
inline |
Definition at line 81 of file CGCall.h.
Referenced by AddDirectArgument(), commonEmitCXXMemberOrOperatorCall(), clang::CodeGen::CodeGenFunction::EmitAtomicExpr(), clang::CodeGen::CodeGenFunction::EmitAtomicStore(), clang::CodeGen::CodeGenFunction::EmitBlockCallExpr(), clang::CodeGen::CodeGenFunction::EmitCall(), clang::CodeGen::CodeGenFunction::EmitCallAndReturnForThunk(), clang::CodeGen::CodeGenFunction::EmitCallArg(), clang::CodeGen::CodeGenFunction::EmitCallArgs(), emitCPPObjectAtomicGetterCall(), emitCPPObjectAtomicSetterCall(), clang::CodeGen::CodeGenFunction::EmitCXXConstructorCall(), clang::CodeGen::CodeGenFunction::EmitCXXMemberPointerCallExpr(), clang::CodeGen::CodeGenFunction::EmitCXXNewExpr(), clang::CodeGen::CodeGenFunction::EmitDelegateCallArg(), clang::CodeGen::CodeGenFunction::EmitDelegateCXXConstructorCall(), clang::CodeGen::CodeGenFunction::EmitLambdaBlockInvokeBody(), clang::CodeGen::CodeGenFunction::EmitLambdaDelegatingInvokeBody(), clang::CodeGen::CodeGenFunction::EmitObjCBoxedExpr(), clang::CodeGen::CodeGenFunction::EmitObjCCollectionLiteral(), clang::CodeGen::CodeGenFunction::EmitObjCForCollectionStmt(), emitStructGetterCall(), emitStructSetterCall(), clang::CodeGen::CodeGenFunction::EmitSynthesizedCXXCopyCtorCall(), emitWritebackArg(), clang::CodeGen::CodeGenFunction::generateObjCGetterBody(), and clang::CodeGen::CodeGenFunction::generateObjCSetterBody().
|
inline |
Definition at line 106 of file CGCall.h.
References clang::CodeGen::CallArgList::CallArgCleanup::Cleanup, and clang::CodeGen::CallArgList::CallArgCleanup::IsActiveIP.
Referenced by clang::CodeGen::CodeGenFunction::EmitCallArg().
|
inline |
Definition at line 85 of file CGCall.h.
References clang::end().
|
inline |
Definition at line 91 of file CGCall.h.
Referenced by emitWritebackArg().
void CallArgList::allocateArgumentMemory | ( | CodeGenFunction & | CGF | ) |
Definition at line 3132 of file CGCall.cpp.
References clang::CodeGen::CodeGenFunction::Builder, clang::CodeGen::CodeGenFunction::CGM, and clang::CodeGen::CodeGenModule::getIntrinsic().
Referenced by clang::CodeGen::CodeGenFunction::EmitCallArgs().
void CallArgList::freeArgumentMemory | ( | CodeGenFunction & | CGF | ) | const |
Definition at line 3140 of file CGCall.cpp.
References clang::CodeGen::CodeGenFunction::Builder, clang::CodeGen::CodeGenFunction::CGM, and clang::CodeGen::CodeGenModule::getIntrinsic().
Referenced by clang::CodeGen::CodeGenFunction::EmitCall().
|
inline |
Definition at line 114 of file CGCall.h.
Referenced by deactivateArgCleanupsBeforeCall(), and clang::CodeGen::CodeGenFunction::EmitCall().
|
inline |
Definition at line 119 of file CGCall.h.
Referenced by clang::CodeGen::CodeGenFunction::EmitCall().
|
inline |
Definition at line 97 of file CGCall.h.
Referenced by clang::CodeGen::CodeGenFunction::EmitCall().
|
inline |
Returns if we're using an inalloca struct to pass arguments in memory.
Definition at line 124 of file CGCall.h.
Referenced by clang::CodeGen::CodeGenFunction::EmitCallArg().
|
inline |
Definition at line 102 of file CGCall.h.
Referenced by emitWritebacks().