Index: src/ic/ic.cc |
diff --git a/src/ic/ic.cc b/src/ic/ic.cc |
index feef309d7ab07174bd97a8a4976d15f1840fa309..38fe3314b0630eaf0d8e244c2e190108b6ac65b4 100644 |
--- a/src/ic/ic.cc |
+++ b/src/ic/ic.cc |
@@ -603,9 +603,10 @@ |
OnTypeFeedbackChanged(isolate(), get_host()); |
} |
+ |
void IC::ConfigureVectorState(MapHandleList* maps, |
MapHandleList* transitioned_maps, |
- List<Handle<Object>>* handlers) { |
+ CodeHandleList* handlers) { |
DCHECK(UseVector()); |
DCHECK(kind() == Code::KEYED_STORE_IC); |
KeyedStoreICNexus* nexus = casted_nexus<KeyedStoreICNexus>(); |
@@ -2207,7 +2208,7 @@ |
Handle<Map> monomorphic_map = |
ComputeTransitionedMap(receiver_map, store_mode); |
store_mode = GetNonTransitioningStoreMode(store_mode); |
- Handle<Object> handler = |
+ Handle<Code> handler = |
PropertyICCompiler::ComputeKeyedStoreMonomorphicHandler(monomorphic_map, |
store_mode); |
return ConfigureVectorState(Handle<Name>(), monomorphic_map, handler); |
@@ -2241,7 +2242,7 @@ |
// if they at least come from the same origin for a transitioning store, |
// stay MONOMORPHIC and use the map for the most generic ElementsKind. |
store_mode = GetNonTransitioningStoreMode(store_mode); |
- Handle<Object> handler = |
+ Handle<Code> handler = |
PropertyICCompiler::ComputeKeyedStoreMonomorphicHandler( |
transitioned_receiver_map, store_mode); |
ConfigureVectorState(Handle<Name>(), transitioned_receiver_map, handler); |
@@ -2255,7 +2256,7 @@ |
// A "normal" IC that handles stores can switch to a version that can |
// grow at the end of the array, handle OOB accesses or copy COW arrays |
// and still stay MONOMORPHIC. |
- Handle<Object> handler = |
+ Handle<Code> handler = |
PropertyICCompiler::ComputeKeyedStoreMonomorphicHandler(receiver_map, |
store_mode); |
return ConfigureVectorState(Handle<Name>(), receiver_map, handler); |
@@ -2316,7 +2317,7 @@ |
} |
MapHandleList transitioned_maps(target_receiver_maps.length()); |
- List<Handle<Object>> handlers(target_receiver_maps.length()); |
+ CodeHandleList handlers(target_receiver_maps.length()); |
PropertyICCompiler::ComputeKeyedStorePolymorphicHandlers( |
&target_receiver_maps, &transitioned_maps, &handlers, store_mode); |
ConfigureVectorState(&target_receiver_maps, &transitioned_maps, &handlers); |