Index: src/ic/handler-compiler.cc |
diff --git a/src/ic/handler-compiler.cc b/src/ic/handler-compiler.cc |
index 4219d2bbbd48ed10d1ecaa7338e9c5b43574bedd..ecd3e3b544cd4850f3a697d61db29c4deb3d4384 100644 |
--- a/src/ic/handler-compiler.cc |
+++ b/src/ic/handler-compiler.cc |
@@ -388,10 +388,11 @@ void ElementHandlerCompiler::CompileElementHandlers( |
} else { |
bool is_js_array = receiver_map->instance_type() == JS_ARRAY_TYPE; |
ElementsKind elements_kind = receiver_map->elements_kind(); |
- |
- if (IsFastElementsKind(elements_kind) || |
- IsExternalArrayElementsKind(elements_kind) || |
- IsFixedTypedArrayElementsKind(elements_kind)) { |
+ if (receiver_map->has_indexed_interceptor()) { |
+ cached_stub = LoadIndexedInterceptorStub(isolate()).GetCode(); |
+ } else if (IsFastElementsKind(elements_kind) || |
+ IsExternalArrayElementsKind(elements_kind) || |
+ IsFixedTypedArrayElementsKind(elements_kind)) { |
cached_stub = LoadFastElementStub(isolate(), is_js_array, elements_kind) |
.GetCode(); |
} else if (elements_kind == SLOPPY_ARGUMENTS_ELEMENTS) { |