Lines Matching refs:Restore

124   MachineBasicBlock *Restore;  member in __anon60443a910111::ShrinkWrap
193 Restore = nullptr; in init()
212 bool ArePointsInteresting() const { return Save != Entry && Save && Restore; } in ArePointsInteresting()
336 if (!Restore) in updateSaveRestorePoints()
337 Restore = &MBB; in updateSaveRestorePoints()
343 Restore = MPDT->findNearestCommonDominator(Restore, &MBB); in updateSaveRestorePoints()
345 Restore = nullptr; // Abort, we can't find a restore point in this case. in updateSaveRestorePoints()
349 if (Restore == &MBB) { in updateSaveRestorePoints()
355 Restore = nullptr; // Abort, we can't find a restore point in this case. in updateSaveRestorePoints()
360 Restore = FindIDom<>(*Restore, Restore->successors(), *MPDT); in updateSaveRestorePoints()
365 if (!Restore) { in updateSaveRestorePoints()
380 while (Restore && in updateSaveRestorePoints()
381 (!(SaveDominatesRestore = MDT->dominates(Save, Restore)) || in updateSaveRestorePoints()
382 !(RestorePostDominatesSave = MPDT->dominates(Restore, Save)) || in updateSaveRestorePoints()
400 MLI->getLoopFor(Save) || MLI->getLoopFor(Restore))) { in updateSaveRestorePoints()
403 Save = MDT->findNearestCommonDominator(Save, Restore); in updateSaveRestorePoints()
408 Restore = MPDT->findNearestCommonDominator(Restore, Save); in updateSaveRestorePoints()
411 if (Restore && (MLI->getLoopFor(Save) || MLI->getLoopFor(Restore))) { in updateSaveRestorePoints()
412 if (MLI->getLoopDepth(Save) > MLI->getLoopDepth(Restore)) { in updateSaveRestorePoints()
422 MLI->getLoopFor(Restore)->getExitingBlocks(ExitBlocks); in updateSaveRestorePoints()
425 MachineBasicBlock *IPdom = Restore; in updateSaveRestorePoints()
434 if (IPdom && MLI->getLoopDepth(IPdom) < MLI->getLoopDepth(Restore)) in updateSaveRestorePoints()
435 Restore = IPdom; in updateSaveRestorePoints()
437 Restore = nullptr; in updateSaveRestorePoints()
527 assert(!Save && !Restore && "We miss a shrink-wrap opportunity?!"); in runOnMachineFunction()
540 << "\nRestore: " << Restore->getNumber() << ' ' in runOnMachineFunction()
541 << Restore->getName() << ' ' in runOnMachineFunction()
542 << MBFI->getBlockFreq(Restore).getFrequency() << '\n'); in runOnMachineFunction()
546 EntryFreq >= MBFI->getBlockFreq(Restore).getFrequency()) && in runOnMachineFunction()
548 TFI->canUseAsEpilogue(*Restore))) in runOnMachineFunction()
560 Restore = FindIDom<>(*Restore, Restore->successors(), *MPDT); in runOnMachineFunction()
561 if (!Restore) in runOnMachineFunction()
563 NewBB = Restore; in runOnMachineFunction()
566 } while (Save && Restore); in runOnMachineFunction()
575 << "\nRestore: " << Restore->getNumber() << ' ' in runOnMachineFunction()
576 << Restore->getName() << '\n'); in runOnMachineFunction()
580 MFI.setRestorePoint(Restore); in runOnMachineFunction()