| 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());
|
| }
|
|
|
|
|
|
|