Index: src/IceCfg.h |
diff --git a/src/IceCfg.h b/src/IceCfg.h |
index 5f3bfd3fc67b90da0411af9267e3334b0da695de..f452c78a67e67ed6c23cfaf1e18bf150be602e07 100644 |
--- a/src/IceCfg.h |
+++ b/src/IceCfg.h |
@@ -72,6 +72,7 @@ public: |
// Miscellaneous accessors. |
TargetLowering *getTarget() const { return Target.get(); } |
+ Liveness *getLiveness() const { return Live.get(); } |
bool hasComputedFrame() const; |
// Passes over the CFG. |
@@ -80,11 +81,15 @@ public: |
// compute the predecessor edges, in the form of |
// CfgNode::InEdges[]. |
void computePredecessors(); |
+ void renumberInstructions(); |
void placePhiLoads(); |
void placePhiStores(); |
void deletePhis(); |
+ void doAddressOpt(); |
void genCode(); |
void genFrame(); |
+ void liveness(LivenessMode Mode); |
+ bool validateLiveness() const; |
// Manage the CurrentNode field, which is used for validating the |
// Variable::DefNode field during dumping/emitting. |
@@ -139,6 +144,7 @@ private: |
int32_t NextInstNumber; |
VarList Variables; |
VarList Args; // subset of Variables, in argument order |
+ llvm::OwningPtr<Liveness> Live; |
llvm::OwningPtr<TargetLowering> Target; |
// CurrentNode is maintained during dumping/emitting just for |