LLVM 20.0.0git
|
#include "Target/LoongArch/LoongArchRegisterInfo.h"
Public Member Functions | |
LoongArchRegisterInfo (unsigned HwMode) | |
const MCPhysReg * | getCalleeSavedRegs (const MachineFunction *MF) const override |
const uint32_t * | getCallPreservedMask (const MachineFunction &MF, CallingConv::ID) const override |
const uint32_t * | getNoPreservedMask () const override |
BitVector | getReservedRegs (const MachineFunction &MF) const override |
const TargetRegisterClass * | getPointerRegClass (const MachineFunction &MF, unsigned Kind=0) const override |
bool | eliminateFrameIndex (MachineBasicBlock::iterator MI, int SPAdj, unsigned FIOperandNum, RegScavenger *RS=nullptr) const override |
Register | getFrameRegister (const MachineFunction &MF) const override |
bool | requiresRegisterScavenging (const MachineFunction &MF) const override |
bool | requiresFrameIndexScavenging (const MachineFunction &MF) const override |
bool | canRealignStack (const MachineFunction &MF) const override |
Definition at line 24 of file LoongArchRegisterInfo.h.
LoongArchRegisterInfo::LoongArchRegisterInfo | ( | unsigned | HwMode | ) |
Definition at line 33 of file LoongArchRegisterInfo.cpp.
|
override |
Definition at line 199 of file LoongArchRegisterInfo.cpp.
References llvm::TargetRegisterInfo::canRealignStack(), llvm::LoongArchABI::getBPReg(), llvm::MachineFunction::getRegInfo(), llvm::LoongArchFrameLowering::hasReservedCallFrame(), and MRI.
|
override |
Definition at line 112 of file LoongArchRegisterInfo.cpp.
References llvm::Add, llvm::MachineInstrBuilder::add(), llvm::MachineInstrBuilder::addImm(), llvm::MachineInstrBuilder::addReg(), assert(), llvm::BuildMI(), DL, llvm::StackOffset::getFixed(), llvm::TargetFrameLowering::getFrameIndexReference(), llvm::TargetSubtargetInfo::getFrameLowering(), llvm::LoongArchSubtarget::getInstrInfo(), llvm::MachineFunction::getRegInfo(), llvm::MachineFunction::getSubtarget(), II, llvm::LoongArchSubtarget::is64Bit(), llvm::RegState::Kill, MBB, MI, MRI, llvm::Offset, and TII.
|
override |
Definition at line 39 of file LoongArchRegisterInfo.cpp.
References llvm::LoongArchABI::ABI_ILP32D, llvm::LoongArchABI::ABI_ILP32F, llvm::LoongArchABI::ABI_ILP32S, llvm::LoongArchABI::ABI_LP64D, llvm::LoongArchABI::ABI_LP64F, llvm::LoongArchABI::ABI_LP64S, llvm::Function::getCallingConv(), llvm::MachineFunction::getFunction(), llvm::MachineFunction::getSubtarget(), llvm::CallingConv::GHC, and llvm_unreachable.
|
override |
Definition at line 60 of file LoongArchRegisterInfo.cpp.
References llvm::LoongArchABI::ABI_ILP32D, llvm::LoongArchABI::ABI_ILP32F, llvm::LoongArchABI::ABI_ILP32S, llvm::LoongArchABI::ABI_LP64D, llvm::LoongArchABI::ABI_LP64F, llvm::LoongArchABI::ABI_LP64S, CC, llvm::MachineFunction::getSubtarget(), llvm::CallingConv::GHC, and llvm_unreachable.
|
override |
Definition at line 107 of file LoongArchRegisterInfo.cpp.
References llvm::TargetFrameLowering::hasFP().
Definition at line 81 of file LoongArchRegisterInfo.cpp.
|
inlineoverride |
Definition at line 36 of file LoongArchRegisterInfo.h.
|
override |
Definition at line 86 of file LoongArchRegisterInfo.cpp.
References assert(), llvm::LoongArchABI::getBPReg(), llvm::LoongArchFrameLowering::hasBP(), llvm::LoongArchFrameLowering::hasFP(), and llvm::Reserved.
Referenced by llvm::LoongArchTargetLowering::getRegisterByName().
|
inlineoverride |
Definition at line 51 of file LoongArchRegisterInfo.h.
|
inlineoverride |
Definition at line 47 of file LoongArchRegisterInfo.h.