Chromium Code Reviews| 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); |
| }; |