LLVM 18.0.0git
|
#include "llvm/CodeGen/GlobalISel/CallLowering.h"
Public Attributes | |
CallingConv::ID | CallConv = CallingConv::C |
Calling convention to be used for the call. | |
MachineOperand | Callee = MachineOperand::CreateImm(0) |
Destination of the call. | |
ArgInfo | OrigRet |
Descriptor for the return type of the function. | |
SmallVector< ArgInfo, 32 > | OrigArgs |
List of descriptors of the arguments passed to the function. | |
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. | |
const CallBase * | CB = nullptr |
Original IR callsite corresponding to this call, if available. | |
MDNode * | KnownCallees = nullptr |
bool | IsMustTailCall = false |
True if the call must be tail call optimized. | |
bool | IsTailCall = false |
True if the call passes all target-independent checks for tail call optimization. | |
bool | LoweredTailCall = false |
True if the call was lowered as a tail call. | |
bool | IsVarArg = false |
True if the call is to a vararg function. | |
bool | CanLowerReturn = true |
True if the function's return value can be lowered to registers. | |
Register | DemoteRegister |
VReg to hold the hidden sret parameter. | |
int | DemoteStackIndex |
The stack index for sret demotion. | |
const ConstantInt * | CFIType = nullptr |
Expected type identifier for indirect calls with a CFI check. | |
bool | IsConvergent = true |
True if this call results in convergent operations. | |
Definition at line 102 of file CallLowering.h.
CallingConv::ID llvm::CallLowering::CallLoweringInfo::CallConv = CallingConv::C |
Calling convention to be used for the call.
Definition at line 104 of file CallLowering.h.
MachineOperand llvm::CallLowering::CallLoweringInfo::Callee = MachineOperand::CreateImm(0) |
Destination of the call.
It should be either a register, globaladdress, or externalsymbol.
Definition at line 108 of file CallLowering.h.
True if the function's return value can be lowered to registers.
Definition at line 140 of file CallLowering.h.
Original IR callsite corresponding to this call, if available.
Definition at line 121 of file CallLowering.h.
const ConstantInt* llvm::CallLowering::CallLoweringInfo::CFIType = nullptr |
Expected type identifier for indirect calls with a CFI check.
Definition at line 149 of file CallLowering.h.
Register llvm::CallLowering::CallLoweringInfo::DemoteRegister |
VReg to hold the hidden sret parameter.
Definition at line 143 of file CallLowering.h.
int llvm::CallLowering::CallLoweringInfo::DemoteStackIndex |
The stack index for sret demotion.
Definition at line 146 of file CallLowering.h.
True if this call results in convergent operations.
Definition at line 152 of file CallLowering.h.
bool llvm::CallLowering::CallLoweringInfo::IsMustTailCall = false |
True if the call must be tail call optimized.
Definition at line 126 of file CallLowering.h.
bool llvm::CallLowering::CallLoweringInfo::IsTailCall = false |
True if the call passes all target-independent checks for tail call optimization.
Definition at line 130 of file CallLowering.h.
bool llvm::CallLowering::CallLoweringInfo::IsVarArg = false |
True if the call is to a vararg function.
Definition at line 137 of file CallLowering.h.
MDNode* llvm::CallLowering::CallLoweringInfo::KnownCallees = nullptr |
Definition at line 123 of file CallLowering.h.
bool llvm::CallLowering::CallLoweringInfo::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.
Definition at line 134 of file CallLowering.h.
SmallVector<ArgInfo, 32> llvm::CallLowering::CallLoweringInfo::OrigArgs |
List of descriptors of the arguments passed to the function.
Definition at line 114 of file CallLowering.h.
ArgInfo llvm::CallLowering::CallLoweringInfo::OrigRet |
Descriptor for the return type of the function.
Definition at line 111 of file CallLowering.h.
Register llvm::CallLowering::CallLoweringInfo::SwiftErrorVReg |
Valid if the call has a swifterror inout parameter, and contains the vreg that the swifterror should be copied into after the call.
Definition at line 118 of file CallLowering.h.