Lines Matching refs:Intf

364     InterferenceCache::Cursor Intf;  member
373 Intf.setPhysReg(Cache, Reg); in reset()
896 LiveInterval *Intf = Q.interferingVRegs()[i - 1]; in canEvictInterference() local
897 assert(TargetRegisterInfo::isVirtualRegister(Intf->reg) && in canEvictInterference()
900 if (getStage(*Intf) == RS_Done) in canEvictInterference()
909 (Intf->isSpillable() || in canEvictInterference()
911 RegClassInfo.getNumAllocatableRegs(MRI->getRegClass(Intf->reg))); in canEvictInterference()
913 unsigned IntfCascade = ExtraRegInfo[Intf->reg].Cascade; in canEvictInterference()
922 bool BreaksHint = VRM->hasPreferredPhys(Intf->reg); in canEvictInterference()
925 Cost.MaxWeight = std::max(Cost.MaxWeight, Intf->weight); in canEvictInterference()
932 if (!shouldEvict(VirtReg, IsHint, *Intf, BreaksHint)) in canEvictInterference()
937 if (!MaxCost.isMax() && IsLocal && LIS->intervalIsInOneMBB(*Intf) && in canEvictInterference()
938 (!EnableLocalReassign || !canReassign(*Intf, PhysReg))) { in canEvictInterference()
968 LiveInterval *Intf = Q.interferingVRegs()[i - 1]; in canEvictInterferenceInRange() local
971 if (!Intf->overlaps(Start, End)) in canEvictInterferenceInRange()
975 if (!TargetRegisterInfo::isVirtualRegister(Intf->reg)) in canEvictInterferenceInRange()
978 if (getStage(*Intf) == RS_Done) in canEvictInterferenceInRange()
982 bool BreaksHint = VRM->hasPreferredPhys(Intf->reg); in canEvictInterferenceInRange()
985 Cost.MaxWeight = std::max(Cost.MaxWeight, Intf->weight); in canEvictInterferenceInRange()
1063 LiveInterval *Intf = Intfs[i]; in evictInterference() local
1065 if (!VRM->hasPhys(Intf->reg)) in evictInterference()
1068 LastEvicted.addEviction(PhysReg, VirtReg.reg, Intf->reg); in evictInterference()
1070 Matrix->unassign(*Intf); in evictInterference()
1071 assert((ExtraRegInfo[Intf->reg].Cascade < Cascade || in evictInterference()
1072 VirtReg.isSpillable() < Intf->isSpillable()) && in evictInterference()
1074 ExtraRegInfo[Intf->reg].Cascade = Cascade; in evictInterference()
1076 NewVRegs.push_back(Intf->reg); in evictInterference()
1172 bool RAGreedy::addSplitConstraints(InterferenceCache::Cursor Intf, in addSplitConstraints() argument
1184 Intf.moveToBlock(BC.Number); in addSplitConstraints()
1192 if (!Intf.hasInterference()) in addSplitConstraints()
1200 if (Intf.first() <= Indexes->getMBBStartIdx(BC.Number)) { in addSplitConstraints()
1203 } else if (Intf.first() < BI.FirstInstr) { in addSplitConstraints()
1206 } else if (Intf.first() < BI.LastInstr) { in addSplitConstraints()
1220 if (Intf.last() >= SA->getLastSplitPoint(BC.Number)) { in addSplitConstraints()
1223 } else if (Intf.last() > BI.LastInstr) { in addSplitConstraints()
1226 } else if (Intf.last() > BI.FirstInstr) { in addSplitConstraints()
1245 bool RAGreedy::addThroughConstraints(InterferenceCache::Cursor Intf, in addThroughConstraints() argument
1254 Intf.moveToBlock(Number); in addThroughConstraints()
1256 if (!Intf.hasInterference()) { in addThroughConstraints()
1276 if (Intf.first() <= Indexes->getMBBStartIdx(Number)) in addThroughConstraints()
1282 if (Intf.last() >= SA->getLastSplitPoint(Number)) in addThroughConstraints()
1335 if (!addThroughConstraints(Cand.Intf, NewBlocks)) in growRegion()
1373 if (!addSplitConstraints(Cand.Intf, Cost)) { in calcCompactRegion()
1484 Cand.Intf.first(), Cand.Intf.last(), &MaxWeight); in splitCanCauseEvictionChain()
1491 Cand.Intf.moveToBlock(BBNumber); in splitCanCauseEvictionChain()
1501 if (EvictorLI.FindSegmentContaining(Cand.Intf.first()) == EvictorLI.end()) in splitCanCauseEvictionChain()
1510 Cand.Intf.first().getPrevIndex(), Cand.Intf.last()); in splitCanCauseEvictionChain()
1533 Cand.Intf.moveToBlock(BBNumber); in splitCanCauseLocalSpill()
1537 if (!Matrix->checkInterference(Cand.Intf.first().getPrevIndex(), in splitCanCauseLocalSpill()
1538 Cand.Intf.last(), PhysReg)) in splitCanCauseLocalSpill()
1545 Order, LIS->getInterval(VirtRegToSplit), Cand.Intf.first(), in splitCanCauseLocalSpill()
1546 Cand.Intf.last(), &CheapestEvictWeight); in splitCanCauseLocalSpill()
1553 Cand.Intf.first().getPrevIndex(), Cand.Intf.last()); in splitCanCauseLocalSpill()
1583 Cand.Intf.moveToBlock(BC.Number); in calcGlobalSplitCost()
1587 if (EnableAdvancedRASplitCost && Cand.Intf.hasInterference() && BI.LiveIn && in calcGlobalSplitCost()
1624 Cand.Intf.moveToBlock(Number); in calcGlobalSplitCost()
1625 if (Cand.Intf.hasInterference()) { in calcGlobalSplitCost()
1690 Cand.Intf.moveToBlock(Number); in splitAroundRegion()
1691 IntfIn = Cand.Intf.first(); in splitAroundRegion()
1699 Cand.Intf.moveToBlock(Number); in splitAroundRegion()
1700 IntfOut = Cand.Intf.last(); in splitAroundRegion()
1739 Cand.Intf.moveToBlock(Number); in splitAroundRegion()
1740 IntfIn = Cand.Intf.first(); in splitAroundRegion()
1747 Cand.Intf.moveToBlock(Number); in splitAroundRegion()
1748 IntfOut = Cand.Intf.last(); in splitAroundRegion()
1896 if (!addSplitConstraints(Cand.Intf, Cost)) { in calculateRegionSplitCost()
2530 LiveInterval *Intf = Q.interferingVRegs()[i - 1]; in mayRecolorAllInterferences() local
2535 if (((getStage(*Intf) == RS_Done && in mayRecolorAllInterferences()
2536 MRI->getRegClass(Intf->reg) == CurRC) && in mayRecolorAllInterferences()
2537 !(hasTiedDef(MRI, VirtReg.reg) && !hasTiedDef(MRI, Intf->reg))) || in mayRecolorAllInterferences()
2538 FixedRegisters.count(Intf->reg)) { in mayRecolorAllInterferences()
2543 RecoloringCandidates.insert(Intf); in mayRecolorAllInterferences()