Lines Matching refs:LiveInterval

105   DenseMap<int, std::unique_ptr<LiveInterval>> StackSlotToOrigLI;
119 bool isSpillCandBB(LiveInterval &OrigLI, VNInfo &OrigVNI,
134 void runHoistSpills(LiveInterval &OrigLI, VNInfo &OrigVNI,
174 LiveInterval *StackInt;
216 bool isSnippet(const LiveInterval &SnipLI);
222 bool hoistSpillInsideBB(LiveInterval &SpillLI, MachineInstr &CopyMI);
223 void eliminateRedundantSpills(LiveInterval &LI, VNInfo *VNI);
225 void markValueUsed(LiveInterval*, VNInfo*);
227 bool reMaterializeFor(LiveInterval &, MachineInstr &MI);
287 bool InlineSpiller::isSnippet(const LiveInterval &SnipLI) { in isSnippet()
350 LiveInterval &SnipLI = LIS.getInterval(SnipReg); in collectRegsToSpill()
385 bool InlineSpiller::hoistSpillInsideBB(LiveInterval &SpillLI, in hoistSpillInsideBB()
394 LiveInterval &SrcLI = LIS.getInterval(SrcReg); in hoistSpillInsideBB()
405 LiveInterval &OrigLI = LIS.getInterval(Original); in hoistSpillInsideBB()
446 void InlineSpiller::eliminateRedundantSpills(LiveInterval &SLI, VNInfo *VNI) { in eliminateRedundantSpills()
448 SmallVector<std::pair<LiveInterval*, VNInfo*>, 8> WorkList; in eliminateRedundantSpills()
453 LiveInterval *LI; in eliminateRedundantSpills()
481 LiveInterval &DstLI = LIS.getInterval(DstReg); in eliminateRedundantSpills()
511 void InlineSpiller::markValueUsed(LiveInterval *LI, VNInfo *VNI) { in markValueUsed()
512 SmallVector<std::pair<LiveInterval*, VNInfo*>, 8> WorkList; in markValueUsed()
533 LiveInterval &SnipLI = LIS.getInterval(MI->getOperand(1).getReg()); in markValueUsed()
576 bool InlineSpiller::reMaterializeFor(LiveInterval &VirtReg, MachineInstr &MI) { in reMaterializeFor()
601 LiveInterval &OrigLI = LIS.getInterval(Original); in reMaterializeFor()
678 LiveInterval &LI = LIS.getInterval(Reg); in reMaterializeAll()
699 LiveInterval &LI = LIS.getInterval(Reg); in reMaterializeAll()
700 for (LiveInterval::vni_iterator I = LI.vni_begin(), E = LI.vni_end(); in reMaterializeAll()
1038 LiveInterval &OldLI = LIS.getInterval(Reg); in spillAroundUses()
1096 LiveInterval &SibLI = LIS.getInterval(SibReg); in spillAroundUses()
1217 LiveInterval &OrigLI = LIS.getInterval(Original); in addToMergeableSpills()
1221 auto LI = std::make_unique<LiveInterval>(OrigLI.reg(), OrigLI.weight()); in addToMergeableSpills()
1246 bool HoistSpillHelper::isSpillCandBB(LiveInterval &OrigLI, VNInfo &OrigVNI, in isSpillCandBB()
1262 LiveInterval &LI = LIS.getInterval(SibReg); in isSpillCandBB()
1391 LiveInterval &OrigLI, VNInfo &OrigVNI, in runHoistSpills()
1539 LiveInterval &OrigLI = *StackSlotToOrigLI[Slot]; in hoistAllSpills()
1571 LiveInterval &StackIntvl = LSS.getInterval(Slot); in hoistAllSpills()