Index: src/ic.cc |
diff --git a/src/ic.cc b/src/ic.cc |
index 9724c446e1f4d8e640ed55c204b9a7f7b2224c37..7211ad91679dc199abc4b704406731efa13a10c7 100644 |
--- a/src/ic.cc |
+++ b/src/ic.cc |
@@ -1360,7 +1360,8 @@ Handle<Code> LoadIC::ComputeLoadHandler(LookupResult* lookup, |
Handle<JSFunction> function = Handle<JSFunction>::cast(getter); |
CallOptimization call_optimization(function); |
if (call_optimization.is_simple_api_call() && |
- call_optimization.IsCompatibleReceiver(*receiver)) { |
+ call_optimization.IsCompatibleReceiver(*receiver) && |
+ FLAG_js_accessor_ics) { |
return isolate()->stub_cache()->ComputeLoadCallback( |
name, receiver, holder, call_optimization); |
} |
@@ -1568,7 +1569,8 @@ Handle<Code> KeyedLoadIC::ComputeLoadHandler(LookupResult* lookup, |
Handle<JSFunction> function = Handle<JSFunction>::cast(getter); |
CallOptimization call_optimization(function); |
if (call_optimization.is_simple_api_call() && |
- call_optimization.IsCompatibleReceiver(*receiver)) { |
+ call_optimization.IsCompatibleReceiver(*receiver) && |
+ FLAG_js_accessor_ics) { |
return isolate()->stub_cache()->ComputeKeyedLoadCallback( |
name, receiver, holder, call_optimization); |
} |
@@ -1834,7 +1836,8 @@ Handle<Code> StoreIC::ComputeStoreMonomorphic(LookupResult* lookup, |
Handle<JSFunction> function = Handle<JSFunction>::cast(setter); |
CallOptimization call_optimization(function); |
if (call_optimization.is_simple_api_call() && |
- call_optimization.IsCompatibleReceiver(*receiver)) { |
+ call_optimization.IsCompatibleReceiver(*receiver) && |
+ FLAG_js_accessor_ics) { |
return isolate()->stub_cache()->ComputeStoreCallback( |
name, receiver, holder, call_optimization, strict_mode); |
} |