Fix debug printing of flagged SDNodes in SUnits so that they

print in the correct order.

llvm-svn: 59567
This commit is contained in:
Dan Gohman 2008-11-19 00:04:44 +00:00
parent cdbbc00a4f
commit eb87975384
1 changed files with 12 additions and 12 deletions

View File

@ -461,20 +461,20 @@ void ScheduleDAG::Run() {
/// a group of nodes flagged together.
void SUnit::dump(const ScheduleDAG *G) const {
cerr << "SU(" << NodeNum << "): ";
if (getNode())
getNode()->dump(G->DAG);
else
if (getNode()) {
SmallVector<SDNode *, 4> FlaggedNodes;
for (SDNode *N = getNode(); N; N = N->getFlaggedNode())
FlaggedNodes.push_back(N);
while (!FlaggedNodes.empty()) {
cerr << " ";
FlaggedNodes.back()->dump(G->DAG);
cerr << "\n";
FlaggedNodes.pop_back();
}
} else {
cerr << "CROSS RC COPY ";
cerr << "\n";
SmallVector<SDNode *, 4> FlaggedNodes;
for (SDNode *N = getNode()->getFlaggedNode(); N; N = N->getFlaggedNode())
FlaggedNodes.push_back(N);
while (!FlaggedNodes.empty()) {
cerr << " ";
FlaggedNodes.back()->dump(G->DAG);
cerr << "\n";
FlaggedNodes.pop_back();
}
cerr << "\n";
}
void SUnit::dumpAll(const ScheduleDAG *G) const {