LLVM API Documentation
#include <AMDGPURegisterInfo.h>
Public Member Functions | |
AMDGPURegisterInfo (const AMDGPUSubtarget &st) | |
BitVector | getReservedRegs (const MachineFunction &MF) const override |
virtual const TargetRegisterClass * | getCFGStructurizerRegClass (MVT VT) const |
virtual unsigned | getHWRegIndex (unsigned Reg) const |
unsigned | getSubRegFromChannel (unsigned Channel) const |
const MCPhysReg * | getCalleeSavedRegs (const MachineFunction *MF) const override |
void | eliminateFrameIndex (MachineBasicBlock::iterator MI, int SPAdj, unsigned FIOperandNum, RegScavenger *RS) const override |
unsigned | getFrameRegister (const MachineFunction &MF) const override |
unsigned | getIndirectSubReg (unsigned IndirectIndex) const |
Public Attributes | |
const AMDGPUSubtarget & | ST |
Static Public Attributes | |
static const MCPhysReg | CalleeSavedReg = AMDGPU::NoRegister |
Definition at line 31 of file AMDGPURegisterInfo.h.
Definition at line 20 of file AMDGPURegisterInfo.cpp.
void AMDGPURegisterInfo::eliminateFrameIndex | ( | MachineBasicBlock::iterator | MI, |
int | SPAdj, | ||
unsigned | FIOperandNum, | ||
RegScavenger * | RS | ||
) | const [override] |
Reimplemented in llvm::SIRegisterInfo.
Definition at line 37 of file AMDGPURegisterInfo.cpp.
References llvm_unreachable.
const MCPhysReg * AMDGPURegisterInfo::getCalleeSavedRegs | ( | const MachineFunction * | MF | ) | const [override] |
Definition at line 33 of file AMDGPURegisterInfo.cpp.
References CalleeSavedReg.
virtual const TargetRegisterClass* llvm::AMDGPURegisterInfo::getCFGStructurizerRegClass | ( | MVT | VT | ) | const [inline, virtual] |
Reimplemented in llvm::SIRegisterInfo, and llvm::R600RegisterInfo.
Definition at line 41 of file AMDGPURegisterInfo.h.
unsigned AMDGPURegisterInfo::getFrameRegister | ( | const MachineFunction & | MF | ) | const [override] |
Definition at line 44 of file AMDGPURegisterInfo.cpp.
virtual unsigned llvm::AMDGPURegisterInfo::getHWRegIndex | ( | unsigned | Reg | ) | const [inline, virtual] |
Reimplemented in llvm::SIRegisterInfo, and llvm::R600RegisterInfo.
Definition at line 45 of file AMDGPURegisterInfo.h.
unsigned AMDGPURegisterInfo::getIndirectSubReg | ( | unsigned | IndirectIndex | ) | const |
Definition at line 61 of file AMDGPURegisterInfo.cpp.
References getSubRegFromChannel().
BitVector llvm::AMDGPURegisterInfo::getReservedRegs | ( | const MachineFunction & | MF | ) | const [inline, override] |
Reimplemented in llvm::R600RegisterInfo, and llvm::SIRegisterInfo.
Definition at line 37 of file AMDGPURegisterInfo.h.
unsigned AMDGPURegisterInfo::getSubRegFromChannel | ( | unsigned | Channel | ) | const |
Channel
(e.g. getSubRegFromChannel(0) -> AMDGPU::sub0) Definition at line 49 of file AMDGPURegisterInfo.cpp.
References llvm::array_lengthof().
Referenced by llvm::R600InstrInfo::copyPhysReg(), getIndirectSubReg(), and llvm::R600TargetLowering::LowerOperation().
const MCPhysReg AMDGPURegisterInfo::CalleeSavedReg = AMDGPU::NoRegister [static] |
Definition at line 32 of file AMDGPURegisterInfo.h.
Referenced by getCalleeSavedRegs().
Definition at line 33 of file AMDGPURegisterInfo.h.
Referenced by llvm::SIRegisterInfo::eliminateFrameIndex(), and llvm::R600RegisterInfo::getReservedRegs().