Lines Matching refs:LI

40   LiveInterval &LI = LIS.createEmptyInterval(VReg);  in createEmptyIntervalFrom()  local
42 LI.markNotSpillable(); in createEmptyIntervalFrom()
50 LI.createSubRange(Alloc, S.LaneMask); in createEmptyIntervalFrom()
52 return LI; in createEmptyIntervalFrom()
207 bool LiveRangeEdit::foldAsLoad(LiveInterval *LI, in foldAsLoad() argument
212 for (MachineOperand &MO : MRI.reg_nodbg_operands(LI->reg())) { in foldAsLoad()
248 if (UseMI->readsWritesVirtualRegister(LI->reg(), &Ops).second) in foldAsLoad()
260 DefMI->addRegisterDead(LI->reg(), nullptr); in foldAsLoad()
266 bool LiveRangeEdit::useIsKill(const LiveInterval &LI, in useIsKill() argument
270 if (LI.Query(Idx).isKill()) in useIsKill()
275 for (const LiveInterval::SubRange &S : LI.subranges()) { in useIsKill()
349 LiveInterval &LI = LIS.getInterval(Reg); in eliminateDeadDef() local
357 (MO.readsReg() && (MRI.hasOneNonDBGUse(Reg) || useIsKill(LI, MO)))) in eliminateDeadDef()
358 ToShrink.insert(&LI); in eliminateDeadDef()
364 if (TheDelegate && LI.getVNInfoAt(Idx) != nullptr) in eliminateDeadDef()
365 TheDelegate->LRE_WillShrinkVirtReg(LI.reg()); in eliminateDeadDef()
366 LIS.removeVRegDefAt(LI, Idx); in eliminateDeadDef()
367 if (LI.empty()) in eliminateDeadDef()
450 LiveInterval *LI = ToShrink.pop_back_val(); in eliminateDeadDefs() local
451 if (foldAsLoad(LI, Dead)) in eliminateDeadDefs()
453 Register VReg = LI->reg(); in eliminateDeadDefs()
456 if (!LIS.shrinkToUses(LI, &Dead)) in eliminateDeadDefs()
467 LI->RenumberValues(); in eliminateDeadDefs()
469 LIS.splitSeparateComponents(*LI, SplitLIs); in eliminateDeadDefs()
499 LiveInterval &LI = LIS.getInterval(get(I)); in calculateRegClassAndHint() local
500 if (MRI.recomputeRegClass(LI.reg())) in calculateRegClassAndHint()
503 dbgs() << "Inflated " << printReg(LI.reg()) << " to " in calculateRegClassAndHint()
504 << TRI->getRegClassName(MRI.getRegClass(LI.reg())) << '\n'; in calculateRegClassAndHint()
506 VRAI.calculateSpillWeightAndHint(LI); in calculateRegClassAndHint()