|
LLVM
3.7.0
|
CCValAssign - Represent assignment of one arg/retval to a location. More...
#include <CallingConvLower.h>
Public Types | |
| enum | LocInfo { Full, SExt, ZExt, AExt, SExtUpper, ZExtUpper, AExtUpper, BCvt, VExt, FPExt, Indirect } |
Public Member Functions | |
| void | convertToReg (unsigned RegNo) |
| void | convertToMem (unsigned Offset) |
| unsigned | getValNo () const |
| MVT | getValVT () const |
| bool | isRegLoc () const |
| bool | isMemLoc () const |
| bool | needsCustom () const |
| unsigned | getLocReg () const |
| unsigned | getLocMemOffset () const |
| unsigned | getExtraInfo () const |
| MVT | getLocVT () const |
| LocInfo | getLocInfo () const |
| bool | isExtInLoc () const |
| bool | isUpperBitsInLoc () 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) |
| static CCValAssign | getPending (unsigned ValNo, MVT ValVT, MVT LocVT, LocInfo HTP, unsigned ExtraInfo=0) |
CCValAssign - Represent assignment of one arg/retval to a location.
Definition at line 32 of file CallingConvLower.h.
| Enumerator | |
|---|---|
| Full | |
| SExt | |
| ZExt | |
| AExt | |
| SExtUpper | |
| ZExtUpper | |
| AExtUpper | |
| BCvt | |
| VExt | |
| FPExt | |
| Indirect | |
Definition at line 34 of file CallingConvLower.h.
|
inline |
Definition at line 135 of file CallingConvLower.h.
|
inline |
Definition at line 130 of file CallingConvLower.h.
|
inlinestatic |
Definition at line 114 of file CallingConvLower.h.
References getMem(), and llvm::MipsISD::Ret.
Referenced by CC_Sparc_Assign_f64(), CC_Sparc_Assign_SRet(), llvm::f64AssignAAPCS(), and llvm::f64AssignAPCS().
|
inlinestatic |
Definition at line 91 of file CallingConvLower.h.
References getReg(), and llvm::MipsISD::Ret.
Referenced by CC_Sparc64_Half(), CC_Sparc_Assign_f64(), llvm::f64AssignAAPCS(), llvm::f64AssignAPCS(), llvm::f64RetAssign(), and fixupVariableFloatArgs().
|
inline |
Definition at line 150 of file CallingConvLower.h.
|
inline |
Definition at line 153 of file CallingConvLower.h.
Referenced by canUseSiblingCall(), convertLocVTToValVT(), convertValVTToLocVT(), fixupVariableFloatArgs(), llvm::HexagonTargetLowering::LowerCall(), llvm::SystemZTargetLowering::LowerCall(), llvm::SparcTargetLowering::LowerCall_32(), llvm::SparcTargetLowering::LowerCall_64(), llvm::SparcTargetLowering::LowerFormalArguments_64(), llvm::SparcTargetLowering::LowerReturn_64(), and UnpackFromArgumentSlot().
|
inline |
Definition at line 149 of file CallingConvLower.h.
References isMemLoc().
Referenced by llvm::HexagonTargetLowering::LowerCall(), llvm::SystemZTargetLowering::LowerCall(), llvm::SparcTargetLowering::LowerCall_32(), llvm::SparcTargetLowering::LowerCall_64(), LowerCallResult(), llvm::R600TargetLowering::LowerFormalArguments(), llvm::SITargetLowering::LowerFormalArguments(), llvm::HexagonTargetLowering::LowerFormalArguments(), llvm::SystemZTargetLowering::LowerFormalArguments(), llvm::SparcTargetLowering::LowerFormalArguments_32(), and llvm::SparcTargetLowering::LowerFormalArguments_64().
|
inline |
Definition at line 148 of file CallingConvLower.h.
References isRegLoc().
Referenced by canUseSiblingCall(), fixupVariableFloatArgs(), llvm::HexagonTargetLowering::LowerCall(), llvm::SystemZTargetLowering::LowerCall(), llvm::SparcTargetLowering::LowerCall_32(), llvm::SparcTargetLowering::LowerCall_64(), LowerCallResult(), llvm::R600TargetLowering::LowerFormalArguments(), llvm::SITargetLowering::LowerFormalArguments(), llvm::HexagonTargetLowering::LowerFormalArguments(), llvm::SystemZTargetLowering::LowerFormalArguments(), llvm::SparcTargetLowering::LowerFormalArguments_32(), llvm::SparcTargetLowering::LowerFormalArguments_64(), llvm::HexagonTargetLowering::LowerReturn(), llvm::SystemZTargetLowering::LowerReturn(), llvm::SparcTargetLowering::LowerReturn_32(), and llvm::SparcTargetLowering::LowerReturn_64().
|
inline |
Definition at line 151 of file CallingConvLower.h.
Referenced by convertLocVTToValVT(), convertValVTToLocVT(), fixupVariableFloatArgs(), llvm::HexagonTargetLowering::LowerCall(), llvm::SystemZTargetLowering::LowerCall(), llvm::SparcTargetLowering::LowerCall_32(), llvm::SparcTargetLowering::LowerCall_64(), llvm::R600TargetLowering::LowerFormalArguments(), llvm::SITargetLowering::LowerFormalArguments(), llvm::HexagonTargetLowering::LowerFormalArguments(), llvm::SystemZTargetLowering::LowerFormalArguments(), llvm::SparcTargetLowering::LowerFormalArguments_32(), llvm::SparcTargetLowering::LowerFormalArguments_64(), llvm::HexagonTargetLowering::LowerReturn(), llvm::SystemZTargetLowering::LowerReturn(), llvm::SparcTargetLowering::LowerReturn_32(), llvm::SparcTargetLowering::LowerReturn_64(), and UnpackFromArgumentSlot().
|
inlinestatic |
Definition at line 100 of file CallingConvLower.h.
References llvm::MipsISD::Ret.
Referenced by allocateStack(), CC_Hexagon(), CC_Hexagon32(), CC_Hexagon64(), CC_Hexagon_VarArg(), CC_MipsO32(), CC_Sparc64_Full(), CC_Sparc64_Half(), fixupVariableFloatArgs(), getCustomMem(), llvm::CCState::HandleByVal(), RetCC_Hexagon32(), and RetCC_Hexagon64().
|
inlinestatic |
Definition at line 125 of file CallingConvLower.h.
References getReg().
Referenced by llvm::CC_ARM_AAPCS_Custom_Aggregate().
|
inlinestatic |
Definition at line 77 of file CallingConvLower.h.
References llvm::MipsISD::Ret.
Referenced by AnalyzeArguments(), CC_Hexagon32(), CC_Hexagon64(), CC_MipsO32(), CC_Sparc64_Full(), CC_Sparc64_Half(), fixupVariableFloatArgs(), getCustomReg(), getPending(), RetCC_Hexagon32(), and RetCC_Hexagon64().
|
inline |
Definition at line 140 of file CallingConvLower.h.
Referenced by fixupVariableFloatArgs().
|
inline |
Definition at line 141 of file CallingConvLower.h.
Referenced by convertLocVTToValVT(), convertValVTToLocVT(), fixupVariableFloatArgs(), llvm::SystemZTargetLowering::LowerCall(), llvm::SparcTargetLowering::LowerCall_64(), LowerCallResult(), llvm::SparcTargetLowering::LowerFormalArguments_32(), llvm::SparcTargetLowering::LowerFormalArguments_64(), llvm::SparcTargetLowering::LowerReturn_64(), and UnpackFromArgumentSlot().
|
inline |
Definition at line 154 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 144 of file CallingConvLower.h.
Referenced by getLocMemOffset(), llvm::HexagonTargetLowering::LowerCall(), llvm::SystemZTargetLowering::LowerCall(), llvm::SparcTargetLowering::LowerCall_32(), llvm::SparcTargetLowering::LowerCall_64(), LowerCallResult(), llvm::SITargetLowering::LowerFormalArguments(), llvm::HexagonTargetLowering::LowerFormalArguments(), llvm::SystemZTargetLowering::LowerFormalArguments(), llvm::SparcTargetLowering::LowerFormalArguments_32(), and llvm::SparcTargetLowering::LowerFormalArguments_64().
|
inline |
Definition at line 143 of file CallingConvLower.h.
Referenced by canUseSiblingCall(), fixupVariableFloatArgs(), getLocReg(), llvm::HexagonTargetLowering::LowerCall(), llvm::SystemZTargetLowering::LowerCall(), llvm::SparcTargetLowering::LowerCall_32(), llvm::SparcTargetLowering::LowerCall_64(), LowerCallResult(), llvm::SITargetLowering::LowerFormalArguments(), llvm::HexagonTargetLowering::LowerFormalArguments(), llvm::SystemZTargetLowering::LowerFormalArguments(), llvm::SparcTargetLowering::LowerFormalArguments_32(), llvm::SparcTargetLowering::LowerFormalArguments_64(), llvm::SystemZTargetLowering::LowerReturn(), llvm::SparcTargetLowering::LowerReturn_32(), and llvm::SparcTargetLowering::LowerReturn_64().
|
inline |
Definition at line 158 of file CallingConvLower.h.
|
inline |
Definition at line 146 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().
1.8.6