|
LLVM 23.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 (unsigned Kind=0) const override |
| const uint32_t * | getNoPreservedMask () const override |
| const TargetRegisterClass * | getConstrainedRegClassForOperand (const MachineOperand &MO, const MachineRegisterInfo &MRI) const override |
Definition at line 28 of file WebAssemblyRegisterInfo.h.
Definition at line 34 of file WebAssemblyRegisterInfo.cpp.
|
override |
Definition at line 52 of file WebAssemblyRegisterInfo.cpp.
References llvm::MachineInstrBuilder::addImm(), llvm::MachineInstrBuilder::addReg(), assert(), llvm::BuildMI(), llvm::MachineRegisterInfo::createVirtualRegister(), llvm::MachineFunction::getFrameInfo(), getFrameRegister(), llvm::MachineOperand::getImm(), llvm::MachineFrameInfo::getObjectOffset(), llvm::MachineFrameInfo::getObjectSize(), llvm::WebAssemblyFrameLowering::getOpcAdd(), llvm::WebAssemblyFrameLowering::getOpcConst(), llvm::TargetRegisterInfo::getPointerRegClass(), llvm::MachineOperand::getReg(), llvm::MachineFunction::getRegInfo(), llvm::MachineFrameInfo::getStackSize(), llvm::MachineFunction::getSubtarget(), llvm::MachineRegisterInfo::getTargetRegisterInfo(), llvm::MachineRegisterInfo::getUniqueVRegDef(), llvm::MachineRegisterInfo::hasOneNonDBGUse(), II, llvm::MachineOperand::isImm(), llvm::MachineOperand::isReg(), llvm::Register::isVirtual(), MBB, MI, llvm::Offset, llvm::MachineOperand::setImm(), and TII.
|
override |
Definition at line 38 of file WebAssemblyRegisterInfo.cpp.
|
override |
Definition at line 183 of file WebAssemblyRegisterInfo.cpp.
References assert(), llvm::cast(), llvm::dyn_cast(), llvm::MachineOperand::getReg(), getRegClassForBank(), llvm::MachineRegisterInfo::getRegClassOrRegBank(), llvm::PointerUnion< PTs >::isNull(), and llvm::MachineOperand::isReg().
|
override |
Definition at line 139 of file WebAssemblyRegisterInfo.cpp.
References llvm::WebAssemblyFunctionInfo::getFrameBaseVreg(), llvm::MachineFunction::getInfo(), and llvm::TargetFrameLowering::hasFP().
Referenced by eliminateFrameIndex().
Definition at line 47 of file WebAssemblyRegisterInfo.h.
|
override |
Definition at line 153 of file WebAssemblyRegisterInfo.cpp.
References assert(), and llvm::Triple::wasm64.
|
override |
Definition at line 44 of file WebAssemblyRegisterInfo.cpp.
References llvm::Reserved.