25 #define DEBUG_TYPE "nvptx-reg-info" 29 if (RC == &NVPTX::Float32RegsRegClass)
31 if (RC == &NVPTX::Float16RegsRegClass)
37 if (RC == &NVPTX::Float16x2RegsRegClass)
39 if (RC == &NVPTX::Float64RegsRegClass)
41 if (RC == &NVPTX::Int64RegsRegClass)
61 if (RC == &NVPTX::Int32RegsRegClass)
63 if (RC == &NVPTX::Int16RegsRegClass)
65 if (RC == &NVPTX::Int1RegsRegClass)
67 if (RC == &NVPTX::SpecialRegsRegClass)
73 if (RC == &NVPTX::Float32RegsRegClass)
75 if (RC == &NVPTX::Float16RegsRegClass)
77 if (RC == &NVPTX::Float16x2RegsRegClass)
79 if (RC == &NVPTX::Float64RegsRegClass)
81 if (RC == &NVPTX::Int64RegsRegClass)
83 if (RC == &NVPTX::Int32RegsRegClass)
85 if (RC == &NVPTX::Int16RegsRegClass)
87 if (RC == &NVPTX::Int1RegsRegClass)
89 if (RC == &NVPTX::SpecialRegsRegClass)
97 #define GET_REGINFO_TARGET_DESC 98 #include "NVPTXGenRegisterInfo.inc" 103 static const MCPhysReg CalleeSavedRegs[] = { 0 };
104 return CalleeSavedRegs;
113 int SPAdj,
unsigned FIOperandNum,
115 assert(SPAdj == 0 &&
"Unexpected");
130 return NVPTX::VRFrame;
This class represents lattice values for constants.
const MCPhysReg * getCalleeSavedRegs(const MachineFunction *MF) const override
NVPTX Callee Saved Registers.
void eliminateFrameIndex(MachineBasicBlock::iterator MI, int SPAdj, unsigned FIOperandNum, RegScavenger *RS=nullptr) const override
int64_t getObjectOffset(int ObjectIdx) const
Return the assigned stack offset of the specified object from the incoming stack pointer.
Register getFrameRegister(const MachineFunction &MF) const override
uint16_t MCPhysReg
An unsigned integer type large enough to represent all physical registers, but not necessarily virtua...
void ChangeToImmediate(int64_t ImmVal)
ChangeToImmediate - Replace this operand with a new immediate operand of the specified value...
MachineFrameInfo & getFrameInfo()
getFrameInfo - Return the frame info object for the current function.
BitVector getReservedRegs(const MachineFunction &MF) const override
const MachineBasicBlock * getParent() const
Representation of each machine instruction.
const MachineFunction * getParent() const
Return the MachineFunction containing this basic block.
std::string getNVPTXRegClassStr(TargetRegisterClass const *RC)
std::string getNVPTXRegClassName(TargetRegisterClass const *RC)
void ChangeToRegister(Register Reg, bool isDef, bool isImp=false, bool isKill=false, bool isDead=false, bool isUndef=false, bool isDebug=false)
ChangeToRegister - Replace this operand with a new register operand of the specified value...
assert(ImpDefSCC.getReg()==AMDGPU::SCC &&ImpDefSCC.isDef())
const MachineOperand & getOperand(unsigned i) const
Wrapper class representing virtual and physical registers.