]> granicus.if.org Git - llvm/commitdiff
ScheduleDAG: Identify EntrySU/ExitSU when dumping node ids
authorMatthias Braun <matze@braunis.de>
Fri, 11 Nov 2016 22:37:26 +0000 (22:37 +0000)
committerMatthias Braun <matze@braunis.de>
Fri, 11 Nov 2016 22:37:26 +0000 (22:37 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@286652 91177308-0d34-0410-b5e6-96231b3b80d8

lib/CodeGen/ScheduleDAG.cpp

index e139df93fe95bf41b8aa5f6c0f0fee7b71a5fb57..1f0c3283ceb115a439474e180c382d33eff50c85 100644 (file)
@@ -310,10 +310,20 @@ void SUnit::biasCriticalPath() {
 }
 
 #if !defined(NDEBUG) || defined(LLVM_ENABLE_DUMP)
+static void dumpSUIdentifier(const ScheduleDAG &DAG, const SUnit &SU) {
+  if (&SU == &DAG.ExitSU)
+    dbgs() << "ExitSU";
+  else if (&SU == &DAG.EntrySU)
+    dbgs() << "EntrySU";
+  else
+    dbgs() << "SU(" << SU.NodeNum << ")";
+}
+
 /// SUnit - Scheduling unit. It's an wrapper around either a single SDNode or
 /// a group of nodes flagged together.
 void SUnit::dump(const ScheduleDAG *G) const {
-  dbgs() << "SU(" << NodeNum << "): ";
+  dumpSUIdentifier(*G, *this);
+  dbgs() << ": ";
   G->dumpNode(this);
 }
 
@@ -342,7 +352,7 @@ void SUnit::dumpAll(const ScheduleDAG *G) const {
       case SDep::Output: dbgs() << "out  "; break;
       case SDep::Order:  dbgs() << "ord  "; break;
       }
-      dbgs() << "SU(" << I->getSUnit()->NodeNum << ")";
+      dumpSUIdentifier(*G, *I->getSUnit());
       if (I->isArtificial())
         dbgs() << " *";
       dbgs() << ": Latency=" << I->getLatency();
@@ -362,7 +372,7 @@ void SUnit::dumpAll(const ScheduleDAG *G) const {
       case SDep::Output: dbgs() << "out  "; break;
       case SDep::Order:  dbgs() << "ord  "; break;
       }
-      dbgs() << "SU(" << I->getSUnit()->NodeNum << ")";
+      dumpSUIdentifier(*G, *I->getSUnit());
       if (I->isArtificial())
         dbgs() << " *";
       dbgs() << ": Latency=" << I->getLatency();