| Index: src/heap/heap.cc | 
| diff --git a/src/heap/heap.cc b/src/heap/heap.cc | 
| index 86b546940a40e13674804efa90e58d49ada01738..0204451ea09b305a5bcffa812fe2ee56ebd5f985 100644 | 
| --- a/src/heap/heap.cc | 
| +++ b/src/heap/heap.cc | 
| @@ -2722,8 +2722,8 @@ AllocationResult Heap::AllocatePartialMap(InstanceType instance_type, | 
| reinterpret_cast<Map*>(result) | 
| ->set_layout_descriptor(LayoutDescriptor::FastPointerLayout()); | 
| } | 
| +  reinterpret_cast<Map*>(result)->clear_unused(); | 
| reinterpret_cast<Map*>(result)->set_inobject_properties(0); | 
| -  reinterpret_cast<Map*>(result)->set_pre_allocated_property_fields(0); | 
| reinterpret_cast<Map*>(result)->set_unused_property_fields(0); | 
| reinterpret_cast<Map*>(result)->set_bit_field(0); | 
| reinterpret_cast<Map*>(result)->set_bit_field2(0); | 
| @@ -2749,8 +2749,8 @@ AllocationResult Heap::AllocateMap(InstanceType instance_type, | 
| map->set_prototype(null_value(), SKIP_WRITE_BARRIER); | 
| map->set_constructor_or_backpointer(null_value(), SKIP_WRITE_BARRIER); | 
| map->set_instance_size(instance_size); | 
| +  map->clear_unused(); | 
| map->set_inobject_properties(0); | 
| -  map->set_pre_allocated_property_fields(0); | 
| map->set_code_cache(empty_fixed_array(), SKIP_WRITE_BARRIER); | 
| map->set_dependent_code(DependentCode::cast(empty_fixed_array()), | 
| SKIP_WRITE_BARRIER); | 
| @@ -4190,8 +4190,7 @@ void Heap::InitializeJSObjectFromMap(JSObject* obj, FixedArray* properties, | 
|  | 
|  | 
| AllocationResult Heap::AllocateJSObjectFromMap( | 
| -    Map* map, PretenureFlag pretenure, bool allocate_properties, | 
| -    AllocationSite* allocation_site) { | 
| +    Map* map, PretenureFlag pretenure, AllocationSite* allocation_site) { | 
| // JSFunctions should be allocated using AllocateFunction to be | 
| // properly initialized. | 
| DCHECK(map->instance_type() != JS_FUNCTION_TYPE); | 
| @@ -4202,17 +4201,7 @@ AllocationResult Heap::AllocateJSObjectFromMap( | 
| DCHECK(map->instance_type() != JS_BUILTINS_OBJECT_TYPE); | 
|  | 
| // Allocate the backing storage for the properties. | 
| -  FixedArray* properties; | 
| -  if (allocate_properties) { | 
| -    int prop_size = map->InitialPropertiesLength(); | 
| -    DCHECK(prop_size >= 0); | 
| -    { | 
| -      AllocationResult allocation = AllocateFixedArray(prop_size, pretenure); | 
| -      if (!allocation.To(&properties)) return allocation; | 
| -    } | 
| -  } else { | 
| -    properties = empty_fixed_array(); | 
| -  } | 
| +  FixedArray* properties = empty_fixed_array(); | 
|  | 
| // Allocate the JSObject. | 
| int size = map->instance_size(); | 
| @@ -4236,7 +4225,7 @@ AllocationResult Heap::AllocateJSObject(JSFunction* constructor, | 
|  | 
| // Allocate the object based on the constructors initial map. | 
| AllocationResult allocation = AllocateJSObjectFromMap( | 
| -      constructor->initial_map(), pretenure, true, allocation_site); | 
| +      constructor->initial_map(), pretenure, allocation_site); | 
| #ifdef DEBUG | 
| // Make sure result is NOT a global object if valid. | 
| HeapObject* obj; | 
|  |