From e220821deb1311fedef1d37fa1bd3a74b85149d1 Mon Sep 17 00:00:00 2001 From: Jim Laskey Date: Sun, 18 Dec 2005 03:59:21 +0000 Subject: Groups were not emitted if the dominator node and the node in the ordering list were not the same node. Ultimately the test was bogus. llvm-svn: 24815 --- llvm/lib/CodeGen/SelectionDAG/ScheduleDAG.cpp | 16 ++++++---------- 1 file changed, 6 insertions(+), 10 deletions(-) (limited to 'llvm') diff --git a/llvm/lib/CodeGen/SelectionDAG/ScheduleDAG.cpp b/llvm/lib/CodeGen/SelectionDAG/ScheduleDAG.cpp index db0543644ed..ef90fc048c5 100644 --- a/llvm/lib/CodeGen/SelectionDAG/ScheduleDAG.cpp +++ b/llvm/lib/CodeGen/SelectionDAG/ScheduleDAG.cpp @@ -653,10 +653,10 @@ bool SimpleSched::isPassiveNode(SDNode *Node) { /// IncludeNode - Add node to NodeInfo vector. /// void SimpleSched::IncludeNode(NodeInfo *NI) { -// Get node -SDNode *Node = NI->Node; -// Ignore entry node -if (Node->getOpcode() == ISD::EntryToken) return; + // Get node + SDNode *Node = NI->Node; + // Ignore entry node + if (Node->getOpcode() == ISD::EntryToken) return; // Check current count for node int Count = NI->getPending(); // If the node is already in list @@ -987,13 +987,9 @@ void SimpleSched::EmitAll() { for (unsigned i = 0, N = Ordering.size(); i < N; i++) { // Get the scheduling info NodeInfo *NI = Ordering[i]; - // Iterate through nodes - NodeGroupIterator NGI(Ordering[i]); if (NI->isInGroup()) { - if (NI->isGroupDominator()) { - NodeGroupIterator NGI(Ordering[i]); - while (NodeInfo *NI = NGI.next()) EmitNode(NI); - } + NodeGroupIterator NGI(Ordering[i]); + while (NodeInfo *NI = NGI.next()) EmitNode(NI); } else { EmitNode(NI); } -- cgit v1.2.3