|
LLVM 23.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. | |
| Register | ConvergenceCtrlToken |
| Valid if the call is a controlled convergent operation. | |
| const CallBase * | CB = nullptr |
| Original IR callsite corresponding to this call, if available. | |
| MDNode * | KnownCallees = nullptr |
| std::optional< PtrAuthInfo > | PAI |
| The auth-call information in the "ptrauth" bundle, if present. | |
| 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. | |
| GlobalValue * | DeactivationSymbol = nullptr |
Definition at line 106 of file CallLowering.h.
| CallingConv::ID llvm::CallLowering::CallLoweringInfo::CallConv = CallingConv::C |
Calling convention to be used for the call.
Definition at line 108 of file CallLowering.h.
Referenced by llvm::LegalizerHelper::createAtomicLibcall(), llvm::LegalizerHelper::createLibcall(), and llvm::LegalizerHelper::createMemLibcall().
| MachineOperand llvm::CallLowering::CallLoweringInfo::Callee = MachineOperand::CreateImm(0) |
Destination of the call.
It should be either a register, globaladdress, or externalsymbol.
Definition at line 112 of file CallLowering.h.
| bool llvm::CallLowering::CallLoweringInfo::CanLowerReturn = true |
True if the function's return value can be lowered to registers.
Definition at line 150 of file CallLowering.h.
Original IR callsite corresponding to this call, if available.
Definition at line 128 of file CallLowering.h.
| const ConstantInt* llvm::CallLowering::CallLoweringInfo::CFIType = nullptr |
Expected type identifier for indirect calls with a CFI check.
Definition at line 159 of file CallLowering.h.
| Register llvm::CallLowering::CallLoweringInfo::ConvergenceCtrlToken |
Valid if the call is a controlled convergent operation.
Definition at line 125 of file CallLowering.h.
| GlobalValue* llvm::CallLowering::CallLoweringInfo::DeactivationSymbol = nullptr |
Definition at line 164 of file CallLowering.h.
| Register llvm::CallLowering::CallLoweringInfo::DemoteRegister |
VReg to hold the hidden sret parameter.
Definition at line 153 of file CallLowering.h.
| int llvm::CallLowering::CallLoweringInfo::DemoteStackIndex |
The stack index for sret demotion.
Definition at line 156 of file CallLowering.h.
| bool llvm::CallLowering::CallLoweringInfo::IsConvergent = true |
True if this call results in convergent operations.
Definition at line 162 of file CallLowering.h.
| bool llvm::CallLowering::CallLoweringInfo::IsMustTailCall = false |
True if the call must be tail call optimized.
Definition at line 136 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 140 of file CallLowering.h.
| bool llvm::CallLowering::CallLoweringInfo::IsVarArg = false |
True if the call is to a vararg function.
Definition at line 147 of file CallLowering.h.
| MDNode* llvm::CallLowering::CallLoweringInfo::KnownCallees = nullptr |
Definition at line 130 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 144 of file CallLowering.h.
| SmallVector<ArgInfo, 32> llvm::CallLowering::CallLoweringInfo::OrigArgs |
List of descriptors of the arguments passed to the function.
Definition at line 118 of file CallLowering.h.
| ArgInfo llvm::CallLowering::CallLoweringInfo::OrigRet |
Descriptor for the return type of the function.
Definition at line 115 of file CallLowering.h.
| std::optional<PtrAuthInfo> llvm::CallLowering::CallLoweringInfo::PAI |
The auth-call information in the "ptrauth" bundle, if present.
Definition at line 133 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 122 of file CallLowering.h.