diff options
author | Dan Gohman <gohman@apple.com> | 2008-11-21 00:10:42 +0000 |
---|---|---|
committer | Dan Gohman <gohman@apple.com> | 2008-11-21 00:10:42 +0000 |
commit | 47d1a214a7013d12140a0c4972d7ba761150dfd4 (patch) | |
tree | 7a1410fcc02d16a18f1412a21ce0b79d81f517a2 /lib/CodeGen/SelectionDAG/ScheduleDAGRRList.cpp | |
parent | 66c75aaa028683c389c55b377ee2411b61081677 (diff) |
Change these schedulers to not emit no-ops. It turns out that
the RR scheduler actually does look at latency values, but it
doesn't use a hazard recognizer so it has no way to know when
a no-op is needed, as opposed to just stalling and incrementing
the cycle count.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@59759 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/CodeGen/SelectionDAG/ScheduleDAGRRList.cpp')
-rw-r--r-- | lib/CodeGen/SelectionDAG/ScheduleDAGRRList.cpp | 8 |
1 files changed, 2 insertions, 6 deletions
diff --git a/lib/CodeGen/SelectionDAG/ScheduleDAGRRList.cpp b/lib/CodeGen/SelectionDAG/ScheduleDAGRRList.cpp index 8e9ab44bd0..b75e7f7722 100644 --- a/lib/CodeGen/SelectionDAG/ScheduleDAGRRList.cpp +++ b/lib/CodeGen/SelectionDAG/ScheduleDAGRRList.cpp @@ -1052,9 +1052,7 @@ void ScheduleDAGRRList::ListScheduleBottomUp() { } NotReady.clear(); - if (!CurSU) - Sequence.push_back(0); - else + if (CurSU) ScheduleNodeBottomUp(CurSU, CurCycle); ++CurCycle; } @@ -1152,9 +1150,7 @@ void ScheduleDAGRRList::ListScheduleTopDown() { AvailableQueue->push_all(NotReady); NotReady.clear(); - if (!CurSU) - Sequence.push_back(0); - else + if (CurSU) ScheduleNodeTopDown(CurSU, CurCycle); ++CurCycle; } |