Lines Matching refs:PhysReg
81 LiveInterval &VRegInterval, MCRegister PhysReg, in foreachUnit() argument
84 for (MCRegUnitMaskIterator Units(PhysReg, TRI); Units.isValid(); ++Units) { in foreachUnit()
96 for (MCRegUnitIterator Units(PhysReg, TRI); Units.isValid(); ++Units) { in foreachUnit()
104 void LiveRegMatrix::assign(LiveInterval &VirtReg, MCRegister PhysReg) { in assign() argument
106 << printReg(PhysReg, TRI) << ':'); in assign()
108 VRM->assignVirt2Phys(VirtReg.reg(), PhysReg); in assign()
111 TRI, VirtReg, PhysReg, [&](unsigned Unit, const LiveRange &Range) { in assign()
122 Register PhysReg = VRM->getPhys(VirtReg.reg()); in unassign() local
124 << " from " << printReg(PhysReg, TRI) << ':'); in unassign()
127 foreachUnit(TRI, VirtReg, PhysReg, in unassign()
138 bool LiveRegMatrix::isPhysRegUsed(MCRegister PhysReg) const { in isPhysRegUsed()
139 for (MCRegUnitIterator Unit(PhysReg, TRI); Unit.isValid(); ++Unit) { in isPhysRegUsed()
147 MCRegister PhysReg) { in checkRegMaskInterference() argument
161 return !RegMaskUsable.empty() && (!PhysReg || !RegMaskUsable.test(PhysReg)); in checkRegMaskInterference()
165 MCRegister PhysReg) { in checkRegUnitInterference() argument
168 CoalescerPair CP(VirtReg.reg(), PhysReg, *TRI); in checkRegUnitInterference()
170 bool Result = foreachUnit(TRI, VirtReg, PhysReg, [&](unsigned Unit, in checkRegUnitInterference()
186 LiveRegMatrix::checkInterference(LiveInterval &VirtReg, MCRegister PhysReg) { in checkInterference() argument
191 if (checkRegMaskInterference(VirtReg, PhysReg)) in checkInterference()
195 if (checkRegUnitInterference(VirtReg, PhysReg)) in checkInterference()
199 bool Interference = foreachUnit(TRI, VirtReg, PhysReg, in checkInterference()
210 MCRegister PhysReg) { in checkInterference() argument
218 for (MCRegUnitIterator Units(PhysReg, TRI); Units.isValid(); ++Units) { in checkInterference()