Home | History | Annotate | Download | only in AMDGPU

Lines Matching refs:TRI

115 static bool hasVGPROperands(const MachineInstr &MI, const SIRegisterInfo *TRI) {
122 if (TRI->hasVGPRs(MRI.getRegClass(MI.getOperand(i).getReg())))
130 const SIRegisterInfo &TRI,
138 TRI.getPhysRegClass(SrcReg);
141 // SrcRC = TRI.getSubRegClass(SrcRC, Copy.getOperand(1).getSubReg());
146 TRI.getPhysRegClass(DstReg);
153 const SIRegisterInfo &TRI) {
154 return TRI.isSGPRClass(DstRC) && TRI.hasVGPRs(SrcRC);
159 const SIRegisterInfo &TRI) {
160 return TRI.isSGPRClass(SrcRC) && TRI.hasVGPRs(DstRC);
177 const SIRegisterInfo *TRI,
183 if (!TRI->isSGPRClass(MRI.getRegClass(DstReg)))
194 std::tie(SrcRC, DstRC) = getCopyRegClasses(CopyUse, *TRI, MRI);
196 if (!isSGPRToVGPRCopy(SrcRC, DstRC, *TRI))
221 assert(TRI->isSGPRClass(SrcRC) &&
224 SrcRC = TRI->getSubRegClass(SrcRC, SrcSubReg);
225 const TargetRegisterClass *NewSrcRC = TRI->getEquivalentVGPRClass(SrcRC);
241 const SIRegisterInfo *TRI =
266 std::tie(SrcRC, DstRC) = getCopyRegClasses(MI, *TRI, MRI);
267 if (isVGPRToSGPRCopy(SrcRC, DstRC, *TRI)) {
277 if (!TRI->isSGPRClass(MRI.getRegClass(Reg)))
320 if (TRI->hasVGPRs(MRI.getRegClass(Reg))) {
345 if (TRI->hasVGPRs(TII->getOpRegClass(MI, 0)) ||
346 !hasVGPROperands(MI, TRI)) {
347 foldVGPRCopyIntoRegSequence(MI, TRI, TII, MRI);
361 if (TRI->isSGPRClass(DstRC) &&
362 (TRI->hasVGPRs(Src0RC) || TRI->hasVGPRs(Src1RC))) {