Index: src/ast-numbering.cc |
diff --git a/src/ast-numbering.cc b/src/ast-numbering.cc |
index 4ec93eded0ee289fda1d2658ee82753637f5c48d..2311c840f0d518c699d2ed4f00c16b39c4742c09 100644 |
--- a/src/ast-numbering.cc |
+++ b/src/ast-numbering.cc |
@@ -312,6 +312,7 @@ void AstNumberingVisitor::VisitAssignment(Assignment* node) { |
if (node->is_compound()) VisitBinaryOperation(node->binary_operation()); |
Visit(node->target()); |
Visit(node->value()); |
+ ReserveFeedbackSlots(node); |
} |
@@ -341,11 +342,11 @@ void AstNumberingVisitor::VisitSpread(Spread* node) { |
void AstNumberingVisitor::VisitForInStatement(ForInStatement* node) { |
IncrementNodeCount(); |
DisableSelfOptimization(); |
- ReserveFeedbackSlots(node); |
node->set_base_id(ReserveIdRange(ForInStatement::num_ids())); |
Visit(node->each()); |
Visit(node->enumerable()); |
Visit(node->body()); |
+ ReserveFeedbackSlots(node); |
} |
@@ -358,6 +359,7 @@ void AstNumberingVisitor::VisitForOfStatement(ForOfStatement* node) { |
Visit(node->result_done()); |
Visit(node->assign_each()); |
Visit(node->body()); |
+ ReserveFeedbackSlots(node); |
} |
@@ -436,6 +438,7 @@ void AstNumberingVisitor::VisitObjectLiteral(ObjectLiteral* node) { |
// is shadowed by a later occurrence of the same key. For the |
// marked expressions, no store code will be is emitted. |
node->CalculateEmitStore(zone()); |
+ ReserveFeedbackSlots(node); |
} |