| Index: src/ast/ast.h
|
| diff --git a/src/ast/ast.h b/src/ast/ast.h
|
| index 0ed089f155e0e2980e5c05c60605c60d574d2bcc..fa462f01d65fef171d6eb30954b03005b4ceddf2 100644
|
| --- a/src/ast/ast.h
|
| +++ b/src/ast/ast.h
|
| @@ -129,13 +129,14 @@ AST_NODE_LIST(DEF_FORWARD_DECLARATION)
|
| class FeedbackVectorSlotCache {
|
| public:
|
| explicit FeedbackVectorSlotCache(Zone* zone)
|
| - : hash_map_(base::HashMap::PointersMatch,
|
| + : zone_(zone),
|
| + hash_map_(base::HashMap::PointersMatch,
|
| ZoneHashMap::kDefaultHashMapCapacity,
|
| ZoneAllocationPolicy(zone)) {}
|
|
|
| void Put(Variable* variable, FeedbackVectorSlot slot) {
|
| - ZoneHashMap::Entry* entry =
|
| - hash_map_.LookupOrInsert(variable, ComputePointerHash(variable));
|
| + ZoneHashMap::Entry* entry = hash_map_.LookupOrInsert(
|
| + variable, ComputePointerHash(variable), ZoneAllocationPolicy(zone_));
|
| entry->value = reinterpret_cast<void*>(slot.ToInt());
|
| }
|
|
|
| @@ -144,6 +145,7 @@ class FeedbackVectorSlotCache {
|
| }
|
|
|
| private:
|
| + Zone* zone_;
|
| ZoneHashMap hash_map_;
|
| };
|
|
|
| @@ -1523,7 +1525,7 @@ class AccessorTable
|
| zone_(zone) {}
|
|
|
| Iterator lookup(Literal* literal) {
|
| - Iterator it = find(literal, true);
|
| + Iterator it = find(literal, true, ZoneAllocationPolicy(zone_));
|
| if (it->second == NULL) it->second = new (zone_) ObjectLiteral::Accessors();
|
| return it;
|
| }
|
|
|