| Index: src/stub-cache.h
 | 
| diff --git a/src/stub-cache.h b/src/stub-cache.h
 | 
| index 4638da2ad72da5c2702647384871415bf1aa35fb..6927076c16201ff25e87f66d8b2baa023852c2b6 100644
 | 
| --- a/src/stub-cache.h
 | 
| +++ b/src/stub-cache.h
 | 
| @@ -143,27 +143,27 @@ class StubCache : public AllStatic {
 | 
|        JSObject* receiver,
 | 
|        int field_index,
 | 
|        Map* transition,
 | 
| -      Code::ExtraICState extra_ic_state);
 | 
| +      StrictModeFlag strict_mode);
 | 
|  
 | 
|    MUST_USE_RESULT static MaybeObject* ComputeStoreNormal(
 | 
| -      Code::ExtraICState extra_ic_state);
 | 
| +      StrictModeFlag strict_mode);
 | 
|  
 | 
|    MUST_USE_RESULT static MaybeObject* ComputeStoreGlobal(
 | 
|        String* name,
 | 
|        GlobalObject* receiver,
 | 
|        JSGlobalPropertyCell* cell,
 | 
| -      Code::ExtraICState extra_ic_state);
 | 
| +      StrictModeFlag strict_mode);
 | 
|  
 | 
|    MUST_USE_RESULT static MaybeObject* ComputeStoreCallback(
 | 
|        String* name,
 | 
|        JSObject* receiver,
 | 
|        AccessorInfo* callback,
 | 
| -      Code::ExtraICState extra_ic_state);
 | 
| +      StrictModeFlag strict_mode);
 | 
|  
 | 
|    MUST_USE_RESULT static MaybeObject* ComputeStoreInterceptor(
 | 
|        String* name,
 | 
|        JSObject* receiver,
 | 
| -      Code::ExtraICState extra_ic_state);
 | 
| +      StrictModeFlag strict_mode);
 | 
|  
 | 
|    // ---
 | 
|  
 | 
| @@ -171,17 +171,21 @@ class StubCache : public AllStatic {
 | 
|        String* name,
 | 
|        JSObject* receiver,
 | 
|        int field_index,
 | 
| -      Map* transition = NULL);
 | 
| +      Map* transition,
 | 
| +      StrictModeFlag strict_mode);
 | 
|  
 | 
|    MUST_USE_RESULT static MaybeObject* ComputeKeyedStoreSpecialized(
 | 
| -      JSObject* receiver);
 | 
| +      JSObject* receiver,
 | 
| +      StrictModeFlag strict_mode);
 | 
|  
 | 
|    MUST_USE_RESULT static MaybeObject* ComputeKeyedStorePixelArray(
 | 
| -      JSObject* receiver);
 | 
| +      JSObject* receiver,
 | 
| +      StrictModeFlag strict_mode);
 | 
|  
 | 
|    MUST_USE_RESULT static MaybeObject* ComputeKeyedLoadOrStoreExternalArray(
 | 
|        JSObject* receiver,
 | 
| -      bool is_store);
 | 
| +      bool is_store,
 | 
| +      StrictModeFlag strict_mode);
 | 
|  
 | 
|    // ---
 | 
|  
 | 
| @@ -628,8 +632,8 @@ class KeyedLoadStubCompiler: public StubCompiler {
 | 
|  
 | 
|  class StoreStubCompiler: public StubCompiler {
 | 
|   public:
 | 
| -  explicit StoreStubCompiler(Code::ExtraICState extra_ic_state)
 | 
| -    : extra_ic_state_(extra_ic_state) { }
 | 
| +  explicit StoreStubCompiler(StrictModeFlag strict_mode)
 | 
| +    : strict_mode_(strict_mode) { }
 | 
|  
 | 
|    MUST_USE_RESULT MaybeObject* CompileStoreField(JSObject* object,
 | 
|                                                   int index,
 | 
| @@ -649,12 +653,15 @@ class StoreStubCompiler: public StubCompiler {
 | 
|   private:
 | 
|    MaybeObject* GetCode(PropertyType type, String* name);
 | 
|  
 | 
| -  Code::ExtraICState extra_ic_state_;
 | 
| +  StrictModeFlag strict_mode_;
 | 
|  };
 | 
|  
 | 
|  
 | 
|  class KeyedStoreStubCompiler: public StubCompiler {
 | 
|   public:
 | 
| +  explicit KeyedStoreStubCompiler(StrictModeFlag strict_mode)
 | 
| +    : strict_mode_(strict_mode) { }
 | 
| +
 | 
|    MUST_USE_RESULT MaybeObject* CompileStoreField(JSObject* object,
 | 
|                                                   int index,
 | 
|                                                   Map* transition,
 | 
| @@ -666,6 +673,8 @@ class KeyedStoreStubCompiler: public StubCompiler {
 | 
|  
 | 
|   private:
 | 
|    MaybeObject* GetCode(PropertyType type, String* name);
 | 
| +
 | 
| +  StrictModeFlag strict_mode_;
 | 
|  };
 | 
|  
 | 
|  
 | 
| 
 |