diff options
author | Tanya Lattner <tonic@nondot.org> | 2004-05-26 06:27:18 +0000 |
---|---|---|
committer | Tanya Lattner <tonic@nondot.org> | 2004-05-26 06:27:18 +0000 |
commit | a066df6bd75e021fb72dbf6ec873c8a0667e165f (patch) | |
tree | e13269b6a49e4403772ddc10edfe8fd4939c8452 /llvm/lib/CodeGen/ModuloScheduling/ModuloScheduling.h | |
parent | 230deea60f0ce172dda03d7803a6d3bd851cdba9 (diff) | |
download | bcm5719-llvm-a066df6bd75e021fb72dbf6ec873c8a0667e165f.tar.gz bcm5719-llvm-a066df6bd75e021fb72dbf6ec873c8a0667e165f.zip |
Updating my cvs versions. THis is still in progress and much will be changed.
llvm-svn: 13782
Diffstat (limited to 'llvm/lib/CodeGen/ModuloScheduling/ModuloScheduling.h')
-rw-r--r-- | llvm/lib/CodeGen/ModuloScheduling/ModuloScheduling.h | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/llvm/lib/CodeGen/ModuloScheduling/ModuloScheduling.h b/llvm/lib/CodeGen/ModuloScheduling/ModuloScheduling.h index b573b104868..62abc7c5286 100644 --- a/llvm/lib/CodeGen/ModuloScheduling/ModuloScheduling.h +++ b/llvm/lib/CodeGen/ModuloScheduling/ModuloScheduling.h @@ -14,6 +14,7 @@ #define LLVM_MODULOSCHEDULING_H #include "MSchedGraph.h" +#include "MSSchedule.h" #include "llvm/Function.h" #include "llvm/Pass.h" #include <set> @@ -54,7 +55,7 @@ namespace llvm { std::vector<MSchedGraphNode*> FinalNodeOrder; //Schedule table, key is the cycle number and the vector is resource, node pairs - std::map<unsigned, std::vector<std::pair<unsigned, std::vector<MSchedGraphNode*> > > > schedule; + MSSchedule schedule; //Current initiation interval int II; @@ -87,6 +88,12 @@ namespace llvm { void predIntersect(std::vector<MSchedGraphNode*> &CurrentSet, std::vector<MSchedGraphNode*> &IntersectResult); void succIntersect(std::vector<MSchedGraphNode*> &CurrentSet, std::vector<MSchedGraphNode*> &IntersectResult); + + void reconstructLoop(const MachineBasicBlock*); + + //void saveValue(const MachineInstr*, const std::set<Value*>&, std::vector<Value*>*); + + void writePrologue(std::vector<MachineBasicBlock *> &prologues, MachineBasicBlock *origBB, std::vector<BasicBlock*> &llvm_prologues); public: ModuloSchedulingPass(TargetMachine &targ) : target(targ) {} |