Lines Matching refs:LIS
64 : LIS(lis), LastInsertPoint(BBNum) {} in InsertPointAnalysis()
71 SlotIndex MBBEnd = LIS.getMBBEndIdx(&MBB); in computeLastInsertPoint()
90 LIP.first = LIS.getInstructionIndex(*FirstTerm); in computeLastInsertPoint()
103 LIP.second = LIS.getInstructionIndex(MI); in computeLastInsertPoint()
115 return LIS.isLiveInToMBB(CurLI, EHPad); in computeLastInsertPoint()
127 if (auto *I = LIS.getInstructionFromIndex(LIP.second)) in computeLastInsertPoint()
146 if (LIP == LIS.getMBBEndIdx(&MBB)) in getLastInsertPointIter()
148 return LIS.getInstructionFromIndex(LIP); in getLastInsertPointIter()
157 : MF(vrm.getMachineFunction()), VRM(vrm), LIS(lis), Loops(mli), in SplitAnalysis()
181 UseSlots.push_back(LIS.getInstructionIndex(*MO.getParent()).getRegSlot()); in analyzeUses()
216 LIS.getMBBFromIndex(LVI->start)->getIterator(); in calcLiveBlockInfo()
221 std::tie(Start, Stop) = LIS.getSlotIndexes()->getMBBRange(BI.MBB); in calcLiveBlockInfo()
298 MFI = LIS.getMBBFromIndex(LVI->start)->getIterator(); in calcLiveBlockInfo()
321 LIS.getMBBFromIndex(LVI->start)->getIterator(); in countLiveBlocks()
322 SlotIndex Stop = LIS.getMBBEndIdx(&*MFI); in countLiveBlocks()
330 Stop = LIS.getMBBEndIdx(&*MFI); in countLiveBlocks()
337 const LiveInterval &Orig = LIS.getInterval(OrigReg); in isOriginalEndpoint()
360 SplitEditor::SplitEditor(SplitAnalysis &SA, LiveIntervals &LIS, VirtRegMap &VRM, in SplitEditor() argument
363 : SA(SA), LIS(LIS), VRM(VRM), MRI(VRM.getMachineFunction().getRegInfo()), in SplitEditor()
376 LICalc[0].reset(&VRM.getMachineFunction(), LIS.getSlotIndexes(), &MDT, in reset()
377 &LIS.getVNInfoAllocator()); in reset()
379 LICalc[1].reset(&VRM.getMachineFunction(), LIS.getSlotIndexes(), &MDT, in reset()
380 &LIS.getVNInfoAllocator()); in reset()
446 S.createDeadDef(Def, LIS.getVNInfoAllocator()); in addDeadDef()
452 const MachineInstr *DefMI = LIS.getInstructionFromIndex(Def); in addDeadDef()
468 S.createDeadDef(Def, LIS.getVNInfoAllocator()); in addDeadDef()
479 LiveInterval *LI = &LIS.getInterval(Edit->get(RegIdx)); in defValue()
482 VNInfo *VNI = LI->getNextValue(Idx, LIS.getVNInfoAllocator()); in defValue()
522 addDeadDef(LIS.getInterval(Edit->get(RegIdx)), VNI, false); in forceRecompute()
538 SlotIndexes &Indexes = *LIS.getSlotIndexes(); in buildSingleSubRegCopy()
552 SlotIndexes &Indexes = *LIS.getSlotIndexes(); in buildCopy()
563 LiveInterval &DestLI = LIS.getInterval(Edit->get(RegIdx)); in buildCopy()
582 BumpPtrAllocator &Allocator = LIS.getVNInfoAllocator(); in buildCopy()
597 LiveInterval *LI = &LIS.getInterval(Edit->get(RegIdx)); in defFromParent()
605 LiveInterval &OrigLI = LIS.getInterval(Original); in defFromParent()
612 RM.OrigMI = LIS.getInstructionFromIndex(OrigVNI->def); in defFromParent()
634 SlotIndexes &Indexes = *LIS.getSlotIndexes(); in defFromParent()
675 MachineInstr *MI = LIS.getInstructionFromIndex(Idx); in enterIntvBefore()
692 MachineInstr *MI = LIS.getInstructionFromIndex(Idx); in enterIntvAfter()
702 SlotIndex End = LIS.getMBBEndIdx(&MBB); in enterIntvAtEnd()
738 useIntv(LIS.getMBBStartIdx(&MBB), LIS.getMBBEndIdx(&MBB)); in useIntv()
760 MachineInstr *MI = LIS.getInstructionFromIndex(Boundary); in leaveIntvAfter()
792 MachineInstr *MI = LIS.getInstructionFromIndex(Idx); in leaveIntvBefore()
800 SlotIndex Start = LIS.getMBBStartIdx(&MBB); in leaveIntvAtTop()
811 Register Reg = LIS.getInterval(Edit->get(RegIdx)).reg(); in leaveIntvAtTop()
830 assert(LIS.getMBBFromIndex(Start) == LIS.getMBBFromIndex(End) && in overlapIntv()
840 if (auto *MI = LIS.getInstructionFromIndex(End)) in overlapIntv()
856 LiveInterval *LI = &LIS.getInterval(Edit->get(0)); in removeBackCopies()
863 MachineInstr *MI = LIS.getInstructionFromIndex(Def); in removeBackCopies()
873 LIS.removeVRegDefAt(*LI, Def); in removeBackCopies()
874 LIS.RemoveMachineInstrFromMaps(*MI); in removeBackCopies()
891 AtBegin ? SlotIndex() : LIS.getInstructionIndex(*MBBI).getRegSlot(); in removeBackCopies()
963 LiveInterval *LI = &LIS.getInterval(Edit->get(0)); in computeRedundantBackCopies()
990 MachineBasicBlock *MBB1 = LIS.getMBBFromIndex((*It1)->def); in computeRedundantBackCopies()
991 MachineBasicBlock *MBB2 = LIS.getMBBFromIndex((*It2)->def); in computeRedundantBackCopies()
1016 LiveInterval *LI = &LIS.getInterval(Edit->get(0)); in hoistCopies()
1042 MachineBasicBlock *ValMBB = LIS.getMBBFromIndex(VNI->def); in hoistCopies()
1095 MachineBasicBlock *DefMBB = LIS.getMBBFromIndex(ParentVNI->def); in hoistCopies()
1165 LiveInterval &LI = LIS.getInterval(Edit->get(RegIdx)); in transferValues()
1189 MachineFunction::iterator MBB = LIS.getMBBFromIndex(Start)->getIterator(); in transferValues()
1191 std::tie(BlockStart, BlockEnd) = LIS.getSlotIndexes()->getMBBRange(&*MBB); in transferValues()
1211 BlockEnd = LIS.getMBBEndIdx(&*MBB); in transferValues()
1260 SlotIndex End = LIS.getMBBEndIdx(P); in extendPHIRange()
1287 LiveInterval &LI = LIS.getInterval(Edit->get(RegIdx)); in extendPHIKillRanges()
1289 MachineBasicBlock &B = *LIS.getMBBFromIndex(V->def); in extendPHIKillRanges()
1302 LiveInterval &LI = LIS.getInterval(Edit->get(RegIdx)); in extendPHIKillRanges()
1307 MachineBasicBlock &B = *LIS.getMBBFromIndex(V->def); in extendPHIKillRanges()
1308 SubLIC.reset(&VRM.getMachineFunction(), LIS.getSlotIndexes(), &MDT, in extendPHIKillRanges()
1309 &LIS.getVNInfoAllocator()); in extendPHIKillRanges()
1311 LI.computeSubRangeUndefs(Undefs, PS.LaneMask, MRI, *LIS.getSlotIndexes()); in extendPHIKillRanges()
1343 SlotIndex Idx = LIS.getInstructionIndex(*MI); in rewriteAssigned()
1349 LiveInterval &LI = LIS.getInterval(Edit->get(RegIdx)); in rewriteAssigned()
1406 LiveInterval &LI = LIS.getInterval(Edit->get(EP.RegIdx)); in rewriteAssigned()
1423 SubLIC.reset(&VRM.getMachineFunction(), LIS.getSlotIndexes(), &MDT, in rewriteAssigned()
1424 &LIS.getVNInfoAllocator()); in rewriteAssigned()
1426 LI.computeSubRangeUndefs(Undefs, S.LaneMask, MRI, *LIS.getSlotIndexes()); in rewriteAssigned()
1432 LiveInterval &LI = LIS.getInterval(R); in rewriteAssigned()
1437 LIS.constructMainRangeFromSubranges(LI); in rewriteAssigned()
1444 LiveInterval *LI = &LIS.getInterval(R); in deleteRematVictims()
1451 MachineInstr *MI = LIS.getInstructionFromIndex(S.valno->def); in deleteRematVictims()
1484 const SlotIndexes &Indexes = *LIS.getSlotIndexes(); in forceRecomputeVNI()
1551 LiveInterval &LI = LIS.getInterval(Reg); in finish()
1563 ConnectedVNInfoEqClasses ConEQ(LIS); in finish()
1567 LiveInterval &LI = LIS.getInterval(VReg); in finish()
1569 LIS.splitSeparateComponents(LI, SplitLIs); in finish()
1601 MachineInstr *MI = LIS.getInstructionFromIndex(BI.FirstInstr); in shouldSplitSingleBlock()
1639 std::tie(Start, Stop) = LIS.getSlotIndexes()->getMBBRange(MBBNum); in splitLiveThroughBlock()
1741 std::tie(Start, Stop) = LIS.getSlotIndexes()->getMBBRange(BI.MBB); in splitRegInBlock()
1834 std::tie(Start, Stop) = LIS.getSlotIndexes()->getMBBRange(BI.MBB); in splitRegOutBlock()