Index: src/compiler.cc |
diff --git a/src/compiler.cc b/src/compiler.cc |
index 22384bf8d1b8c35c4e1b605dca3cf44f7ef6e39b..75060b0a7b715f0439649e92db3cf7c513a44b39 100644 |
--- a/src/compiler.cc |
+++ b/src/compiler.cc |
@@ -708,12 +708,20 @@ void CodeGenSelector::VisitSwitchStatement(SwitchStatement* stmt) { |
void CodeGenSelector::VisitDoWhileStatement(DoWhileStatement* stmt) { |
- BAILOUT("DoWhileStatement"); |
+ // We do not handle loops with breaks or continue statements in their |
+ // body. We will bailout when we hit those statements in the body. |
+ ProcessExpression(stmt->cond(), Expression::kTest); |
+ CHECK_BAILOUT; |
+ Visit(stmt->body()); |
} |
void CodeGenSelector::VisitWhileStatement(WhileStatement* stmt) { |
- BAILOUT("WhileStatement"); |
+ // We do not handle loops with breaks or continue statements in their |
+ // body. We will bailout when we hit those statements in the body. |
+ ProcessExpression(stmt->cond(), Expression::kTest); |
+ CHECK_BAILOUT; |
+ Visit(stmt->body()); |
} |