Lines Matching refs:MRI
116 const MachineRegisterInfo &MRI = MI.getParent()->getParent()->getRegInfo(); in hasVGPROperands() local
122 if (TRI->hasVGPRs(MRI.getRegClass(MI.getOperand(i).getReg()))) in hasVGPROperands()
131 const MachineRegisterInfo &MRI) { in getCopyRegClasses() argument
137 MRI.getRegClass(SrcReg) : in getCopyRegClasses()
145 MRI.getRegClass(DstReg) : in getCopyRegClasses()
179 MachineRegisterInfo &MRI) { in foldVGPRCopyIntoRegSequence() argument
183 if (!TRI->isSGPRClass(MRI.getRegClass(DstReg))) in foldVGPRCopyIntoRegSequence()
186 if (!MRI.hasOneUse(DstReg)) in foldVGPRCopyIntoRegSequence()
189 MachineInstr &CopyUse = *MRI.use_instr_begin(DstReg); in foldVGPRCopyIntoRegSequence()
194 std::tie(SrcRC, DstRC) = getCopyRegClasses(CopyUse, *TRI, MRI); in foldVGPRCopyIntoRegSequence()
204 MRI.setRegClass(DstReg, DstRC); in foldVGPRCopyIntoRegSequence()
220 const TargetRegisterClass *SrcRC = MRI.getRegClass(SrcReg); in foldVGPRCopyIntoRegSequence()
227 unsigned TmpReg = MRI.createVirtualRegister(NewSrcRC); in foldVGPRCopyIntoRegSequence()
241 MachineRegisterInfo &MRI = MF.getRegInfo(); in runOnMachineFunction() local
265 std::tie(SrcRC, DstRC) = getCopyRegClasses(MI, *TRI, MRI); in runOnMachineFunction()
276 if (!TRI->isSGPRClass(MRI.getRegClass(Reg))) in runOnMachineFunction()
319 if (TRI->hasVGPRs(MRI.getRegClass(Reg))) { in runOnMachineFunction()
323 MachineInstr *DefInstr = MRI.getUniqueVRegDef(Reg); in runOnMachineFunction()
346 foldVGPRCopyIntoRegSequence(MI, TRI, TII, MRI); in runOnMachineFunction()
357 DstRC = MRI.getRegClass(MI.getOperand(0).getReg()); in runOnMachineFunction()
358 Src0RC = MRI.getRegClass(MI.getOperand(1).getReg()); in runOnMachineFunction()
359 Src1RC = MRI.getRegClass(MI.getOperand(2).getReg()); in runOnMachineFunction()