LLVM 20.0.0git
|
#include "Target/WebAssembly/WebAssemblyRegisterInfo.h"
Public Member Functions | |
WebAssemblyRegisterInfo (const Triple &TT) | |
const MCPhysReg * | getCalleeSavedRegs (const MachineFunction *MF) const override |
BitVector | getReservedRegs (const MachineFunction &MF) const override |
bool | eliminateFrameIndex (MachineBasicBlock::iterator MI, int SPAdj, unsigned FIOperandNum, RegScavenger *RS=nullptr) const override |
Register | getFrameRegister (const MachineFunction &MF) const override |
const TargetRegisterClass * | getPointerRegClass (const MachineFunction &MF, unsigned Kind=0) const override |
const uint32_t * | getNoPreservedMask () const override |
Definition at line 28 of file WebAssemblyRegisterInfo.h.
Definition at line 35 of file WebAssemblyRegisterInfo.cpp.
|
override |
Definition at line 53 of file WebAssemblyRegisterInfo.cpp.
References llvm::MachineInstrBuilder::addImm(), llvm::MachineInstrBuilder::addReg(), assert(), llvm::BuildMI(), llvm::MachineFunction::getFrameInfo(), getFrameRegister(), llvm::MachineOperand::getImm(), llvm::WebAssembly::getNamedOperandIdx(), llvm::MachineFrameInfo::getObjectOffset(), llvm::MachineFrameInfo::getObjectSize(), llvm::WebAssemblyFrameLowering::getOpcAdd(), llvm::WebAssemblyFrameLowering::getOpcConst(), llvm::MachineBasicBlock::getParent(), llvm::MachineOperand::getReg(), llvm::MachineFunction::getRegInfo(), llvm::MachineFrameInfo::getStackSize(), llvm::MachineFunction::getSubtarget(), llvm::MachineRegisterInfo::getUniqueVRegDef(), II, llvm::MachineOperand::isImm(), llvm::MachineOperand::isReg(), llvm::Register::isVirtual(), MBB, MI, MRI, llvm::Offset, llvm::MachineOperand::setImm(), and TII.
|
override |
Definition at line 39 of file WebAssemblyRegisterInfo.cpp.
|
override |
Definition at line 140 of file WebAssemblyRegisterInfo.cpp.
References llvm::WebAssemblyFunctionInfo::getFrameBaseVreg(), llvm::MachineFunction::getInfo(), llvm::WebAssemblyFrameLowering::hasFP(), and llvm::Triple::isArch64Bit().
Referenced by eliminateFrameIndex().
Definition at line 48 of file WebAssemblyRegisterInfo.h.
|
override |
Definition at line 154 of file WebAssemblyRegisterInfo.cpp.
References assert(), llvm::MachineFunction::getSubtarget(), and llvm::WebAssemblySubtarget::hasAddr64().
|
override |
Definition at line 45 of file WebAssemblyRegisterInfo.cpp.
References llvm::Reserved.