Lines Matching refs:regB
105 bool isProfitableToCommute(unsigned regA, unsigned regB, unsigned regC,
508 isProfitableToCommute(unsigned regA, unsigned regB, unsigned regC,
546 unsigned FromRegB = getMappedReg(regB, SrcRegMap);
560 // If there is a use of regB between its last def (could be livein) and this
563 if (!noUseAfterLastDef(regB, Dist, LastDefB))
1103 unsigned regB = MI.getOperand(SrcIdx).getReg();
1105 assert(TargetRegisterInfo::isVirtualRegister(regB) &&
1107 bool regBKilled = isKilled(MI, regB, MRI, TII, LIS, true);
1131 else if (isProfitableToCommute(regA, regB, regC, &MI, Dist)) {
1139 if (TryCommute && commuteInstruction(mi, regB, regC, Dist)) {
1149 // If there is one more use of regB later in the same MBB, consider
1151 if (EnableRescheduling && rescheduleMIBelowKill(mi, nmi, regB)) {
1159 if (!regBKilled || isProfitableToConv3Addr(regA, regB)) {
1161 if (convertInstTo3Addr(mi, nmi, regA, regB, Dist)) {
1168 // If there is one more use of regB later in the same MBB, consider
1170 if (EnableRescheduling && rescheduleKillAboveMI(mi, nmi, regB)) {
1222 unsigned NewSrcIdx = NewMIs[1]->findRegisterUseOperandIdx(regB);
1431 // Replace other (un-tied) uses of regB with LastCopiedReg.
1444 // Update live variables for regB.
1464 // Some tied uses of regB matched their destination registers, so
1465 // regB is still used in this instruction, but a kill flag was
1466 // removed from a different tied use of regB, so now we need to add
1467 // a kill flag to one of the remaining uses of regB.