diff options
| author | Iain Merrick <husky@google.com> | 2010-09-13 15:29:50 +0100 |
|---|---|---|
| committer | Iain Merrick <husky@google.com> | 2010-09-14 14:47:29 +0100 |
| commit | 9ac36c9faca11611ada13b4054edbaa0738661d0 (patch) | |
| tree | b2bfdf8a2fe7e5b4ab40d6fe66277d015274a74f /src/full-codegen.cc | |
| parent | 80d68eab642096c1a48b6474d6ec33064b0ad1f5 (diff) | |
| download | android_external_v8-9ac36c9faca11611ada13b4054edbaa0738661d0.tar.gz android_external_v8-9ac36c9faca11611ada13b4054edbaa0738661d0.tar.bz2 android_external_v8-9ac36c9faca11611ada13b4054edbaa0738661d0.zip | |
Update V8 to r5425 as required by WebKit r67178
Change-Id: Ic338e7242d33e5a024bd5978f4a5a3a681af4ebd
Diffstat (limited to 'src/full-codegen.cc')
| -rw-r--r-- | src/full-codegen.cc | 15 |
1 files changed, 9 insertions, 6 deletions
diff --git a/src/full-codegen.cc b/src/full-codegen.cc index 59cbad95..5ffebfb5 100644 --- a/src/full-codegen.cc +++ b/src/full-codegen.cc @@ -825,7 +825,7 @@ void FullCodeGenerator::VisitDoWhileStatement(DoWhileStatement* stmt) { void FullCodeGenerator::VisitWhileStatement(WhileStatement* stmt) { Comment cmnt(masm_, "[ WhileStatement"); - Label body, stack_limit_hit, stack_check_success; + Label body, stack_limit_hit, stack_check_success, done; Iteration loop_statement(this, stmt); increment_loop_depth(); @@ -833,11 +833,6 @@ void FullCodeGenerator::VisitWhileStatement(WhileStatement* stmt) { // Emit the test at the bottom of the loop. __ jmp(loop_statement.continue_target()); - __ bind(&stack_limit_hit); - StackCheckStub stack_stub; - __ CallStub(&stack_stub); - __ jmp(&stack_check_success); - __ bind(&body); Visit(stmt->body()); __ bind(loop_statement.continue_target()); @@ -856,6 +851,14 @@ void FullCodeGenerator::VisitWhileStatement(WhileStatement* stmt) { loop_statement.break_target()); __ bind(loop_statement.break_target()); + __ jmp(&done); + + __ bind(&stack_limit_hit); + StackCheckStub stack_stub; + __ CallStub(&stack_stub); + __ jmp(&stack_check_success); + + __ bind(&done); decrement_loop_depth(); } |
