LLVM
10.0.0svn
|
#include "llvm/CodeGen/GlobalISel/CallLowering.h"
Public Attributes | |
CallingConv::ID | CallConv = CallingConv::C |
Calling convention to be used for the call. More... | |
MachineOperand | Callee = MachineOperand::CreateImm(0) |
Destination of the call. More... | |
ArgInfo | OrigRet |
Descriptor for the return type of the function. More... | |
SmallVector< ArgInfo, 8 > | OrigArgs |
List of descriptors of the arguments passed to the function. More... | |
Register | SwiftErrorVReg = 0 |
Valid if the call has a swifterror inout parameter, and contains the vreg that the swifterror should be copied into after the call. More... | |
MDNode * | KnownCallees = nullptr |
bool | IsMustTailCall = false |
True if the call must be tail call optimized. More... | |
bool | IsTailCall = false |
True if the call passes all target-independent checks for tail call optimization. More... | |
bool | LoweredTailCall = false |
True if the call was lowered as a tail call. More... | |
bool | IsVarArg = false |
True if the call is to a vararg function. More... | |
Definition at line 71 of file CallLowering.h.
CallingConv::ID llvm::CallLowering::CallLoweringInfo::CallConv = CallingConv::C |
Calling convention to be used for the call.
Definition at line 73 of file CallLowering.h.
Referenced by llvm::createLibcall(), llvm::createMemLibcall(), llvm::AArch64CallLowering::isEligibleForTailCallOptimization(), llvm::X86CallLowering::lowerCall(), llvm::ARMCallLowering::lowerCall(), llvm::AArch64CallLowering::lowerCall(), llvm::MipsCallLowering::lowerCall(), llvm::CallLowering::lowerCall(), and llvm::CallLowering::resultsCompatible().
MachineOperand llvm::CallLowering::CallLoweringInfo::Callee = MachineOperand::CreateImm(0) |
Destination of the call.
It should be either a register, globaladdress, or externalsymbol.
Definition at line 77 of file CallLowering.h.
Referenced by llvm::createLibcall(), llvm::createMemLibcall(), llvm::AArch64CallLowering::isEligibleForTailCallOptimization(), llvm::X86CallLowering::lowerCall(), llvm::ARMCallLowering::lowerCall(), llvm::AArch64CallLowering::lowerCall(), llvm::MipsCallLowering::lowerCall(), and llvm::CallLowering::lowerCall().
True if the call must be tail call optimized.
Definition at line 92 of file CallLowering.h.
Referenced by llvm::AArch64CallLowering::lowerCall(), and llvm::CallLowering::lowerCall().
True if the call passes all target-independent checks for tail call optimization.
Definition at line 96 of file CallLowering.h.
Referenced by llvm::createMemLibcall(), llvm::AArch64CallLowering::isEligibleForTailCallOptimization(), and llvm::CallLowering::lowerCall().
True if the call is to a vararg function.
Definition at line 103 of file CallLowering.h.
Referenced by llvm::AArch64CallLowering::isEligibleForTailCallOptimization(), and llvm::CallLowering::lowerCall().
MDNode* llvm::CallLowering::CallLoweringInfo::KnownCallees = nullptr |
Definition at line 89 of file CallLowering.h.
Referenced by llvm::CallLowering::lowerCall().
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 100 of file CallLowering.h.
Referenced by llvm::createMemLibcall().
SmallVector<ArgInfo, 8> llvm::CallLowering::CallLoweringInfo::OrigArgs |
List of descriptors of the arguments passed to the function.
Definition at line 83 of file CallLowering.h.
Referenced by llvm::createLibcall(), llvm::createMemLibcall(), llvm::X86CallLowering::lowerCall(), llvm::ARMCallLowering::lowerCall(), llvm::AArch64CallLowering::lowerCall(), llvm::MipsCallLowering::lowerCall(), and llvm::CallLowering::lowerCall().
ArgInfo llvm::CallLowering::CallLoweringInfo::OrigRet |
Descriptor for the return type of the function.
Definition at line 80 of file CallLowering.h.
Referenced by llvm::createLibcall(), llvm::createMemLibcall(), llvm::X86CallLowering::lowerCall(), llvm::ARMCallLowering::lowerCall(), llvm::AArch64CallLowering::lowerCall(), llvm::MipsCallLowering::lowerCall(), and llvm::CallLowering::lowerCall().
Register llvm::CallLowering::CallLoweringInfo::SwiftErrorVReg = 0 |
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 87 of file CallLowering.h.
Referenced by llvm::AArch64CallLowering::isEligibleForTailCallOptimization(), llvm::AArch64CallLowering::lowerCall(), and llvm::CallLowering::lowerCall().