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