Index: src/hydrogen.h |
diff --git a/src/hydrogen.h b/src/hydrogen.h |
index fdd2f75779d97111a3134f6db8681e565e0a24c5..84dbae1b6f8f88ce4795d8869612df651ef9bb15 100644 |
--- a/src/hydrogen.h |
+++ b/src/hydrogen.h |
@@ -284,7 +284,6 @@ class HGraph: public ZoneObject { |
void MarkDeoptimizeOnUndefined(); |
void ComputeMinusZeroChecks(); |
void ComputeSafeUint32Operations(); |
- void GlobalValueNumbering(); |
bool ProcessArgumentsObject(); |
void EliminateRedundantPhis(); |
void Canonicalize(); |
@@ -428,6 +427,8 @@ class HGraph: public ZoneObject { |
HConstant* GetConstant(SetOncePointer<HConstant>* pointer, |
int32_t integer_value); |
+ template<typename Phase> |
+ void Run() { Phase phase(this, info()->phase_zone()); phase.Run(); } |
danno
2013/06/25 15:20:54
Isn't this from another CL?
Benedikt Meurer
2013/06/27 08:20:04
Done.
|
void MarkLive(HValue* ref, HValue* instr, ZoneList<HValue*>* worklist); |
void MarkLiveInstructions(); |
void RemoveDeadInstructions(); |
@@ -1957,13 +1958,20 @@ class HStatistics: public Malloced { |
class HPhase : public CompilationPhase { |
public: |
+ // TODO(bmeurer) Remove this constructor once all |
+ // Hydrogen phases have been migrated |
HPhase(const char* name, HGraph* graph) |
: CompilationPhase(name, graph->isolate(), graph->zone()), |
graph_(graph) { } |
+ HPhase(const char* name, HGraph* graph, Zone* zone); |
danno
2013/06/25 15:20:54
again, why do you need to pass the zone in? Either
Benedikt Meurer
2013/06/27 08:20:04
Done.
|
~HPhase(); |
+ protected: |
+ HGraph* graph() const { return graph_; } |
+ |
private: |
HGraph* graph_; |
+ unsigned graph_zone_start_allocation_size_; |
DISALLOW_COPY_AND_ASSIGN(HPhase); |
}; |