clang API Documentation

Classes | Public Types | Public Member Functions | Static Public Member Functions
clang::CodeGen::CGFunctionInfo Class Reference

#include <CGCall.h>

Inheritance diagram for clang::CodeGen::CGFunctionInfo:
Inheritance graph
[legend]
Collaboration diagram for clang::CodeGen::CGFunctionInfo:
Collaboration graph
[legend]

List of all members.

Classes

struct  ArgInfo

Public Types

typedef const ArgInfo * const_arg_iterator
typedef ArgInfo * arg_iterator

Public Member Functions

const_arg_iterator arg_begin () const
const_arg_iterator arg_end () const
arg_iterator arg_begin ()
arg_iterator arg_end ()
unsigned arg_size () const
bool isVariadic () const
RequiredArgs getRequiredArgs () const
bool isNoReturn () const
bool isReturnsRetained () const
CallingConv getASTCallingConvention () const
unsigned getCallingConvention () const
unsigned getEffectiveCallingConvention () const
void setEffectiveCallingConvention (unsigned Value)
bool getHasRegParm () const
unsigned getRegParm () const
FunctionType::ExtInfo getExtInfo () const
CanQualType getReturnType () const
ABIArgInfogetReturnInfo ()
const ABIArgInfogetReturnInfo () const
void Profile (llvm::FoldingSetNodeID &ID)

Static Public Member Functions

static CGFunctionInfocreate (unsigned llvmCC, const FunctionType::ExtInfo &extInfo, CanQualType resultType, ArrayRef< CanQualType > argTypes, RequiredArgs required)
static void Profile (llvm::FoldingSetNodeID &ID, const FunctionType::ExtInfo &info, RequiredArgs required, CanQualType resultType, ArrayRef< CanQualType > argTypes)

Detailed Description

CGFunctionInfo - Class to encapsulate the information about a function definition.

Definition at line 158 of file CGCall.h.


Member Typedef Documentation

Definition at line 205 of file CGCall.h.

Definition at line 204 of file CGCall.h.


Member Function Documentation

const_arg_iterator clang::CodeGen::CGFunctionInfo::arg_begin ( ) const [inline]
arg_iterator clang::CodeGen::CGFunctionInfo::arg_begin ( ) [inline]

Definition at line 209 of file CGCall.h.

const_arg_iterator clang::CodeGen::CGFunctionInfo::arg_end ( ) const [inline]
arg_iterator clang::CodeGen::CGFunctionInfo::arg_end ( ) [inline]

Definition at line 210 of file CGCall.h.

unsigned clang::CodeGen::CGFunctionInfo::arg_size ( ) const [inline]
CGFunctionInfo * CGFunctionInfo::create ( unsigned  llvmCC,
const FunctionType::ExtInfo extInfo,
CanQualType  resultType,
ArrayRef< CanQualType argTypes,
RequiredArgs  required 
) [static]
CallingConv clang::CodeGen::CGFunctionInfo::getASTCallingConvention ( ) const [inline]

getASTCallingConvention() - Return the AST-specified calling convention.

Definition at line 225 of file CGCall.h.

Referenced by getExtInfo(), and Profile().

unsigned clang::CodeGen::CGFunctionInfo::getCallingConvention ( ) const [inline]

getCallingConvention - Return the user specified calling convention, which has been translated into an LLVM CC.

Definition at line 231 of file CGCall.h.

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

unsigned clang::CodeGen::CGFunctionInfo::getEffectiveCallingConvention ( ) const [inline]

getEffectiveCallingConvention - Return the actual calling convention to use, which may depend on the ABI.

Definition at line 235 of file CGCall.h.

Referenced by clang::CodeGen::CodeGenModule::ConstructAttributeList().

FunctionType::ExtInfo clang::CodeGen::CGFunctionInfo::getExtInfo ( ) const [inline]
bool clang::CodeGen::CGFunctionInfo::getHasRegParm ( ) const [inline]

Definition at line 242 of file CGCall.h.

Referenced by clang::CodeGen::CodeGenModule::ConstructAttributeList(), and getExtInfo().

unsigned clang::CodeGen::CGFunctionInfo::getRegParm ( ) const [inline]
RequiredArgs clang::CodeGen::CGFunctionInfo::getRequiredArgs ( ) const [inline]

Definition at line 215 of file CGCall.h.

Referenced by clang::CodeGen::CGObjCRuntime::getMessageSendInfo().

ABIArgInfo& clang::CodeGen::CGFunctionInfo::getReturnInfo ( ) [inline]
const ABIArgInfo& clang::CodeGen::CGFunctionInfo::getReturnInfo ( ) const [inline]

Definition at line 255 of file CGCall.h.

CanQualType clang::CodeGen::CGFunctionInfo::getReturnType ( ) const [inline]
bool clang::CodeGen::CGFunctionInfo::isNoReturn ( ) const [inline]
bool clang::CodeGen::CGFunctionInfo::isReturnsRetained ( ) const [inline]

In ARC, whether this function retains its return value. This is not always reliable for call sites.

Definition at line 221 of file CGCall.h.

Referenced by clang::CodeGen::CodeGenFunction::EmitFunctionEpilog(), getExtInfo(), and clang::CodeGen::CodeGenFunction::StartFunction().

bool clang::CodeGen::CGFunctionInfo::isVariadic ( ) const [inline]
void clang::CodeGen::CGFunctionInfo::Profile ( llvm::FoldingSetNodeID &  ID) [inline]
static void clang::CodeGen::CGFunctionInfo::Profile ( llvm::FoldingSetNodeID &  ID,
const FunctionType::ExtInfo info,
RequiredArgs  required,
CanQualType  resultType,
ArrayRef< CanQualType argTypes 
) [inline, static]
void clang::CodeGen::CGFunctionInfo::setEffectiveCallingConvention ( unsigned  Value) [inline]

Definition at line 238 of file CGCall.h.


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