aboutsummaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
Diffstat (limited to 'lib')
-rw-r--r--lib/CodeGen/RegAlloc/LiveRangeInfo.h8
-rw-r--r--lib/CodeGen/RegAlloc/PhyRegAlloc.h1
-rw-r--r--lib/CodeGen/RegAlloc/RegClass.h1
-rw-r--r--lib/Target/SparcV9/RegAlloc/LiveRangeInfo.h8
-rw-r--r--lib/Target/SparcV9/RegAlloc/PhyRegAlloc.h1
-rw-r--r--lib/Target/SparcV9/RegAlloc/RegClass.h1
6 files changed, 18 insertions, 2 deletions
diff --git a/lib/CodeGen/RegAlloc/LiveRangeInfo.h b/lib/CodeGen/RegAlloc/LiveRangeInfo.h
index 9d386c1d98..da5601790a 100644
--- a/lib/CodeGen/RegAlloc/LiveRangeInfo.h
+++ b/lib/CodeGen/RegAlloc/LiveRangeInfo.h
@@ -54,6 +54,10 @@ private:
LiveRangeMapType LiveRangeMap; // A map from Value * to LiveRange *
// created by constructLiveRanges
+ const TargetMachine& TM; // target machine description
+ vector<RegClass *> & RegClassList;// a vector containing register classess
+
+
void unionAndUpdateLRs(LiveRange *L1, LiveRange *L2);
void addInterference(const Instruction *const Inst,
@@ -62,7 +66,9 @@ private:
public:
- LiveRangeInfo(const Method *const M);
+ LiveRangeInfo(const Method *const M,
+ const TargetMachine& tm,
+ vector<RegClass *> & RCList);
void constructLiveRanges();
diff --git a/lib/CodeGen/RegAlloc/PhyRegAlloc.h b/lib/CodeGen/RegAlloc/PhyRegAlloc.h
index f21581dd6e..eacb6480ae 100644
--- a/lib/CodeGen/RegAlloc/PhyRegAlloc.h
+++ b/lib/CodeGen/RegAlloc/PhyRegAlloc.h
@@ -70,6 +70,7 @@ class PhyRegAlloc
AddedInstrMapType AddedInstrMap; // to store instrns added in this phase
+
//------- private methods ---------------------------------------------------
void addInterference(const Value *const Def, const LiveVarSet *const LVSet,
diff --git a/lib/CodeGen/RegAlloc/RegClass.h b/lib/CodeGen/RegAlloc/RegClass.h
index a8fc0ae1bc..723443da9a 100644
--- a/lib/CodeGen/RegAlloc/RegClass.h
+++ b/lib/CodeGen/RegAlloc/RegClass.h
@@ -22,6 +22,7 @@
#include "llvm/CodeGen/IGNode.h"
#include "llvm/CodeGen/InterferenceGraph.h"
#include "llvm/Target/Machine.h"
+#include "llvm/Target/RegInfo.h"
#include <stack>
typedef vector<unsigned int> ReservedColorListType;
diff --git a/lib/Target/SparcV9/RegAlloc/LiveRangeInfo.h b/lib/Target/SparcV9/RegAlloc/LiveRangeInfo.h
index 9d386c1d98..da5601790a 100644
--- a/lib/Target/SparcV9/RegAlloc/LiveRangeInfo.h
+++ b/lib/Target/SparcV9/RegAlloc/LiveRangeInfo.h
@@ -54,6 +54,10 @@ private:
LiveRangeMapType LiveRangeMap; // A map from Value * to LiveRange *
// created by constructLiveRanges
+ const TargetMachine& TM; // target machine description
+ vector<RegClass *> & RegClassList;// a vector containing register classess
+
+
void unionAndUpdateLRs(LiveRange *L1, LiveRange *L2);
void addInterference(const Instruction *const Inst,
@@ -62,7 +66,9 @@ private:
public:
- LiveRangeInfo(const Method *const M);
+ LiveRangeInfo(const Method *const M,
+ const TargetMachine& tm,
+ vector<RegClass *> & RCList);
void constructLiveRanges();
diff --git a/lib/Target/SparcV9/RegAlloc/PhyRegAlloc.h b/lib/Target/SparcV9/RegAlloc/PhyRegAlloc.h
index f21581dd6e..eacb6480ae 100644
--- a/lib/Target/SparcV9/RegAlloc/PhyRegAlloc.h
+++ b/lib/Target/SparcV9/RegAlloc/PhyRegAlloc.h
@@ -70,6 +70,7 @@ class PhyRegAlloc
AddedInstrMapType AddedInstrMap; // to store instrns added in this phase
+
//------- private methods ---------------------------------------------------
void addInterference(const Value *const Def, const LiveVarSet *const LVSet,
diff --git a/lib/Target/SparcV9/RegAlloc/RegClass.h b/lib/Target/SparcV9/RegAlloc/RegClass.h
index a8fc0ae1bc..723443da9a 100644
--- a/lib/Target/SparcV9/RegAlloc/RegClass.h
+++ b/lib/Target/SparcV9/RegAlloc/RegClass.h
@@ -22,6 +22,7 @@
#include "llvm/CodeGen/IGNode.h"
#include "llvm/CodeGen/InterferenceGraph.h"
#include "llvm/Target/Machine.h"
+#include "llvm/Target/RegInfo.h"
#include <stack>
typedef vector<unsigned int> ReservedColorListType;