Lines Matching refs:LR
112 for (LiveRange *LR : RegUnitRanges) in releaseMemory()
113 delete LR; in releaseMemory()
153 if (LiveRange *LR = RegUnitRanges[Unit]) in print() local
154 OS << printRegUnit(Unit, TRI) << ' ' << *LR << '\n'; in print()
271 void LiveIntervals::computeRegUnitRange(LiveRange &LR, unsigned Unit) { in computeRegUnitRange() argument
285 LICalc->createDeadDefs(LR, Reg); in computeRegUnitRange()
302 LICalc->extendToUses(LR, Reg); in computeRegUnitRange()
309 LR.flushSegmentSet(); in computeRegUnitRange()
333 LiveRange *LR = RegUnitRanges[Unit]; in computeLiveInRegUnits() local
334 if (!LR) { in computeLiveInRegUnits()
336 LR = RegUnitRanges[Unit] = new LiveRange(UseSegmentSetForPhysRegs); in computeLiveInRegUnits()
339 VNInfo *VNI = LR->createDeadDef(Begin, getVNInfoAllocator()); in computeLiveInRegUnits()
353 static void createSegmentsForValues(LiveRange &LR, in createSegmentsForValues() argument
359 LR.addSegment(LiveRange::Segment(Def, Def.getDeadSlot(), VNI)); in createSegmentsForValues()
615 void LiveIntervals::extendToIndices(LiveRange &LR, in extendToIndices() argument
621 LICalc->extend(LR, Idx, /*PhysReg=*/0, Undefs); in extendToIndices()
624 void LiveIntervals::pruneValue(LiveRange &LR, SlotIndex Kill, in pruneValue() argument
626 LiveQueryResult LRQ = LR.Query(Kill); in pruneValue()
636 LR.removeSegment(Kill, LRQ.endPoint()); in pruneValue()
642 LR.removeSegment(Kill, MBBEnd); in pruneValue()
659 LiveQueryResult LRQ = LR.Query(MBBStart); in pruneValue()
668 LR.removeSegment(MBBStart, LRQ.endPoint()); in pruneValue()
675 LR.removeSegment(MBBStart, MBBEnd); in pruneValue()
1054 if (LiveRange *LR = getRegUnitLI(Unit)) in updateAllRanges() local
1055 updateRange(*LR, Unit, LaneBitmask::getNone()); in updateAllRanges()
1064 void updateRange(LiveRange &LR, Register Reg, LaneBitmask LaneMask) { in updateRange() argument
1065 if (!Updated.insert(&LR).second) in updateRange()
1076 dbgs() << ":\t" << LR << '\n'; in updateRange()
1079 handleMoveDown(LR); in updateRange()
1081 handleMoveUp(LR, Reg, LaneMask); in updateRange()
1082 LLVM_DEBUG(dbgs() << " -->\t" << LR << '\n'); in updateRange()
1083 LR.verify(); in updateRange()
1088 void handleMoveDown(LiveRange &LR) { in handleMoveDown() argument
1089 LiveRange::iterator E = LR.end(); in handleMoveDown()
1091 LiveRange::iterator OldIdxIn = LR.find(OldIdx.getBaseIndex()); in handleMoveDown()
1118 LR.advanceTo(Next, NewIdx.getBaseIndex()); in handleMoveDown()
1167 = LR.advanceTo(OldIdxOut, NewIdx.getRegSlot()); in handleMoveDown()
1173 if (OldIdxOut != LR.begin() && in handleMoveDown()
1241 LR.removeValNo(OldIdxVNI); in handleMoveDown()
1261 void handleMoveUp(LiveRange &LR, Register Reg, LaneBitmask LaneMask) { in handleMoveUp() argument
1262 LiveRange::iterator E = LR.end(); in handleMoveUp()
1264 LiveRange::iterator OldIdxIn = LR.find(OldIdx.getBaseIndex()); in handleMoveUp()
1293 OldIdxIn = OldIdxOut != LR.begin() ? std::prev(OldIdxOut) : E; in handleMoveUp()
1306 LiveRange::iterator NewIdxOut = LR.find(NewIdx.getRegSlot()); in handleMoveUp()
1316 LR.removeValNo(NewIdxOut->valno); in handleMoveUp()
1319 LR.removeValNo(OldIdxVNI); in handleMoveUp()
1330 assert(NewIdxIn == LR.find(NewIdx.getBaseIndex())); in handleMoveUp()
1336 if (OldIdxIn != LR.begin() && in handleMoveUp()
1555 const SlotIndex EndIdx, LiveRange &LR, in repairOldRegInRange() argument
1558 LiveInterval::iterator LII = LR.find(EndIdx); in repairOldRegInRange()
1560 if (LII != LR.end() && LII->start < EndIdx) { in repairOldRegInRange()
1562 } else if (LII == LR.begin()) { in repairOldRegInRange()
1593 LII = LR.removeSegment(LII, true); in repairOldRegInRange()
1594 if (LII != LR.begin()) in repairOldRegInRange()
1608 VNInfo *VNI = LR.getNextValue(instrIdx.getRegSlot(), VNInfoAllocator); in repairOldRegInRange()
1611 LII = LR.addSegment(S); in repairOldRegInRange()
1613 VNInfo *VNI = LR.getNextValue(instrIdx.getRegSlot(), VNInfoAllocator); in repairOldRegInRange()
1615 LII = LR.addSegment(S); in repairOldRegInRange()
1636 LR.removeSegment(*LII, true); in repairOldRegInRange()
1704 if (LiveRange *LR = getCachedRegUnit(Unit)) in removePhysRegDefAt() local
1705 if (VNInfo *VNI = LR->getVNInfoAt(Pos)) in removePhysRegDefAt()
1706 LR->removeValNo(VNI); in removePhysRegDefAt()