Lines Matching refs:LiveInterval

97   DenseMap<int, std::unique_ptr<LiveInterval>> StackSlotToOrigLI;
111 bool isSpillCandBB(LiveInterval &OrigLI, VNInfo &OrigVNI,
126 void runHoistSpills(LiveInterval &OrigLI, VNInfo &OrigVNI,
163 LiveInterval *StackInt = nullptr;
205 bool isSnippet(const LiveInterval &SnipLI);
211 bool hoistSpillInsideBB(LiveInterval &SpillLI, MachineInstr &CopyMI);
212 void eliminateRedundantSpills(LiveInterval &LI, VNInfo *VNI);
214 void markValueUsed(LiveInterval*, VNInfo*);
216 bool reMaterializeFor(LiveInterval &, MachineInstr &MI);
319 bool InlineSpiller::isSnippet(const LiveInterval &SnipLI) { in isSnippet()
398 LiveInterval &SnipLI = LIS.getInterval(SnipReg); in collectRegsToSpill()
433 bool InlineSpiller::hoistSpillInsideBB(LiveInterval &SpillLI, in hoistSpillInsideBB()
442 LiveInterval &SrcLI = LIS.getInterval(SrcReg); in hoistSpillInsideBB()
453 LiveInterval &OrigLI = LIS.getInterval(Original); in hoistSpillInsideBB()
494 void InlineSpiller::eliminateRedundantSpills(LiveInterval &SLI, VNInfo *VNI) { in eliminateRedundantSpills()
496 SmallVector<std::pair<LiveInterval*, VNInfo*>, 8> WorkList; in eliminateRedundantSpills()
501 LiveInterval *LI; in eliminateRedundantSpills()
527 LiveInterval &DstLI = LIS.getInterval(DstReg); in eliminateRedundantSpills()
558 void InlineSpiller::markValueUsed(LiveInterval *LI, VNInfo *VNI) { in markValueUsed()
559 SmallVector<std::pair<LiveInterval*, VNInfo*>, 8> WorkList; in markValueUsed()
580 LiveInterval &SnipLI = LIS.getInterval(MI->getOperand(1).getReg()); in markValueUsed()
623 bool InlineSpiller::reMaterializeFor(LiveInterval &VirtReg, MachineInstr &MI) { in reMaterializeFor()
646 LiveInterval &OrigLI = LIS.getInterval(Original); in reMaterializeFor()
723 LiveInterval &LI = LIS.getInterval(Reg); in reMaterializeAll()
740 LiveInterval &LI = LIS.getInterval(Reg); in reMaterializeAll()
1145 LiveInterval &OldLI = LIS.getInterval(Reg); in spillAroundUses()
1199 LiveInterval &SibLI = LIS.getInterval(SibReg); in spillAroundUses()
1318 LiveInterval &OrigLI = LIS.getInterval(Original); in addToMergeableSpills()
1322 auto LI = std::make_unique<LiveInterval>(OrigLI.reg(), OrigLI.weight()); in addToMergeableSpills()
1347 bool HoistSpillHelper::isSpillCandBB(LiveInterval &OrigLI, VNInfo &OrigVNI, in isSpillCandBB()
1363 LiveInterval &LI = LIS.getInterval(SibReg); in isSpillCandBB()
1492 LiveInterval &OrigLI, VNInfo &OrigVNI, in runHoistSpills()
1639 LiveInterval &OrigLI = *StackSlotToOrigLI[Slot]; in hoistAllSpills()
1671 LiveInterval &StackIntvl = LSS.getInterval(Slot); in hoistAllSpills()