OLD | NEW |
1 // Copyright 2011 the V8 project authors. All rights reserved. | 1 // Copyright 2011 the V8 project authors. All rights reserved. |
2 // Redistribution and use in source and binary forms, with or without | 2 // Redistribution and use in source and binary forms, with or without |
3 // modification, are permitted provided that the following conditions are | 3 // modification, are permitted provided that the following conditions are |
4 // met: | 4 // met: |
5 // | 5 // |
6 // * Redistributions of source code must retain the above copyright | 6 // * Redistributions of source code must retain the above copyright |
7 // notice, this list of conditions and the following disclaimer. | 7 // notice, this list of conditions and the following disclaimer. |
8 // * Redistributions in binary form must reproduce the above | 8 // * Redistributions in binary form must reproduce the above |
9 // copyright notice, this list of conditions and the following | 9 // copyright notice, this list of conditions and the following |
10 // disclaimer in the documentation and/or other materials provided | 10 // disclaimer in the documentation and/or other materials provided |
(...skipping 807 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
818 __ jmp(nested_statement.break_target()); | 818 __ jmp(nested_statement.break_target()); |
819 } else { | 819 } else { |
820 __ jmp(default_clause->body_target()->entry_label()); | 820 __ jmp(default_clause->body_target()->entry_label()); |
821 } | 821 } |
822 | 822 |
823 // Compile all the case bodies. | 823 // Compile all the case bodies. |
824 for (int i = 0; i < clauses->length(); i++) { | 824 for (int i = 0; i < clauses->length(); i++) { |
825 Comment cmnt(masm_, "[ Case body"); | 825 Comment cmnt(masm_, "[ Case body"); |
826 CaseClause* clause = clauses->at(i); | 826 CaseClause* clause = clauses->at(i); |
827 __ bind(clause->body_target()->entry_label()); | 827 __ bind(clause->body_target()->entry_label()); |
| 828 PrepareForBailoutForId(clause->EntryId(), NO_REGISTERS); |
828 VisitStatements(clause->statements()); | 829 VisitStatements(clause->statements()); |
829 } | 830 } |
830 | 831 |
831 __ bind(nested_statement.break_target()); | 832 __ bind(nested_statement.break_target()); |
832 PrepareForBailoutForId(stmt->ExitId(), NO_REGISTERS); | 833 PrepareForBailoutForId(stmt->ExitId(), NO_REGISTERS); |
833 } | 834 } |
834 | 835 |
835 | 836 |
836 void FullCodeGenerator::VisitForInStatement(ForInStatement* stmt) { | 837 void FullCodeGenerator::VisitForInStatement(ForInStatement* stmt) { |
837 Comment cmnt(masm_, "[ ForInStatement"); | 838 Comment cmnt(masm_, "[ ForInStatement"); |
(...skipping 3420 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
4258 // And return. | 4259 // And return. |
4259 __ ret(0); | 4260 __ ret(0); |
4260 } | 4261 } |
4261 | 4262 |
4262 | 4263 |
4263 #undef __ | 4264 #undef __ |
4264 | 4265 |
4265 } } // namespace v8::internal | 4266 } } // namespace v8::internal |
4266 | 4267 |
4267 #endif // V8_TARGET_ARCH_IA32 | 4268 #endif // V8_TARGET_ARCH_IA32 |
OLD | NEW |