| Index: src/contexts.h
 | 
| diff --git a/src/contexts.h b/src/contexts.h
 | 
| index e810ca5f1f870586cffe3420a506a2ba0ad613e5..e4d49ca161bca65b9283d790b72db513b522bbe2 100644
 | 
| --- a/src/contexts.h
 | 
| +++ b/src/contexts.h
 | 
| @@ -211,21 +211,8 @@ enum BindingFlags {
 | 
|      js_array_fast_double_elements_map_index)                                   \
 | 
|    V(JS_ARRAY_FAST_HOLEY_DOUBLE_ELEMENTS_MAP_INDEX, Map,                        \
 | 
|      js_array_fast_holey_double_elements_map_index)                             \
 | 
| -  V(JS_ARRAY_FAST_SMI_ELEMENTS_STRONG_MAP_INDEX, Map,                          \
 | 
| -    js_array_fast_smi_elements_strong_map_index)                               \
 | 
| -  V(JS_ARRAY_FAST_HOLEY_SMI_ELEMENTS_STRONG_MAP_INDEX, Map,                    \
 | 
| -    js_array_fast_holey_smi_elements_strong_map_index)                         \
 | 
| -  V(JS_ARRAY_FAST_ELEMENTS_STRONG_MAP_INDEX, Map,                              \
 | 
| -    js_array_fast_elements_strong_map_index)                                   \
 | 
| -  V(JS_ARRAY_FAST_HOLEY_ELEMENTS_STRONG_MAP_INDEX, Map,                        \
 | 
| -    js_array_fast_holey_elements_strong_map_index)                             \
 | 
| -  V(JS_ARRAY_FAST_DOUBLE_ELEMENTS_STRONG_MAP_INDEX, Map,                       \
 | 
| -    js_array_fast_double_elements_strong_map_index)                            \
 | 
| -  V(JS_ARRAY_FAST_HOLEY_DOUBLE_ELEMENTS_STRONG_MAP_INDEX, Map,                 \
 | 
| -    js_array_fast_holey_double_elements_strong_map_index)                      \
 | 
|    V(JS_MAP_FUN_INDEX, JSFunction, js_map_fun)                                  \
 | 
|    V(JS_MAP_MAP_INDEX, Map, js_map_map)                                         \
 | 
| -  V(JS_OBJECT_STRONG_MAP_INDEX, Map, js_object_strong_map)                     \
 | 
|    V(JS_SET_FUN_INDEX, JSFunction, js_set_fun)                                  \
 | 
|    V(JS_SET_MAP_INDEX, Map, js_set_map)                                         \
 | 
|    V(JS_WEAK_MAP_FUN_INDEX, JSFunction, js_weak_map_fun)                        \
 | 
| @@ -269,10 +256,6 @@ enum BindingFlags {
 | 
|    V(STRICT_GENERATOR_FUNCTION_MAP_INDEX, Map, strict_generator_function_map)   \
 | 
|    V(STRING_FUNCTION_INDEX, JSFunction, string_function)                        \
 | 
|    V(STRING_FUNCTION_PROTOTYPE_MAP_INDEX, Map, string_function_prototype_map)   \
 | 
| -  V(STRONG_CONSTRUCTOR_MAP_INDEX, Map, strong_constructor_map)                 \
 | 
| -  V(STRONG_FUNCTION_MAP_INDEX, Map, strong_function_map)                       \
 | 
| -  V(STRONG_GENERATOR_FUNCTION_MAP_INDEX, Map, strong_generator_function_map)   \
 | 
| -  V(STRONG_MAP_CACHE_INDEX, Object, strong_map_cache)                          \
 | 
|    V(SYMBOL_FUNCTION_INDEX, JSFunction, symbol_function)                        \
 | 
|    V(UINT16_ARRAY_FUN_INDEX, JSFunction, uint16_array_fun)                      \
 | 
|    V(UINT16X8_FUNCTION_INDEX, JSFunction, uint16x8_function)                    \
 | 
| @@ -416,8 +399,6 @@ class Context: public FixedArray {
 | 
|      NATIVE_CONTEXT_SLOTS,
 | 
|      FIRST_WEAK_SLOT = OPTIMIZED_FUNCTIONS_LIST,
 | 
|      FIRST_JS_ARRAY_MAP_SLOT = JS_ARRAY_FAST_SMI_ELEMENTS_MAP_INDEX,
 | 
| -    FIRST_JS_ARRAY_STRONG_MAP_SLOT =
 | 
| -        JS_ARRAY_FAST_SMI_ELEMENTS_STRONG_MAP_INDEX,
 | 
|  
 | 
|      MIN_CONTEXT_SLOTS = GLOBAL_PROXY_INDEX,
 | 
|      // This slot holds the thrown value in catch contexts.
 | 
| @@ -539,34 +520,27 @@ class Context: public FixedArray {
 | 
|  
 | 
|    static int FunctionMapIndex(LanguageMode language_mode, FunctionKind kind) {
 | 
|      if (IsGeneratorFunction(kind)) {
 | 
| -      return is_strong(language_mode) ? STRONG_GENERATOR_FUNCTION_MAP_INDEX :
 | 
| -             is_strict(language_mode) ? STRICT_GENERATOR_FUNCTION_MAP_INDEX
 | 
| +      return is_strict(language_mode) ? STRICT_GENERATOR_FUNCTION_MAP_INDEX
 | 
|                                        : SLOPPY_GENERATOR_FUNCTION_MAP_INDEX;
 | 
|      }
 | 
|  
 | 
|      if (IsClassConstructor(kind)) {
 | 
|        // Use strict function map (no own "caller" / "arguments")
 | 
| -      return is_strong(language_mode) ? STRONG_CONSTRUCTOR_MAP_INDEX
 | 
| -                                      : STRICT_FUNCTION_MAP_INDEX;
 | 
| +      return STRICT_FUNCTION_MAP_INDEX;
 | 
|      }
 | 
|  
 | 
|      if (IsArrowFunction(kind) || IsConciseMethod(kind) ||
 | 
|          IsAccessorFunction(kind)) {
 | 
| -      return is_strong(language_mode)
 | 
| -                 ? STRONG_FUNCTION_MAP_INDEX
 | 
| -                 : STRICT_FUNCTION_WITHOUT_PROTOTYPE_MAP_INDEX;
 | 
| +      return STRICT_FUNCTION_WITHOUT_PROTOTYPE_MAP_INDEX;
 | 
|      }
 | 
|  
 | 
| -    return is_strong(language_mode) ? STRONG_FUNCTION_MAP_INDEX :
 | 
| -           is_strict(language_mode) ? STRICT_FUNCTION_MAP_INDEX
 | 
| +    return is_strict(language_mode) ? STRICT_FUNCTION_MAP_INDEX
 | 
|                                      : SLOPPY_FUNCTION_MAP_INDEX;
 | 
|    }
 | 
|  
 | 
| -  static int ArrayMapIndex(ElementsKind elements_kind,
 | 
| -                           Strength strength = Strength::WEAK) {
 | 
| +  static int ArrayMapIndex(ElementsKind elements_kind) {
 | 
|      DCHECK(IsFastElementsKind(elements_kind));
 | 
| -    return elements_kind + (is_strong(strength) ? FIRST_JS_ARRAY_STRONG_MAP_SLOT
 | 
| -                                                : FIRST_JS_ARRAY_MAP_SLOT);
 | 
| +    return elements_kind + FIRST_JS_ARRAY_MAP_SLOT;
 | 
|    }
 | 
|  
 | 
|    static const int kSize = kHeaderSize + NATIVE_CONTEXT_SLOTS * kPointerSize;
 | 
| 
 |