Index: src/ic/ic.cc |
diff --git a/src/ic/ic.cc b/src/ic/ic.cc |
index d036b343d83c90b602686287c463bc4b6855b2e0..5a04ea25b07e24e26c0032e3027670a82275708a 100644 |
--- a/src/ic/ic.cc |
+++ b/src/ic/ic.cc |
@@ -893,10 +893,10 @@ Handle<Object> LoadIC::SimpleLoadFromPrototype(Handle<Map> receiver_map, |
Map::GetOrCreatePrototypeChainValidityCell(receiver_map, isolate()); |
DCHECK(!validity_cell.is_null()); |
- Factory* factory = isolate()->factory(); |
- |
- Handle<WeakCell> holder_cell = factory->NewWeakCell(holder); |
- return factory->NewTuple3(validity_cell, holder_cell, smi_handler); |
+ Handle<WeakCell> holder_cell = |
+ Map::GetOrCreatePrototypeWeakCell(holder, isolate()); |
+ return isolate()->factory()->NewTuple3(validity_cell, holder_cell, |
+ smi_handler); |
} |
bool IsCompatibleReceiver(LookupIterator* lookup, Handle<Map> receiver_map) { |