Index: src/compiler/js-generic-lowering.cc |
diff --git a/src/compiler/js-generic-lowering.cc b/src/compiler/js-generic-lowering.cc |
index 5affb777550e3c920e672c2c0c2ab10d69a90a54..d1951e07bb56f8e22f1651d79f4c4fd3b8e1fd8b 100644 |
--- a/src/compiler/js-generic-lowering.cc |
+++ b/src/compiler/js-generic-lowering.cc |
@@ -272,15 +272,25 @@ void JSGenericLowering::LowerJSToObject(Node* node) { |
void JSGenericLowering::LowerJSLoadProperty(Node* node) { |
- Callable callable = CodeFactory::KeyedLoadIC(isolate()); |
+ const LoadPropertyParameters& p = LoadPropertyParametersOf(node->op()); |
+ Callable callable = CodeFactory::KeyedLoadICInOptimizedCode(isolate()); |
+ if (FLAG_vector_ics) { |
+ PatchInsertInput(node, 2, jsgraph()->SmiConstant(p.feedback().slot())); |
+ PatchInsertInput(node, 3, jsgraph()->HeapConstant(p.feedback().vector())); |
+ } |
ReplaceWithStubCall(node, callable, CallDescriptor::kPatchableCallSite); |
} |
void JSGenericLowering::LowerJSLoadNamed(Node* node) { |
const LoadNamedParameters& p = LoadNamedParametersOf(node->op()); |
- Callable callable = CodeFactory::LoadIC(isolate(), p.contextual_mode()); |
+ Callable callable = |
+ CodeFactory::LoadICInOptimizedCode(isolate(), p.contextual_mode()); |
PatchInsertInput(node, 1, jsgraph()->HeapConstant(p.name())); |
+ if (FLAG_vector_ics) { |
+ PatchInsertInput(node, 2, jsgraph()->SmiConstant(p.feedback().slot())); |
+ PatchInsertInput(node, 3, jsgraph()->HeapConstant(p.feedback().vector())); |
+ } |
ReplaceWithStubCall(node, callable, CallDescriptor::kPatchableCallSite); |
} |