Index: src/ic.cc |
diff --git a/src/ic.cc b/src/ic.cc |
index 2c83d569804a22ebc2eadeca8c52b12f1cf0f7d5..557a48381c2fa6fc94c8e87616abd3b47e52a1b1 100644 |
--- a/src/ic.cc |
+++ b/src/ic.cc |
@@ -1633,7 +1633,8 @@ Handle<Code> StoreIC::CompileHandler(LookupResult* lookup, |
Handle<JSObject> receiver = Handle<JSObject>::cast(object); |
Handle<JSObject> holder(lookup->holder()); |
- StoreStubCompiler compiler(isolate(), strict_mode(), kind()); |
+ // Handlers do not use strict mode. |
+ StoreStubCompiler compiler(isolate(), kNonStrictMode, kind()); |
switch (lookup->type()) { |
case FIELD: |
return compiler.CompileStoreField(receiver, lookup, name); |
@@ -1661,7 +1662,7 @@ Handle<Code> StoreIC::CompileHandler(LookupResult* lookup, |
Handle<GlobalObject> global = Handle<GlobalObject>::cast(receiver); |
Handle<PropertyCell> cell(global->GetPropertyCell(lookup), isolate()); |
Handle<Type> union_type = PropertyCell::UpdatedType(cell, value); |
- StoreGlobalStub stub(strict_mode(), union_type->IsConstant()); |
+ StoreGlobalStub stub(union_type->IsConstant()); |
Handle<Code> code = stub.GetCodeCopyFromTemplate( |
isolate(), receiver->map(), *cell); |
@@ -1670,9 +1671,7 @@ Handle<Code> StoreIC::CompileHandler(LookupResult* lookup, |
return code; |
} |
ASSERT(holder.is_identical_to(receiver)); |
- return strict_mode() == kStrictMode |
- ? isolate()->builtins()->StoreIC_Normal_Strict() |
- : isolate()->builtins()->StoreIC_Normal(); |
+ return isolate()->builtins()->StoreIC_Normal(); |
case CALLBACKS: { |
if (kind() == Code::KEYED_STORE_IC) break; |
Handle<Object> callback(lookup->GetCallbackObject(), isolate()); |