Index: src/objects.cc |
diff --git a/src/objects.cc b/src/objects.cc |
index 702d8a222dcdd8ee31d06fec4206eaf3d6445c33..cd897970b9720b554a22313fc10dd05b67c53f02 100644 |
--- a/src/objects.cc |
+++ b/src/objects.cc |
@@ -2350,6 +2350,11 @@ Handle<Map> Map::CopyGeneralizeAllRepresentations(Handle<Map> map, |
unused_property_fields += JSObject::kFieldsAdded; |
} |
new_map->set_unused_property_fields(unused_property_fields); |
+ } else if (details.attributes() != attributes) { |
+ FieldDescriptor d(handle(descriptors->GetKey(modify_index), isolate), |
+ details.field_index(), attributes, |
+ Representation::Tagged()); |
+ descriptors->Replace(modify_index, &d); |
} |
if (FLAG_trace_generalization) { |