| Index: src/compiler/escape-analysis.h
|
| diff --git a/src/compiler/escape-analysis.h b/src/compiler/escape-analysis.h
|
| index c40684bb31c1f7312904b87f56e85502a18dfc0d..25c2dbd7fbd78eff9cc3828dd94e94097e6134c3 100644
|
| --- a/src/compiler/escape-analysis.h
|
| +++ b/src/compiler/escape-analysis.h
|
| @@ -76,28 +76,8 @@ class EscapeStatusAnalysis {
|
| DEFINE_OPERATORS_FOR_FLAGS(EscapeStatusAnalysis::EscapeStatusFlags)
|
|
|
|
|
| -class MergeCache {
|
| - public:
|
| - explicit MergeCache(Zone* zone)
|
| - : states_(zone), objects_(zone), fields_(zone) {
|
| - states_.reserve(4);
|
| - objects_.reserve(4);
|
| - fields_.reserve(4);
|
| - }
|
| - ZoneVector<VirtualState*>& states() { return states_; }
|
| - ZoneVector<VirtualObject*>& objects() { return objects_; }
|
| - ZoneVector<Node*>& fields() { return fields_; }
|
| - void Clear() {
|
| - states_.clear();
|
| - objects_.clear();
|
| - fields_.clear();
|
| - }
|
| -
|
| - private:
|
| - ZoneVector<VirtualState*> states_;
|
| - ZoneVector<VirtualObject*> objects_;
|
| - ZoneVector<Node*> fields_;
|
| -};
|
| +// Forward Declaration.
|
| +class MergeCache;
|
|
|
|
|
| // EscapeObjectAnalysis simulates stores to determine values of loads if
|
| @@ -161,7 +141,7 @@ class EscapeAnalysis {
|
| ZoneVector<VirtualState*> virtual_states_;
|
| ZoneVector<Node*> replacements_;
|
| EscapeStatusAnalysis escape_status_;
|
| - MergeCache cache_;
|
| + MergeCache* cache_;
|
|
|
| DISALLOW_COPY_AND_ASSIGN(EscapeAnalysis);
|
| };
|
|
|