misched: trace ReadyQ.
authorAndrew Trick <atrick@apple.com>
Thu, 17 May 2012 18:35:13 +0000 (18:35 +0000)
committerAndrew Trick <atrick@apple.com>
Thu, 17 May 2012 18:35:13 +0000 (18:35 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@157007 91177308-0d34-0410-b5e6-96231b3b80d8

lib/CodeGen/MachineScheduler.cpp

index 57f3506d8e8e883e360b65be78f0e8e275e65253..0aaef5d59996b76004a1a8ba8e43d5a4871642f8 100644 (file)
@@ -713,6 +713,13 @@ struct ReadyQ {
     *I = Queue.back();
     Queue.pop_back();
   }
+
+  void dump(const char* Name) {
+    dbgs() << Name << ": ";
+    for (unsigned i = 0, e = Queue.size(); i < e; ++i)
+      dbgs() << Queue[i]->NodeNum << " ";
+    dbgs() << "\n";
+  }
 };
 
 /// ConvergingScheduler shrinks the unscheduled zone using heuristics to balance
@@ -828,6 +835,7 @@ static bool compareRPDelta(const RegPressureDelta &LHS,
 ConvergingScheduler::CandResult ConvergingScheduler::
 pickNodeFromQueue(ReadyQ &Q, const RegPressureTracker &RPTracker,
                   SchedCandidate &Candidate) {
+  DEBUG(Q.dump(getQName(Q.ID)));
 
   // getMaxPressureDelta temporarily modifies the tracker.
   RegPressureTracker &TempTracker = const_cast<RegPressureTracker&>(RPTracker);