| Index: src/objects.cc
 | 
| diff --git a/src/objects.cc b/src/objects.cc
 | 
| index a517615d4b8f0c669172b834caa65f003b6c4b29..bed2d0af335247cb94111a633083333b3430d201 100644
 | 
| --- a/src/objects.cc
 | 
| +++ b/src/objects.cc
 | 
| @@ -6784,8 +6784,9 @@ Handle<Map> Map::ShareDescriptor(Handle<Map> map,
 | 
|      if (old_size == 0) {
 | 
|        descriptors = DescriptorArray::Allocate(map->GetIsolate(), 0, 1);
 | 
|      } else {
 | 
| -      EnsureDescriptorSlack(
 | 
| -          map, SlackForArraySize(old_size, kMaxNumberOfDescriptors));
 | 
| +      int slack = SlackForArraySize(map->is_prototype_map(), old_size,
 | 
| +                                    kMaxNumberOfDescriptors);
 | 
| +      EnsureDescriptorSlack(map, slack);
 | 
|        descriptors = handle(map->instance_descriptors());
 | 
|      }
 | 
|    }
 | 
| 
 |