LLVM
8.0.1
|
#include "Target/AMDGPU/R600RegisterInfo.h"
Public Member Functions | |
R600RegisterInfo () | |
BitVector | getReservedRegs (const MachineFunction &MF) const override |
const MCPhysReg * | getCalleeSavedRegs (const MachineFunction *MF) const override |
unsigned | getFrameRegister (const MachineFunction &MF) const override |
unsigned | getHWRegChan (unsigned reg) const |
get the HW encoding for a register's channel. More... | |
unsigned | getHWRegIndex (unsigned Reg) const |
const TargetRegisterClass * | getCFGStructurizerRegClass (MVT VT) const |
get the register class of the specified type to use in the CFGStructurizer More... | |
const RegClassWeight & | getRegClassWeight (const TargetRegisterClass *RC) const override |
bool | isPhysRegLiveAcrossClauses (unsigned Reg) const |
void | eliminateFrameIndex (MachineBasicBlock::iterator MI, int SPAdj, unsigned FIOperandNum, RegScavenger *RS=nullptr) const override |
void | reserveRegisterTuples (BitVector &Reserved, unsigned Reg) const |
Public Attributes | |
RegClassWeight | RCW |
Definition at line 23 of file R600RegisterInfo.h.
R600RegisterInfo::R600RegisterInfo | ( | ) |
Definition at line 24 of file R600RegisterInfo.cpp.
References RCW, llvm::RegClassWeight::RegWeight, and llvm::RegClassWeight::WeightLimit.
|
override |
Definition at line 109 of file R600RegisterInfo.cpp.
References llvm_unreachable.
|
override |
Definition at line 66 of file R600RegisterInfo.cpp.
References CalleeSavedReg.
const TargetRegisterClass * R600RegisterInfo::getCFGStructurizerRegClass | ( | MVT | VT | ) | const |
get the register class of the specified type to use in the CFGStructurizer
Definition at line 83 of file R600RegisterInfo.cpp.
References llvm::MVT::i32, and llvm::MVT::SimpleTy.
|
override |
Definition at line 71 of file R600RegisterInfo.cpp.
Referenced by llvm::R600FrameLowering::getFrameIndexReference().
get the HW encoding for a register's channel.
Definition at line 75 of file R600RegisterInfo.cpp.
References HW_CHAN_SHIFT.
Referenced by llvm::createR600ExpandSpecialInstrsPass(), llvm::R600InstrInfo::expandPostRAPseudo(), llvm::R600InstrInfo::fitsConstReadLimitations(), and llvm::R600InstrInfo::getSrcs().
Definition at line 79 of file R600RegisterInfo.cpp.
References GET_REG_INDEX.
Referenced by llvm::R600InstrInfo::expandPostRAPseudo().
|
override |
Definition at line 91 of file R600RegisterInfo.cpp.
References RCW.
|
override |
Definition at line 32 of file R600RegisterInfo.cpp.
References llvm::sys::path::begin(), E, llvm::sys::path::end(), llvm::R600Subtarget::getInstrInfo(), llvm::MachineFunction::getSubtarget(), I, reserveRegisterTuples(), llvm::ARM_MB::ST, and TII.
Definition at line 96 of file R600RegisterInfo.cpp.
References assert(), and llvm::TargetRegisterInfo::isVirtualRegister().
Referenced by llvm::R600InstrInfo::isLegalToSplitMBBAt().
Definition at line 116 of file R600RegisterInfo.cpp.
References llvm::MCRegAliasIterator::isValid(), and llvm::BitVector::set().
Referenced by getReservedRegs().
RegClassWeight llvm::R600RegisterInfo::RCW |
Definition at line 24 of file R600RegisterInfo.h.
Referenced by getRegClassWeight(), and R600RegisterInfo().