Lines Matching defs:LR
81 Updater.setDest(&I.LR);
87 void LiveRangeCalc::extend(LiveRange &LR, SlotIndex Use, unsigned PhysReg,
97 auto EP = LR.extendInBlock(Undefs, Indexes->getMBBStartIdx(UseMBB), Use);
105 if (findReachingDefs(LR, *UseMBB, Use, PhysReg, Undefs))
122 bool LiveRangeCalc::isDefOnEntry(LiveRange &LR, ArrayRef<SlotIndex> Undefs,
156 // If LR has a segment S that starts at the next block, i.e. [End, ...),
159 LiveRange::iterator UB = upper_bound(LR, End.getPrevSlot());
160 if (UB != LR.begin()) {
167 if (LR.isUndefIn(Undefs, Seg.end, End))
175 if (UndefOnEntry[N] || LR.isUndefIn(Undefs, Begin, End)) {
191 bool LiveRangeCalc::findReachingDefs(LiveRange &LR, MachineBasicBlock &UseMBB,
196 // Block numbers where LR should be live-in.
252 auto EP = LR.extendInBlock(Undefs, Start, End);
286 LiveRangeUpdater Updater(&LR);
304 std::make_pair(&LR, std::make_pair(BitVector(), BitVector())));
320 !isDefOnEntry(LR, Undefs, *MBB, DefOnEntry, UndefOnEntry))
322 addLiveInBlock(LR, DomTree->getNode(MBB));
403 LiveRange &LR = I.LR;
404 VNInfo *VNI = LR.getNextValue(Start, *Alloc);
412 LR.addSegment(LiveInterval::Segment(Start, I.Kill, VNI));
415 LR.addSegment(LiveInterval::Segment(Start, End, VNI));