Index: src/fast-codegen.cc |
=================================================================== |
--- src/fast-codegen.cc (revision 3445) |
+++ src/fast-codegen.cc (working copy) |
@@ -375,48 +375,7 @@ |
void FastCodeGenerator::VisitForStatement(ForStatement* stmt) { |
- Comment cmnt(masm_, "[ ForStatement"); |
- Label test, body, exit, stack_limit_hit, stack_check_success; |
- if (stmt->init() != NULL) Visit(stmt->init()); |
- |
- increment_loop_depth(); |
- // Emit the test at the bottom of the loop (even if empty). |
- __ jmp(&test); |
- __ bind(&body); |
- Visit(stmt->body()); |
- |
- // Check stack before looping. |
- __ StackLimitCheck(&stack_limit_hit); |
- __ bind(&stack_check_success); |
- |
- if (stmt->next() != NULL) Visit(stmt->next()); |
- |
- __ bind(&test); |
- |
- if (stmt->cond() == NULL) { |
- // For an empty test jump to the top of the loop. |
- __ jmp(&body); |
- } else { |
- // We are not in an expression context because we have been compiling |
- // statements. Set up a test expression context for the condition. |
- ASSERT_EQ(NULL, true_label_); |
- ASSERT_EQ(NULL, false_label_); |
- |
- true_label_ = &body; |
- false_label_ = &exit; |
- ASSERT(stmt->cond()->context() == Expression::kTest); |
- Visit(stmt->cond()); |
- true_label_ = NULL; |
- false_label_ = NULL; |
- } |
- |
- __ bind(&stack_limit_hit); |
- StackCheckStub stack_stub; |
- __ CallStub(&stack_stub); |
- __ jmp(&stack_check_success); |
- |
- __ bind(&exit); |
- decrement_loop_depth(); |
+ UNREACHABLE(); |
} |