summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Target/SparcV9/ModuloScheduling/ModuloScheduling.h
diff options
context:
space:
mode:
authorTanya Lattner <tonic@nondot.org>2005-03-29 20:35:10 +0000
committerTanya Lattner <tonic@nondot.org>2005-03-29 20:35:10 +0000
commit91964490e2e208d3bd58767e5a487a532e3a4f66 (patch)
treea36839c67a69cca7692d68eb8ca43ac0881bcea0 /llvm/lib/Target/SparcV9/ModuloScheduling/ModuloScheduling.h
parent6e19b21e303277518d10ff6b31506986f273ac6a (diff)
downloadbcm5719-llvm-91964490e2e208d3bd58767e5a487a532e3a4f66.tar.gz
bcm5719-llvm-91964490e2e208d3bd58767e5a487a532e3a4f66.zip
Compare dependence analysis with llvm instructions versus machine instrutions. the problem with using machine instructions and alias analysis is that aa does not handle tmp instructions.
llvm-svn: 20931
Diffstat (limited to 'llvm/lib/Target/SparcV9/ModuloScheduling/ModuloScheduling.h')
-rw-r--r--llvm/lib/Target/SparcV9/ModuloScheduling/ModuloScheduling.h6
1 files changed, 5 insertions, 1 deletions
diff --git a/llvm/lib/Target/SparcV9/ModuloScheduling/ModuloScheduling.h b/llvm/lib/Target/SparcV9/ModuloScheduling/ModuloScheduling.h
index b36c5b2c20a..b2dba19cb21 100644
--- a/llvm/lib/Target/SparcV9/ModuloScheduling/ModuloScheduling.h
+++ b/llvm/lib/Target/SparcV9/ModuloScheduling/ModuloScheduling.h
@@ -17,7 +17,7 @@
#include "MSSchedule.h"
#include "llvm/Function.h"
#include "llvm/Pass.h"
-#include "llvm/Analysis/AliasAnalysis.h"
+#include "DependenceAnalyzer.h"
#include "llvm/Target/TargetData.h"
#include <set>
@@ -47,6 +47,9 @@ namespace llvm {
//Map to hold list of instructions associate to the induction var for each BB
std::map<const MachineBasicBlock*, std::map<const MachineInstr*, unsigned> > indVarInstrs;
+ //Map to hold machine to llvm instrs for each valid BB
+ std::map<const MachineBasicBlock*, std::map<MachineInstr*, Instruction*> > machineTollvm;
+
//LLVM Instruction we know we can add TmpInstructions to its MCFI
Instruction *defaultInst;
@@ -145,6 +148,7 @@ namespace llvm {
// getAnalysisUsage
virtual void getAnalysisUsage(AnalysisUsage &AU) const {
+ AU.addRequired<DependenceAnalyzer>();
AU.addRequired<AliasAnalysis>();
AU.addRequired<TargetData>();
}
OpenPOWER on IntegriCloud