LLVM API Documentation
CCValAssign - Represent assignment of one arg/retval to a location. More...
#include <CallingConvLower.h>
Public Types | |
enum | LocInfo { Full, SExt, ZExt, AExt, BCvt, VExt, Indirect } |
Public Member Functions | |
unsigned | getValNo () const |
MVT | getValVT () const |
bool | isRegLoc () const |
bool | isMemLoc () const |
bool | needsCustom () const |
unsigned | getLocReg () const |
unsigned | getLocMemOffset () const |
MVT | getLocVT () const |
LocInfo | getLocInfo () const |
bool | isExtInLoc () const |
Static Public Member Functions | |
static CCValAssign | getReg (unsigned ValNo, MVT ValVT, unsigned RegNo, MVT LocVT, LocInfo HTP) |
static CCValAssign | getCustomReg (unsigned ValNo, MVT ValVT, unsigned RegNo, MVT LocVT, LocInfo HTP) |
static CCValAssign | getMem (unsigned ValNo, MVT ValVT, unsigned Offset, MVT LocVT, LocInfo HTP) |
static CCValAssign | getCustomMem (unsigned ValNo, MVT ValVT, unsigned Offset, MVT LocVT, LocInfo HTP) |
CCValAssign - Represent assignment of one arg/retval to a location.
Definition at line 31 of file CallingConvLower.h.
Enumerator | |
---|---|
Full | |
SExt | |
ZExt | |
AExt | |
BCvt | |
VExt | |
Indirect |
Definition at line 33 of file CallingConvLower.h.
|
inlinestatic |
Definition at line 105 of file CallingConvLower.h.
References getMem(), and llvm::AArch64ISD::Ret.
Referenced by CC_Sparc_Assign_f64(), CC_Sparc_Assign_SRet(), llvm::f64AssignAAPCS(), and llvm::f64AssignAPCS().
|
inlinestatic |
Definition at line 82 of file CallingConvLower.h.
References getReg(), and llvm::AArch64ISD::Ret.
Referenced by CC_Sparc64_Half(), CC_Sparc_Assign_f64(), llvm::f64AssignAAPCS(), llvm::f64AssignAPCS(), and llvm::f64RetAssign().
|
inline |
Definition at line 126 of file CallingConvLower.h.
Referenced by canUseSiblingCall(), convertLocVTToValVT(), convertValVTToLocVT(), fixupVariableFloatArgs(), llvm::HexagonTargetLowering::LowerCall(), llvm::AArch64TargetLowering::LowerCall(), llvm::SystemZTargetLowering::LowerCall(), llvm::SparcTargetLowering::LowerCall_32(), llvm::SparcTargetLowering::LowerCall_64(), llvm::AArch64TargetLowering::LowerCallResult(), llvm::AArch64TargetLowering::LowerFormalArguments(), llvm::SparcTargetLowering::LowerFormalArguments_64(), llvm::AArch64TargetLowering::LowerReturn(), and llvm::SparcTargetLowering::LowerReturn_64().
|
inline |
Definition at line 123 of file CallingConvLower.h.
References isMemLoc().
Referenced by llvm::HexagonTargetLowering::LowerCall(), llvm::AArch64TargetLowering::LowerCall(), llvm::SystemZTargetLowering::LowerCall(), llvm::SparcTargetLowering::LowerCall_32(), llvm::SparcTargetLowering::LowerCall_64(), llvm::R600TargetLowering::LowerFormalArguments(), llvm::SITargetLowering::LowerFormalArguments(), llvm::HexagonTargetLowering::LowerFormalArguments(), llvm::AArch64TargetLowering::LowerFormalArguments(), llvm::SystemZTargetLowering::LowerFormalArguments(), llvm::SparcTargetLowering::LowerFormalArguments_32(), and llvm::SparcTargetLowering::LowerFormalArguments_64().
|
inline |
Definition at line 122 of file CallingConvLower.h.
References isRegLoc().
Referenced by canUseSiblingCall(), fixupVariableFloatArgs(), llvm::HexagonTargetLowering::LowerCall(), llvm::AArch64TargetLowering::LowerCall(), llvm::SystemZTargetLowering::LowerCall(), llvm::SparcTargetLowering::LowerCall_32(), llvm::SparcTargetLowering::LowerCall_64(), llvm::AArch64TargetLowering::LowerCallResult(), llvm::R600TargetLowering::LowerFormalArguments(), llvm::SITargetLowering::LowerFormalArguments(), llvm::HexagonTargetLowering::LowerFormalArguments(), llvm::AArch64TargetLowering::LowerFormalArguments(), llvm::SystemZTargetLowering::LowerFormalArguments(), llvm::SparcTargetLowering::LowerFormalArguments_32(), llvm::SparcTargetLowering::LowerFormalArguments_64(), llvm::HexagonTargetLowering::LowerReturn(), llvm::AArch64TargetLowering::LowerReturn(), llvm::SystemZTargetLowering::LowerReturn(), llvm::SparcTargetLowering::LowerReturn_32(), and llvm::SparcTargetLowering::LowerReturn_64().
|
inline |
Definition at line 124 of file CallingConvLower.h.
Referenced by convertLocVTToValVT(), convertValVTToLocVT(), fixupVariableFloatArgs(), llvm::HexagonTargetLowering::LowerCall(), llvm::AArch64TargetLowering::LowerCall(), llvm::SystemZTargetLowering::LowerCall(), llvm::SparcTargetLowering::LowerCall_32(), llvm::SparcTargetLowering::LowerCall_64(), llvm::AArch64TargetLowering::LowerCallResult(), llvm::SITargetLowering::LowerFormalArguments(), llvm::HexagonTargetLowering::LowerFormalArguments(), llvm::AArch64TargetLowering::LowerFormalArguments(), llvm::SystemZTargetLowering::LowerFormalArguments(), llvm::SparcTargetLowering::LowerFormalArguments_32(), llvm::SparcTargetLowering::LowerFormalArguments_64(), llvm::HexagonTargetLowering::LowerReturn(), llvm::AArch64TargetLowering::LowerReturn(), llvm::SystemZTargetLowering::LowerReturn(), llvm::SparcTargetLowering::LowerReturn_32(), and llvm::SparcTargetLowering::LowerReturn_64().
|
inlinestatic |
Definition at line 91 of file CallingConvLower.h.
References llvm::AArch64ISD::Ret.
Referenced by allocateStack(), CC_Hexagon(), CC_Hexagon32(), CC_Hexagon64(), CC_Hexagon_VarArg(), CC_MipsO32(), CC_Sparc64_Full(), CC_Sparc64_Half(), fixupVariableFloatArgs(), getCustomMem(), llvm::Hexagon_CCState::HandleByVal(), llvm::CCState::HandleByVal(), RetCC_Hexagon32(), and RetCC_Hexagon64().
|
inlinestatic |
Definition at line 68 of file CallingConvLower.h.
References llvm::AArch64ISD::Ret.
Referenced by AnalyzeArguments(), llvm::Hexagon_CCState::AnalyzeReturn(), CC_Hexagon32(), CC_Hexagon64(), CC_MipsO32(), CC_Sparc64_Full(), CC_Sparc64_Half(), fixupVariableFloatArgs(), getCustomReg(), RetCC_Hexagon32(), and RetCC_Hexagon64().
|
inline |
Definition at line 114 of file CallingConvLower.h.
Referenced by fixupVariableFloatArgs().
|
inline |
Definition at line 115 of file CallingConvLower.h.
Referenced by convertLocVTToValVT(), fixupVariableFloatArgs(), llvm::AArch64TargetLowering::LowerCall(), llvm::SystemZTargetLowering::LowerCall(), llvm::SparcTargetLowering::LowerCall_64(), llvm::AArch64TargetLowering::LowerCallResult(), llvm::AArch64TargetLowering::LowerFormalArguments(), llvm::SparcTargetLowering::LowerFormalArguments_32(), llvm::SparcTargetLowering::LowerFormalArguments_64(), and llvm::SparcTargetLowering::LowerReturn_64().
|
inline |
Definition at line 127 of file CallingConvLower.h.
References AExt, SExt, and ZExt.
Referenced by convertLocVTToValVT(), llvm::SparcTargetLowering::LowerCall_64(), and llvm::SparcTargetLowering::LowerFormalArguments_64().
|
inline |
Definition at line 118 of file CallingConvLower.h.
Referenced by getLocMemOffset(), llvm::HexagonTargetLowering::LowerCall(), llvm::AArch64TargetLowering::LowerCall(), llvm::SystemZTargetLowering::LowerCall(), llvm::SparcTargetLowering::LowerCall_32(), llvm::SparcTargetLowering::LowerCall_64(), llvm::SITargetLowering::LowerFormalArguments(), llvm::HexagonTargetLowering::LowerFormalArguments(), llvm::AArch64TargetLowering::LowerFormalArguments(), llvm::SystemZTargetLowering::LowerFormalArguments(), llvm::SparcTargetLowering::LowerFormalArguments_32(), and llvm::SparcTargetLowering::LowerFormalArguments_64().
|
inline |
Definition at line 117 of file CallingConvLower.h.
Referenced by canUseSiblingCall(), fixupVariableFloatArgs(), getLocReg(), llvm::HexagonTargetLowering::LowerCall(), llvm::AArch64TargetLowering::LowerCall(), llvm::SystemZTargetLowering::LowerCall(), llvm::SparcTargetLowering::LowerCall_32(), llvm::SparcTargetLowering::LowerCall_64(), llvm::AArch64TargetLowering::LowerCallResult(), llvm::SITargetLowering::LowerFormalArguments(), llvm::HexagonTargetLowering::LowerFormalArguments(), llvm::AArch64TargetLowering::LowerFormalArguments(), llvm::SystemZTargetLowering::LowerFormalArguments(), llvm::SparcTargetLowering::LowerFormalArguments_32(), llvm::SparcTargetLowering::LowerFormalArguments_64(), llvm::AArch64TargetLowering::LowerReturn(), llvm::SystemZTargetLowering::LowerReturn(), llvm::SparcTargetLowering::LowerReturn_32(), and llvm::SparcTargetLowering::LowerReturn_64().
|
inline |
Definition at line 120 of file CallingConvLower.h.
Referenced by llvm::SparcTargetLowering::LowerCall_32(), llvm::SparcTargetLowering::LowerCall_64(), llvm::SparcTargetLowering::LowerFormalArguments_32(), llvm::SparcTargetLowering::LowerFormalArguments_64(), and llvm::SparcTargetLowering::LowerReturn_64().