| Index: src/ic/ic.cc
|
| diff --git a/src/ic/ic.cc b/src/ic/ic.cc
|
| index 98d86b5e39f41e97b45bc301e92e5768ba4a2616..e934a89a446902d1f053f912fa61dcb12fd5813e 100644
|
| --- a/src/ic/ic.cc
|
| +++ b/src/ic/ic.cc
|
| @@ -1672,11 +1672,10 @@ Handle<Code> KeyedStoreIC::StoreElementStub(Handle<JSObject> receiver,
|
| return generic_stub();
|
| }
|
|
|
| - // If the maximum number of receiver maps has been exceeded, use the generic
|
| - // version of the IC.
|
| + // If the maximum number of receiver maps has been exceeded, use the
|
| + // megamorphic version of the IC.
|
| if (target_receiver_maps.length() > kMaxKeyedPolymorphism) {
|
| - TRACE_GENERIC_IC(isolate(), "KeyedStoreIC", "max polymorph exceeded");
|
| - return generic_stub();
|
| + return megamorphic_stub();
|
| }
|
|
|
| // Make sure all polymorphic handlers have the same store mode, otherwise the
|
| @@ -1941,6 +1940,13 @@ MaybeHandle<Object> KeyedStoreIC::Store(Handle<Object> object,
|
|
|
|
|
| // static
|
| +void KeyedStoreIC::GenerateGeneric(MacroAssembler* masm,
|
| + StrictMode strict_mode) {
|
| + PropertyICCompiler::GenerateRuntimeSetProperty(masm, strict_mode);
|
| +}
|
| +
|
| +
|
| +// static
|
| void CallIC::OnTypeFeedbackChanged(Isolate* isolate, Code* host,
|
| TypeFeedbackVector* vector, State old_state,
|
| State new_state) {
|
|
|