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.