| Index: src/ic/ic.cc
|
| diff --git a/src/ic/ic.cc b/src/ic/ic.cc
|
| index b826b3478f1adfc8946fe1de8e89fcbf22297172..fd7240c800ccaa7ee262bf5f30e5e7383cfedfa1 100644
|
| --- a/src/ic/ic.cc
|
| +++ b/src/ic/ic.cc
|
| @@ -1198,7 +1198,6 @@ Handle<Code> LoadIC::CompileHandler(LookupIterator* lookup,
|
| int index = lookup->GetAccessorIndex();
|
| Handle<Code> code = compiler.CompileLoadCallback(
|
| lookup->name(), call_optimization, index);
|
| - if (FLAG_runtime_call_stats) return slow_stub();
|
| return code;
|
| }
|
| TRACE_HANDLER_STATS(isolate(), LoadIC_LoadViaGetter);
|
| @@ -1218,7 +1217,6 @@ Handle<Code> LoadIC::CompileHandler(LookupIterator* lookup,
|
| TRACE_HANDLER_STATS(isolate(), LoadIC_LoadCallback);
|
| NamedLoadHandlerCompiler compiler(isolate(), map, holder, cache_holder);
|
| Handle<Code> code = compiler.CompileLoadCallback(lookup->name(), info);
|
| - if (FLAG_runtime_call_stats) return slow_stub();
|
| return code;
|
| }
|
| UNREACHABLE();
|
| @@ -1565,11 +1563,6 @@ Handle<Code> StoreIC::initialize_stub_in_optimized_code(
|
| return stub.GetCode();
|
| }
|
|
|
| -Handle<Code> StoreIC::slow_stub() const {
|
| - return isolate()->builtins()->StoreIC_Slow();
|
| -}
|
| -
|
| -
|
| void StoreIC::UpdateCaches(LookupIterator* lookup, Handle<Object> value,
|
| JSReceiver::StoreFromKeyed store_mode) {
|
| if (state() == UNINITIALIZED) {
|
| @@ -1788,7 +1781,6 @@ Handle<Code> StoreIC::CompileHandler(LookupIterator* lookup,
|
| NamedStoreHandlerCompiler compiler(isolate(), receiver_map(), holder);
|
| Handle<Code> code = compiler.CompileStoreCallback(
|
| receiver, lookup->name(), info, language_mode());
|
| - if (FLAG_runtime_call_stats) return slow_stub();
|
| return code;
|
| } else {
|
| DCHECK(accessors->IsAccessorPair());
|
| @@ -1803,7 +1795,6 @@ Handle<Code> StoreIC::CompileHandler(LookupIterator* lookup,
|
| Handle<Code> code = compiler.CompileStoreCallback(
|
| receiver, lookup->name(), call_optimization,
|
| lookup->GetAccessorIndex());
|
| - if (FLAG_runtime_call_stats) return slow_stub();
|
| return code;
|
| }
|
| TRACE_HANDLER_STATS(isolate(), StoreIC_StoreViaSetter);
|
| @@ -2743,6 +2734,12 @@ RUNTIME_FUNCTION(Runtime_StoreCallbackProperty) {
|
| CONVERT_LANGUAGE_MODE_ARG_CHECKED(language_mode, 5);
|
| HandleScope scope(isolate);
|
|
|
| + if (FLAG_runtime_call_stats) {
|
| + RETURN_RESULT_OR_FAILURE(
|
| + isolate, Runtime::SetObjectProperty(isolate, receiver, name, value,
|
| + language_mode));
|
| + }
|
| +
|
| Handle<AccessorInfo> callback(
|
| callback_or_cell->IsWeakCell()
|
| ? AccessorInfo::cast(WeakCell::cast(*callback_or_cell)->value())
|
|
|