Index: src/compiler/ast-graph-builder.cc |
diff --git a/src/compiler/ast-graph-builder.cc b/src/compiler/ast-graph-builder.cc |
index 0318165e0848631f352dcc7c489039ebca0b70ca..57cf360ed46483298aa782dbb97268be8d660bda 100644 |
--- a/src/compiler/ast-graph-builder.cc |
+++ b/src/compiler/ast-graph-builder.cc |
@@ -1827,7 +1827,7 @@ void AstGraphBuilder::VisitObjectLiteral(ObjectLiteral* expr) { |
feedback_getter); |
VisitForValueOrNull(it->second->setter); |
VectorSlotPair feedback_setter = CreateVectorSlotPair( |
- expr->SlotForHomeObject(it->second->getter, &store_slot_index)); |
+ expr->SlotForHomeObject(it->second->setter, &store_slot_index)); |
BuildSetHomeObject(environment()->Top(), literal, it->second->setter, |
feedback_setter); |
Node* setter = environment()->Pop(); |
@@ -3504,7 +3504,10 @@ Node* AstGraphBuilder::BuildKeyedStore(Node* object, Node* key, Node* value, |
const VectorSlotPair& feedback, |
TypeFeedbackId id) { |
const Operator* op = javascript()->StoreProperty(language_mode(), feedback); |
- Node* node = NewNode(op, object, key, value); |
+ Node* node = NewNode(op, object, key, value, BuildLoadFeedbackVector()); |
+ if (FLAG_vector_stores) { |
+ return Record(js_type_feedback_, node, feedback.slot()); |
+ } |
return Record(js_type_feedback_, node, id); |
} |
@@ -3515,7 +3518,10 @@ Node* AstGraphBuilder::BuildNamedStore(Node* object, Handle<Name> name, |
TypeFeedbackId id) { |
const Operator* op = |
javascript()->StoreNamed(language_mode(), MakeUnique(name), feedback); |
- Node* node = NewNode(op, object, value); |
+ Node* node = NewNode(op, object, value, BuildLoadFeedbackVector()); |
+ if (FLAG_vector_stores) { |
+ return Record(js_type_feedback_, node, feedback.slot()); |
+ } |
return Record(js_type_feedback_, node, id); |
} |