LLVM API Documentation
#include <TargetLowering.h>
Public Member Functions | |
CallLoweringInfo (SDValue chain, Type *retTy, FunctionType *FTy, bool isTailCall, SDValue callee, ArgListTy &args, SelectionDAG &dag, SDLoc dl, ImmutableCallSite &cs) | |
Constructs a call lowering context based on the ImmutableCallSite cs . More... | |
CallLoweringInfo (SDValue chain, Type *retTy, bool retSExt, bool retZExt, bool isVarArg, bool isInReg, unsigned numFixedArgs, CallingConv::ID callConv, bool isTailCall, bool doesNotReturn, bool isReturnValueUsed, SDValue callee, ArgListTy &args, SelectionDAG &dag, SDLoc dl) | |
Public Attributes | |
SDValue | Chain |
Type * | RetTy |
bool | RetSExt: 1 |
bool | RetZExt: 1 |
bool | IsVarArg: 1 |
bool | IsInReg: 1 |
bool | DoesNotReturn: 1 |
bool | IsReturnValueUsed: 1 |
bool | IsTailCall |
unsigned | NumFixedArgs |
CallingConv::ID | CallConv |
SDValue | Callee |
ArgListTy & | Args |
SelectionDAG & | DAG |
SDLoc | DL |
ImmutableCallSite * | CS |
SmallVector< ISD::OutputArg, 32 > | Outs |
SmallVector< SDValue, 32 > | OutVals |
SmallVector< ISD::InputArg, 32 > | Ins |
This structure contains all information that is necessary for lowering calls. It is passed to TLI::LowerCallTo when the SelectionDAG builder needs to lower a call, and targets will see this struct in their LowerCall implementation.
Definition at line 1949 of file TargetLowering.h.
|
inline |
Constructs a call lowering context based on the ImmutableCallSite cs
.
Definition at line 1976 of file TargetLowering.h.
|
inline |
Constructs a call lowering context based on the provided call information.
Definition at line 1991 of file TargetLowering.h.
ArgListTy& llvm::TargetLowering::CallLoweringInfo::Args |
Definition at line 1966 of file TargetLowering.h.
Referenced by llvm::NVPTXTargetLowering::LowerCall(), and llvm::TargetLowering::LowerCallTo().
CallingConv::ID llvm::TargetLowering::CallLoweringInfo::CallConv |
Definition at line 1964 of file TargetLowering.h.
Referenced by llvm::MipsTargetLowering::getOpndList(), llvm::HexagonTargetLowering::LowerCall(), llvm::AArch64TargetLowering::LowerCall(), llvm::SystemZTargetLowering::LowerCall(), llvm::SparcTargetLowering::LowerCall_32(), and llvm::SparcTargetLowering::LowerCall_64().
SDValue llvm::TargetLowering::CallLoweringInfo::Callee |
Definition at line 1965 of file TargetLowering.h.
Referenced by llvm::MipsTargetLowering::getOpndList(), llvm::AMDGPUTargetLowering::LowerCall(), llvm::HexagonTargetLowering::LowerCall(), llvm::NVPTXTargetLowering::LowerCall(), llvm::AArch64TargetLowering::LowerCall(), llvm::SystemZTargetLowering::LowerCall(), llvm::SparcTargetLowering::LowerCall_32(), and llvm::SparcTargetLowering::LowerCall_64().
SDValue llvm::TargetLowering::CallLoweringInfo::Chain |
Definition at line 1950 of file TargetLowering.h.
Referenced by llvm::HexagonTargetLowering::LowerCall(), llvm::NVPTXTargetLowering::LowerCall(), llvm::AArch64TargetLowering::LowerCall(), llvm::SystemZTargetLowering::LowerCall(), llvm::SparcTargetLowering::LowerCall_32(), llvm::SparcTargetLowering::LowerCall_64(), and llvm::TargetLowering::LowerCallTo().
ImmutableCallSite* llvm::TargetLowering::CallLoweringInfo::CS |
Definition at line 1969 of file TargetLowering.h.
Referenced by llvm::NVPTXTargetLowering::LowerCall(), llvm::SparcTargetLowering::LowerCall_32(), llvm::SparcTargetLowering::LowerCall_64(), and llvm::TargetLowering::LowerCallTo().
SelectionDAG& llvm::TargetLowering::CallLoweringInfo::DAG |
Definition at line 1967 of file TargetLowering.h.
Referenced by llvm::MipsTargetLowering::getOpndList(), llvm::HexagonTargetLowering::LowerCall(), llvm::NVPTXTargetLowering::LowerCall(), llvm::AArch64TargetLowering::LowerCall(), llvm::SystemZTargetLowering::LowerCall(), llvm::SparcTargetLowering::LowerCall_32(), llvm::SparcTargetLowering::LowerCall_64(), and llvm::TargetLowering::LowerCallTo().
SDLoc llvm::TargetLowering::CallLoweringInfo::DL |
Definition at line 1968 of file TargetLowering.h.
Referenced by llvm::MipsTargetLowering::getOpndList(), llvm::HexagonTargetLowering::LowerCall(), llvm::NVPTXTargetLowering::LowerCall(), llvm::AArch64TargetLowering::LowerCall(), llvm::SystemZTargetLowering::LowerCall(), llvm::SparcTargetLowering::LowerCall_32(), llvm::SparcTargetLowering::LowerCall_64(), and llvm::TargetLowering::LowerCallTo().
bool llvm::TargetLowering::CallLoweringInfo::DoesNotReturn |
Definition at line 1956 of file TargetLowering.h.
SmallVector<ISD::InputArg, 32> llvm::TargetLowering::CallLoweringInfo::Ins |
Definition at line 1972 of file TargetLowering.h.
Referenced by llvm::HexagonTargetLowering::LowerCall(), llvm::NVPTXTargetLowering::LowerCall(), llvm::AArch64TargetLowering::LowerCall(), llvm::SystemZTargetLowering::LowerCall(), llvm::SparcTargetLowering::LowerCall_32(), llvm::SparcTargetLowering::LowerCall_64(), and llvm::TargetLowering::LowerCallTo().
bool llvm::TargetLowering::CallLoweringInfo::IsInReg |
Definition at line 1955 of file TargetLowering.h.
Referenced by llvm::TargetLowering::LowerCallTo().
bool llvm::TargetLowering::CallLoweringInfo::IsReturnValueUsed |
Definition at line 1957 of file TargetLowering.h.
Referenced by llvm::TargetLowering::LowerCallTo().
bool llvm::TargetLowering::CallLoweringInfo::IsTailCall |
Definition at line 1961 of file TargetLowering.h.
Referenced by llvm::HexagonTargetLowering::LowerCall(), llvm::NVPTXTargetLowering::LowerCall(), llvm::AArch64TargetLowering::LowerCall(), llvm::SystemZTargetLowering::LowerCall(), llvm::SparcTargetLowering::LowerCall_32(), llvm::SparcTargetLowering::LowerCall_64(), and llvm::TargetLowering::LowerCallTo().
bool llvm::TargetLowering::CallLoweringInfo::IsVarArg |
Definition at line 1954 of file TargetLowering.h.
Referenced by llvm::HexagonTargetLowering::LowerCall(), llvm::AArch64TargetLowering::LowerCall(), llvm::SystemZTargetLowering::LowerCall(), llvm::SparcTargetLowering::LowerCall_32(), and llvm::SparcTargetLowering::LowerCall_64().
unsigned llvm::TargetLowering::CallLoweringInfo::NumFixedArgs |
Definition at line 1963 of file TargetLowering.h.
Referenced by llvm::TargetLowering::LowerCallTo().
SmallVector<ISD::OutputArg, 32> llvm::TargetLowering::CallLoweringInfo::Outs |
Definition at line 1970 of file TargetLowering.h.
Referenced by llvm::HexagonTargetLowering::LowerCall(), llvm::NVPTXTargetLowering::LowerCall(), llvm::AArch64TargetLowering::LowerCall(), llvm::SystemZTargetLowering::LowerCall(), llvm::SparcTargetLowering::LowerCall_32(), llvm::SparcTargetLowering::LowerCall_64(), and llvm::TargetLowering::LowerCallTo().
SmallVector<SDValue, 32> llvm::TargetLowering::CallLoweringInfo::OutVals |
Definition at line 1971 of file TargetLowering.h.
Referenced by llvm::HexagonTargetLowering::LowerCall(), llvm::NVPTXTargetLowering::LowerCall(), llvm::AArch64TargetLowering::LowerCall(), llvm::SystemZTargetLowering::LowerCall(), llvm::SparcTargetLowering::LowerCall_32(), llvm::SparcTargetLowering::LowerCall_64(), and llvm::TargetLowering::LowerCallTo().
bool llvm::TargetLowering::CallLoweringInfo::RetSExt |
Definition at line 1952 of file TargetLowering.h.
Referenced by llvm::TargetLowering::LowerCallTo().
Type* llvm::TargetLowering::CallLoweringInfo::RetTy |
Definition at line 1951 of file TargetLowering.h.
Referenced by llvm::NVPTXTargetLowering::LowerCall(), and llvm::TargetLowering::LowerCallTo().
bool llvm::TargetLowering::CallLoweringInfo::RetZExt |
Definition at line 1953 of file TargetLowering.h.
Referenced by llvm::TargetLowering::LowerCallTo().