Lines Matching defs:PhysReg
88 const LiveInterval &VRegInterval, MCRegister PhysReg,
91 for (MCRegUnitMaskIterator Units(PhysReg, TRI); Units.isValid(); ++Units) {
103 for (MCRegUnit Unit : TRI->regunits(PhysReg)) {
111 void LiveRegMatrix::assign(const LiveInterval &VirtReg, MCRegister PhysReg) {
113 << printReg(PhysReg, TRI) << ':');
115 VRM->assignVirt2Phys(VirtReg.reg(), PhysReg);
118 TRI, VirtReg, PhysReg, [&](unsigned Unit, const LiveRange &Range) {
129 Register PhysReg = VRM->getPhys(VirtReg.reg());
131 << " from " << printReg(PhysReg, TRI) << ':');
134 foreachUnit(TRI, VirtReg, PhysReg,
145 bool LiveRegMatrix::isPhysRegUsed(MCRegister PhysReg) const {
146 for (MCRegUnit Unit : TRI->regunits(PhysReg)) {
154 MCRegister PhysReg) {
165 // The BitVector is indexed by PhysReg, not register unit.
169 (!PhysReg || !RegMaskUsable.test(PhysReg.id()));
173 MCRegister PhysReg) {
176 CoalescerPair CP(VirtReg.reg(), PhysReg, *TRI);
178 bool Result = foreachUnit(TRI, VirtReg, PhysReg, [&](unsigned Unit,
195 MCRegister PhysReg) {
200 if (checkRegMaskInterference(VirtReg, PhysReg))
204 if (checkRegUnitInterference(VirtReg, PhysReg))
208 bool Interference = foreachUnit(TRI, VirtReg, PhysReg,
219 MCRegister PhysReg) {
227 for (MCRegUnit Unit : TRI->regunits(PhysReg)) {
250 MCRegister PhysReg) {
260 for (MCRegUnitMaskIterator MCRU(PhysReg, TRI); MCRU.isValid(); ++MCRU) {
283 Register LiveRegMatrix::getOneVReg(unsigned PhysReg) const {
285 for (MCRegUnit Unit : TRI->regunits(PhysReg)) {