clang  3.9.0
Classes | Public Types | Public Member Functions | List of all members
clang::CodeGen::CallArgList Class Reference

CallArgList - Type for representing both the value and type of arguments in a call. More...

#include <CGCall.h>

Inheritance diagram for clang::CodeGen::CallArgList:
[legend]
Collaboration diagram for clang::CodeGen::CallArgList:
[legend]

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< CallArgCleanupgetCleanupsToDeactivate () 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...
 

Detailed Description

CallArgList - Type for representing both the value and type of arguments in a call.

Definition at line 56 of file CGCall.h.

Member Typedef Documentation

typedef llvm::iterator_range<SmallVectorImpl<Writeback>::const_iterator> clang::CodeGen::CallArgList::writeback_const_range

Definition at line 100 of file CGCall.h.

Constructor & Destructor Documentation

clang::CodeGen::CallArgList::CallArgList ( )
inline

Definition at line 59 of file CGCall.h.

Member Function Documentation

void clang::CodeGen::CallArgList::add ( RValue  rvalue,
QualType  type,
bool  needscopy = false 
)
inline
void clang::CodeGen::CallArgList::addArgCleanupDeactivation ( EHScopeStack::stable_iterator  Cleanup,
llvm::Instruction *  IsActiveIP 
)
inline
void clang::CodeGen::CallArgList::addFrom ( const CallArgList other)
inline

Definition at line 85 of file CGCall.h.

References clang::end().

void clang::CodeGen::CallArgList::addWriteback ( LValue  srcLV,
Address  temporary,
llvm::Value toUse 
)
inline

Definition at line 91 of file CGCall.h.

Referenced by emitWritebackArg().

void CallArgList::allocateArgumentMemory ( CodeGenFunction CGF)
void CallArgList::freeArgumentMemory ( CodeGenFunction CGF) const
ArrayRef<CallArgCleanup> clang::CodeGen::CallArgList::getCleanupsToDeactivate ( ) const
inline
llvm::Instruction* clang::CodeGen::CallArgList::getStackBase ( ) const
inline

Definition at line 119 of file CGCall.h.

Referenced by clang::CodeGen::CodeGenFunction::EmitCall().

bool clang::CodeGen::CallArgList::hasWritebacks ( ) const
inline

Definition at line 97 of file CGCall.h.

Referenced by clang::CodeGen::CodeGenFunction::EmitCall().

bool clang::CodeGen::CallArgList::isUsingInAlloca ( ) const
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().

writeback_const_range clang::CodeGen::CallArgList::writebacks ( ) const
inline

Definition at line 102 of file CGCall.h.

Referenced by emitWritebacks().


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