| 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());
|
|
|