Index: src/crankshaft/hydrogen.cc |
diff --git a/src/crankshaft/hydrogen.cc b/src/crankshaft/hydrogen.cc |
index 29e77c6b6e4f34ce4e93a31c654a1cbe84d367ef..d62fa23be92637af703e0bedb6431e3510b0a88a 100644 |
--- a/src/crankshaft/hydrogen.cc |
+++ b/src/crankshaft/hydrogen.cc |
@@ -6836,6 +6836,7 @@ HInstruction* HOptimizedGraphBuilder::BuildNamedGeneric( |
if (access_type == LOAD) { |
HValue* values[] = {object, key, slot_value, vector_value}; |
if (!expr->AsProperty()->key()->IsPropertyName()) { |
+ DCHECK(vector->IsKeyedLoadIC(slot)); |
// It's possible that a keyed load of a constant string was converted |
// to a named load. Here, at the last minute, we need to make sure to |
// use a generic Keyed Load if we are using the type vector, because |
@@ -6847,6 +6848,7 @@ HInstruction* HOptimizedGraphBuilder::BuildNamedGeneric( |
callable.descriptor(), ArrayVector(values)); |
return result; |
} |
+ DCHECK(vector->IsLoadIC(slot)); |
Callable callable = CodeFactory::LoadICInOptimizedCode(isolate()); |
HValue* stub = Add<HConstant>(callable.code()); |
HCallWithDescriptor* result = New<HCallWithDescriptor>( |
@@ -6855,7 +6857,7 @@ HInstruction* HOptimizedGraphBuilder::BuildNamedGeneric( |
} else { |
HValue* values[] = {object, key, value, slot_value, vector_value}; |
- if (vector->GetKind(slot) == FeedbackVectorSlotKind::KEYED_STORE_IC) { |
+ if (vector->IsKeyedStoreIC(slot)) { |
// It's possible that a keyed store of a constant string was converted |
// to a named store. Here, at the last minute, we need to make sure to |
// use a generic Keyed Store if we are using the type vector, because |
@@ -6868,6 +6870,7 @@ HInstruction* HOptimizedGraphBuilder::BuildNamedGeneric( |
callable.descriptor(), ArrayVector(values)); |
return result; |
} |
+ DCHECK(vector->IsStoreIC(slot)); |
Callable callable = CodeFactory::StoreICInOptimizedCode( |
isolate(), function_language_mode()); |
HValue* stub = Add<HConstant>(callable.code()); |