Index: src/compiler/ast-graph-builder.cc |
diff --git a/src/compiler/ast-graph-builder.cc b/src/compiler/ast-graph-builder.cc |
index 3d725a1262e9c1cf02a9993b72e315e93b1e4950..57773d1c69eb792349f760e2b073fa6c3bc1de90 100644 |
--- a/src/compiler/ast-graph-builder.cc |
+++ b/src/compiler/ast-graph-builder.cc |
@@ -3101,8 +3101,11 @@ Node* AstGraphBuilder::BuildVariableAssignment( |
static inline Node* Record(JSTypeFeedbackTable* js_type_feedback, Node* node, |
- TypeFeedbackId id) { |
- if (js_type_feedback) js_type_feedback->Record(node, id); |
+ TypeFeedbackId id, FeedbackVectorICSlot slot) { |
+ if (js_type_feedback) { |
+ js_type_feedback->Record(node, id); |
+ js_type_feedback->Record(node, slot); |
+ } |
return node; |
} |
@@ -3111,7 +3114,8 @@ Node* AstGraphBuilder::BuildKeyedLoad(Node* object, Node* key, |
const VectorSlotPair& feedback, |
TypeFeedbackId id) { |
const Operator* op = javascript()->LoadProperty(feedback); |
- return Record(js_type_feedback_, NewNode(op, object, key), id); |
+ return Record(js_type_feedback_, NewNode(op, object, key), id, |
+ feedback.slot()); |
} |
@@ -3120,14 +3124,15 @@ Node* AstGraphBuilder::BuildNamedLoad(Node* object, Handle<Name> name, |
TypeFeedbackId id, ContextualMode mode) { |
const Operator* op = |
javascript()->LoadNamed(MakeUnique(name), feedback, mode); |
- return Record(js_type_feedback_, NewNode(op, object), id); |
+ return Record(js_type_feedback_, NewNode(op, object), id, feedback.slot()); |
} |
Node* AstGraphBuilder::BuildKeyedStore(Node* object, Node* key, Node* value, |
TypeFeedbackId id) { |
const Operator* op = javascript()->StoreProperty(language_mode()); |
- return Record(js_type_feedback_, NewNode(op, object, key, value), id); |
+ return Record(js_type_feedback_, NewNode(op, object, key, value), id, |
+ FeedbackVectorICSlot::Invalid()); |
} |
@@ -3135,7 +3140,8 @@ Node* AstGraphBuilder::BuildNamedStore(Node* object, Handle<Name> name, |
Node* value, TypeFeedbackId id) { |
const Operator* op = |
javascript()->StoreNamed(language_mode(), MakeUnique(name)); |
- return Record(js_type_feedback_, NewNode(op, object, value), id); |
+ return Record(js_type_feedback_, NewNode(op, object, value), id, |
+ FeedbackVectorICSlot::Invalid()); |
} |