[PATCH] D60839: [ScheduleDAGInstrs] Compute topological ordering on demand.

Florian Hahn via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Tue May 21 06:02:17 PDT 2019


This revision was automatically updated to reflect the committed changes.
Closed by commit rL361253: [ScheduleDAGInstrs] Compute topological ordering on demand. (authored by fhahn, committed by ).

Changed prior to commit:
  https://reviews.llvm.org/D60839?vs=200181&id=200481#toc

Repository:
  rL LLVM

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D60839/new/

https://reviews.llvm.org/D60839

Files:
  llvm/trunk/lib/CodeGen/ScheduleDAGInstrs.cpp


Index: llvm/trunk/lib/CodeGen/ScheduleDAGInstrs.cpp
===================================================================
--- llvm/trunk/lib/CodeGen/ScheduleDAGInstrs.cpp
+++ llvm/trunk/lib/CodeGen/ScheduleDAGInstrs.cpp
@@ -969,7 +969,7 @@
   CurrentVRegDefs.clear();
   CurrentVRegUses.clear();
 
-  Topo.InitDAGTopologicalSorting();
+  Topo.MarkDirty();
 }
 
 raw_ostream &llvm::operator<<(raw_ostream &OS, const PseudoSourceValue* PSV) {
@@ -1158,7 +1158,7 @@
     // If Pred is reachable from Succ, then the edge creates a cycle.
     if (Topo.IsReachable(PredDep.getSUnit(), SuccSU))
       return false;
-    Topo.AddPred(SuccSU, PredDep.getSUnit());
+    Topo.AddPredQueued(SuccSU, PredDep.getSUnit());
   }
   SuccSU->addPred(PredDep, /*Required=*/!PredDep.isArtificial());
   // Return true regardless of whether a new edge needed to be inserted.


-------------- next part --------------
A non-text attachment was scrubbed...
Name: D60839.200481.patch
Type: text/x-patch
Size: 854 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20190521/d4cd8560/attachment.bin>


More information about the llvm-commits mailing list