[PATCH] D60125: [ScheduleDAGRRList] Recompute topological ordering on demand.

Eli Friedman via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Wed Apr 3 13:13:32 PDT 2019


efriedma added inline comments.


================
Comment at: llvm/lib/CodeGen/ScheduleDAG.cpp:716
                                              const SUnit *TargetSU) {
+  assert(!Dirty && Updates.empty() && "Topological order is outdated");
   // If insertion of the edge SU->TargetSU would create a cycle
----------------
How terrible would it be to just call fixOrder from here, instead of making the callers check?  That makes it impossible for callers to mess up, and the check should be cheap.

I guess it also might be possible to add some cheap checks here to avoid calling fixOrder; for example, if TargetSU has no successors.


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D60125





More information about the llvm-commits mailing list