struct CallLowering::CallLoweringInfo
Declaration
struct CallLowering::CallLoweringInfo { /* full declaration omitted */ };
Declared at: llvm/include/llvm/CodeGen/GlobalISel/CallLowering.h:102
Member Variables
- public CallingConv::ID CallConv = CallingConv::C
- Calling convention to be used for the call.
- public llvm::MachineOperand Callee = MachineOperand::CreateImm(0)
- Destination of the call. It should be either a register, globaladdress, or externalsymbol.
- public llvm::CallLowering::ArgInfo OrigRet
- Descriptor for the return type of the function.
- public SmallVector<llvm::CallLowering::ArgInfo, 32> OrigArgs
- List of descriptors of the arguments passed to the function.
- public llvm::Register SwiftErrorVReg
- Valid if the call has a swifterror inout parameter, and contains the vreg that the swifterror should be copied into after the call.
- public const llvm::CallBase* CB = nullptr
- Original IR callsite corresponding to this call, if available.
- public llvm::MDNode* KnownCallees = nullptr
- public bool IsMustTailCall = false
- True if the call must be tail call optimized.
- public bool IsTailCall = false
- True if the call passes all target-independent checks for tail call optimization.
- public bool LoweredTailCall = false
- True if the call was lowered as a tail call. This is consumed by the legalizer. This allows the legalizer to lower libcalls as tail calls.
- public bool IsVarArg = false
- True if the call is to a vararg function.
- public bool CanLowerReturn = true
- True if the function's return value can be lowered to registers.
- public llvm::Register DemoteRegister
- VReg to hold the hidden sret parameter.
- public int DemoteStackIndex
- The stack index for sret demotion.