Index: src/ast.cc |
diff --git a/src/ast.cc b/src/ast.cc |
index 2077f87d74153ba31e6fc94250a89508c3aeddda..23b680d47f4805dbb2b18a7a4cf3f8c82c6bb485 100644 |
--- a/src/ast.cc |
+++ b/src/ast.cc |
@@ -273,7 +273,8 @@ void ObjectLiteral::CalculateEmitStore(Zone* zone) { |
uint32_t hash = literal->Hash(); |
// If the key of a computed property is in the table, do not emit |
// a store for the property later. |
- if (property->kind() == ObjectLiteral::Property::COMPUTED && |
+ if ((property->kind() == ObjectLiteral::Property::MATERIALIZED_LITERAL || |
+ property->kind() == ObjectLiteral::Property::COMPUTED) && |
table.Lookup(literal, hash, false, allocator) != NULL) { |
property->set_emit_store(false); |
} else { |