| Index: src/type-info.cc
 | 
| diff --git a/src/type-info.cc b/src/type-info.cc
 | 
| index 61af125c47c22f7fa9ead72f69b4be9a4cab67d6..058ad4cf8f11480f07776c72e9489393e32b68ca 100644
 | 
| --- a/src/type-info.cc
 | 
| +++ b/src/type-info.cc
 | 
| @@ -281,7 +281,8 @@ void TypeFeedbackOracle::PropertyReceiverTypes(FeedbackVectorSlot slot,
 | 
|    if (!slot.IsInvalid()) {
 | 
|      LoadICNexus nexus(feedback_vector_, slot);
 | 
|      Code::Flags flags = Code::ComputeHandlerFlags(Code::LOAD_IC);
 | 
| -    CollectReceiverTypes(&nexus, name, flags, receiver_types);
 | 
| +    CollectReceiverTypes(isolate()->load_stub_cache(), &nexus, name, flags,
 | 
| +                         receiver_types);
 | 
|    }
 | 
|  }
 | 
|  
 | 
| @@ -307,7 +308,8 @@ void TypeFeedbackOracle::AssignmentReceiverTypes(FeedbackVectorSlot slot,
 | 
|                                                   SmallMapList* receiver_types) {
 | 
|    receiver_types->Clear();
 | 
|    Code::Flags flags = Code::ComputeHandlerFlags(Code::STORE_IC);
 | 
| -  CollectReceiverTypes(slot, name, flags, receiver_types);
 | 
| +  CollectReceiverTypes(isolate()->store_stub_cache(), slot, name, flags,
 | 
| +                       receiver_types);
 | 
|  }
 | 
|  
 | 
|  
 | 
| @@ -326,24 +328,25 @@ void TypeFeedbackOracle::CountReceiverTypes(FeedbackVectorSlot slot,
 | 
|    if (!slot.IsInvalid()) CollectReceiverTypes(slot, receiver_types);
 | 
|  }
 | 
|  
 | 
| -
 | 
| -void TypeFeedbackOracle::CollectReceiverTypes(FeedbackVectorSlot slot,
 | 
| +void TypeFeedbackOracle::CollectReceiverTypes(StubCache* stub_cache,
 | 
| +                                              FeedbackVectorSlot slot,
 | 
|                                                Handle<Name> name,
 | 
|                                                Code::Flags flags,
 | 
|                                                SmallMapList* types) {
 | 
|    StoreICNexus nexus(feedback_vector_, slot);
 | 
| -  CollectReceiverTypes(&nexus, name, flags, types);
 | 
| +  CollectReceiverTypes(stub_cache, &nexus, name, flags, types);
 | 
|  }
 | 
|  
 | 
| -void TypeFeedbackOracle::CollectReceiverTypes(FeedbackNexus* nexus,
 | 
| +void TypeFeedbackOracle::CollectReceiverTypes(StubCache* stub_cache,
 | 
| +                                              FeedbackNexus* nexus,
 | 
|                                                Handle<Name> name,
 | 
|                                                Code::Flags flags,
 | 
|                                                SmallMapList* types) {
 | 
|    if (FLAG_collect_megamorphic_maps_from_stub_cache &&
 | 
|        nexus->ic_state() == MEGAMORPHIC) {
 | 
|      types->Reserve(4, zone());
 | 
| -    isolate()->stub_cache()->CollectMatchingMaps(
 | 
| -        types, name, flags, native_context_, zone());
 | 
| +    stub_cache->CollectMatchingMaps(types, name, flags, native_context_,
 | 
| +                                    zone());
 | 
|    } else {
 | 
|      CollectReceiverTypes(nexus, types);
 | 
|    }
 | 
| 
 |