aboutsummaryrefslogtreecommitdiff
path: root/lib/Target/SparcV9/InstrSched/SchedPriorities.cpp
diff options
context:
space:
mode:
authorChris Lattner <sabre@nondot.org>2002-02-04 20:02:16 +0000
committerChris Lattner <sabre@nondot.org>2002-02-04 20:02:16 +0000
commit9adb7ad457b38de13dd16b86a90f645695dae5a0 (patch)
tree3fe9ccc410f25040f06fa803485bea944d2d0b27 /lib/Target/SparcV9/InstrSched/SchedPriorities.cpp
parent4fd2dbbf1dacf098e97fd358bb2b3f48000703a8 (diff)
* The itf exposed by InstrScheduling is now a single function to create the right pass
* InstructionScheduling is now a real pass * InstrSched _uses_ LiveVar analysis, instead of creating it's own copy many times through a loop. In this was LiveVarAnalysis is actually even SHARED by Register allocation. * SchedPriorities is now passed the live var information in git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1700 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Target/SparcV9/InstrSched/SchedPriorities.cpp')
-rw-r--r--lib/Target/SparcV9/InstrSched/SchedPriorities.cpp17
1 files changed, 7 insertions, 10 deletions
diff --git a/lib/Target/SparcV9/InstrSched/SchedPriorities.cpp b/lib/Target/SparcV9/InstrSched/SchedPriorities.cpp
index 8cde252115..9ed6cb9e47 100644
--- a/lib/Target/SparcV9/InstrSched/SchedPriorities.cpp
+++ b/lib/Target/SparcV9/InstrSched/SchedPriorities.cpp
@@ -19,21 +19,18 @@
//**************************************************************************/
#include "SchedPriorities.h"
+#include "llvm/Analysis/LiveVar/MethodLiveVarInfo.h"
#include "Support/PostOrderIterator.h"
#include <iostream>
using std::cerr;
-SchedPriorities::SchedPriorities(const Method* method,
- const SchedGraph* _graph)
- : curTime(0),
- graph(_graph),
- methodLiveVarInfo(method), // expensive!
- nodeDelayVec(_graph->getNumNodes(), INVALID_LATENCY), // make errors obvious
- earliestForNode(_graph->getNumNodes(), 0),
+SchedPriorities::SchedPriorities(const Method *method, const SchedGraph *G,
+ MethodLiveVarInfo &LVI)
+ : curTime(0), graph(G), methodLiveVarInfo(LVI),
+ nodeDelayVec(G->getNumNodes(), INVALID_LATENCY), // make errors obvious
+ earliestForNode(G->getNumNodes(), 0),
earliestReadyTime(0),
- nextToTry(candsAsHeap.begin())
-{
- methodLiveVarInfo.analyze();
+ nextToTry(candsAsHeap.begin()) {
computeDelays(graph);
}