Index: src/ic/ic-compiler.cc |
diff --git a/src/ic/ic-compiler.cc b/src/ic/ic-compiler.cc |
index f74c69e50d431ab75a449059c7a776ecf5fb396d..bc8a49332f24bd9a4ec7822e33e396dc454190a4 100644 |
--- a/src/ic/ic-compiler.cc |
+++ b/src/ic/ic-compiler.cc |
@@ -235,8 +235,11 @@ void PropertyICCompiler::CompileKeyedStorePolymorphicHandlers( |
for (int i = 0; i < receiver_maps->length(); ++i) { |
Handle<Map> receiver_map(receiver_maps->at(i)); |
Handle<Code> cached_stub; |
- Handle<Map> transitioned_map = |
- Map::FindTransitionedMap(receiver_map, receiver_maps); |
+ Handle<Map> transitioned_map; |
+ { |
+ Map* tmap = receiver_map->FindElementsKindTransitionedMap(receiver_maps); |
+ if (tmap != nullptr) transitioned_map = handle(tmap); |
+ } |
// TODO(mvstanton): The code below is doing pessimistic elements |
// transitions. I would like to stop doing that and rely on Allocation Site |