Lines Matching refs:RegB

138   bool regsAreCompatible(Register RegA, Register RegB) const;
147 bool isProfitableToCommute(Register RegA, Register RegB, Register RegC,
153 bool isProfitableToConv3Addr(Register RegA, Register RegB);
157 Register RegB, unsigned &Dist);
472 Register RegB) const { in regsAreCompatible()
473 if (RegA == RegB) in regsAreCompatible()
475 if (!RegA || !RegB) in regsAreCompatible()
477 return TRI->regsOverlap(RegA, RegB); in regsAreCompatible()
561 Register RegB, in isProfitableToCommute() argument
601 MCRegister FromRegB = getMappedReg(RegB, SrcRegMap); in isProfitableToCommute()
629 if (!noUseAfterLastDef(RegB, Dist, LastDefB)) in isProfitableToCommute()
650 if (isRevCopyChain(RegB, RegA, MaxDataFlowEdge)) in isProfitableToCommute()
697 Register RegB) { in isProfitableToConv3Addr() argument
704 MCRegister FromRegB = getMappedReg(RegB, SrcRegMap); in isProfitableToConv3Addr()
715 Register RegA, Register RegB, unsigned &Dist) { in convertInstTo3Addr() argument
749 DstRegMap.erase(RegB); in convertInstTo3Addr()
1489 Register RegB = 0; in processTiedPairs() local
1500 RegB = MI->getOperand(SrcIdx).getReg(); in processTiedPairs()
1503 if (RegA == RegB) { in processTiedPairs()
1512 assert(RegB.isVirtual() && "cannot make instruction into two-address form"); in processTiedPairs()
1529 MIB.addReg(RegB, 0, SubRegB); in processTiedPairs()
1530 const TargetRegisterClass *RC = MRI->getRegClass(RegB); in processTiedPairs()
1539 assert(TRI->getMatchingSuperReg(RegA, SubRegB, MRI->getRegClass(RegB)) in processTiedPairs()
1577 assert(MO.isReg() && MO.getReg() == RegB && MO.isUse() && in processTiedPairs()
1585 if (RegA.isVirtual() && RegB.isVirtual()) in processTiedPairs()
1598 if (MO.getReg() == RegB) { in processTiedPairs()
1614 LV->getVarInfo(RegB).removeKill(*MI)) { in processTiedPairs()
1617 LV->addVirtualRegisterKilled(RegB, *PrevMI); in processTiedPairs()
1621 SrcRegMap[LastCopiedReg] = RegB; in processTiedPairs()
1638 LiveInterval &LI = LIS->getInterval(RegB); in processTiedPairs()
1651 if (MO.getReg() == RegB) { in processTiedPairs()
1671 Register RegB = TO.first; in processStatepoint() local
1683 assert(RegB == MI->getOperand(SrcIdx).getReg()); in processStatepoint()
1685 if (RegA == RegB) in processStatepoint()
1694 const auto &UseLI = LIS->getInterval(RegB); in processStatepoint()
1697 LLVM_DEBUG(dbgs() << "LIS: " << printReg(RegB, TRI, 0) in processStatepoint()
1702 } else if (LV && LV->getVarInfo(RegB).findKill(MI->getParent()) != MI) { in processStatepoint()
1706 LLVM_DEBUG(dbgs() << "LV: " << printReg(RegB, TRI, 0) in processStatepoint()
1712 if (!MRI->constrainRegClass(RegB, MRI->getRegClass(RegA))) { in processStatepoint()
1713 LLVM_DEBUG(dbgs() << "MRI: couldn't constrain" << printReg(RegB, TRI, 0) in processStatepoint()
1719 MRI->replaceRegWith(RegA, RegB); in processStatepoint()
1723 LiveInterval &LI = LIS->getInterval(RegB); in processStatepoint()
1740 LV->removeVirtualRegisterKilled(RegB, *MI); in processStatepoint()
1741 LiveVariables::VarInfo &SrcInfo = LV->getVarInfo(RegB); in processStatepoint()
1746 LV->addVirtualRegisterKilled(RegB, *KillMI, false); in processStatepoint()