reference, declarationdefinition
definition → references, declarations, derived classes, virtual overrides
reference to multiple definitions → definitions
unreferenced

References

lib/CodeGen/ShrinkWrap.cpp
  191     Save = nullptr;
  211   bool ArePointsInteresting() const { return Save != Entry && Save && Restore; }
  211   bool ArePointsInteresting() const { return Save != Entry && Save && Restore; }
  329   if (!Save)
  330     Save = &MBB;
  332     Save = MDT->findNearestCommonDominator(Save, &MBB);
  332     Save = MDT->findNearestCommonDominator(Save, &MBB);
  334   if (!Save) {
  383   while (Save && Restore &&
  384          (!(SaveDominatesRestore = MDT->dominates(Save, Restore)) ||
  385           !(RestorePostDominatesSave = MPDT->dominates(Restore, Save)) ||
  403           MLI->getLoopFor(Save) || MLI->getLoopFor(Restore))) {
  406       Save = MDT->findNearestCommonDominator(Save, Restore);
  406       Save = MDT->findNearestCommonDominator(Save, Restore);
  411       Restore = MPDT->findNearestCommonDominator(Restore, Save);
  414     if (Save && Restore &&
  415         (MLI->getLoopFor(Save) || MLI->getLoopFor(Restore))) {
  416       if (MLI->getLoopDepth(Save) > MLI->getLoopDepth(Restore)) {
  419         Save = FindIDom<>(*Save, Save->predecessors(), *MDT);
  419         Save = FindIDom<>(*Save, Save->predecessors(), *MDT);
  419         Save = FindIDom<>(*Save, Save->predecessors(), *MDT);
  420         if (!Save)
  533     assert(!Save && !Restore && "We miss a shrink-wrap opportunity?!");
  544                       << Save->getNumber() << ' ' << Save->getName() << ' '
  544                       << Save->getNumber() << ' ' << Save->getName() << ' '
  545                       << MBFI->getBlockFreq(Save).getFrequency()
  551     if (((IsSaveCheap = EntryFreq >= MBFI->getBlockFreq(Save).getFrequency()) &&
  553         ((TargetCanUseSaveAsPrologue = TFI->canUseAsPrologue(*Save)) &&
  560       Save = FindIDom<>(*Save, Save->predecessors(), *MDT);
  560       Save = FindIDom<>(*Save, Save->predecessors(), *MDT);
  560       Save = FindIDom<>(*Save, Save->predecessors(), *MDT);
  561       if (!Save)
  563       NewBB = Save;
  572   } while (Save && Restore);
  580                     << Save->getNumber() << ' ' << Save->getName()
  580                     << Save->getNumber() << ' ' << Save->getName()
  585   MFI.setSavePoint(Save);