OLD | NEW |
1 // Copyright 2012 the V8 project authors. All rights reserved. | 1 // Copyright 2012 the V8 project authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include "src/v8.h" | 5 #include "src/v8.h" |
6 | 6 |
7 #include "src/codegen.h" | 7 #include "src/codegen.h" |
8 #include "src/compiler.h" | 8 #include "src/compiler.h" |
9 #include "src/debug.h" | 9 #include "src/debug.h" |
10 #include "src/full-codegen.h" | 10 #include "src/full-codegen.h" |
(...skipping 803 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
814 masm_, stmt->position(), !checker.is_breakable()); | 814 masm_, stmt->position(), !checker.is_breakable()); |
815 // If the position recording did record a new position generate a debug | 815 // If the position recording did record a new position generate a debug |
816 // break slot to make the statement breakable. | 816 // break slot to make the statement breakable. |
817 if (position_recorded) { | 817 if (position_recorded) { |
818 DebugCodegen::GenerateSlot(masm_); | 818 DebugCodegen::GenerateSlot(masm_); |
819 } | 819 } |
820 } | 820 } |
821 } | 821 } |
822 | 822 |
823 | 823 |
824 void FullCodeGenerator::VisitSuperReference(SuperReference* super) { | |
825 DCHECK(FLAG_harmony_classes); | |
826 UNIMPLEMENTED(); | |
827 } | |
828 | |
829 | |
830 void FullCodeGenerator::SetExpressionPosition(Expression* expr) { | 824 void FullCodeGenerator::SetExpressionPosition(Expression* expr) { |
831 if (!info_->is_debug()) { | 825 if (!info_->is_debug()) { |
832 CodeGenerator::RecordPositions(masm_, expr->position()); | 826 CodeGenerator::RecordPositions(masm_, expr->position()); |
833 } else { | 827 } else { |
834 // Check if the expression will be breakable without adding a debug break | 828 // Check if the expression will be breakable without adding a debug break |
835 // slot. | 829 // slot. |
836 BreakableStatementChecker checker(zone()); | 830 BreakableStatementChecker checker(zone()); |
837 checker.Check(expr); | 831 checker.Check(expr); |
838 // Record a statement position right here if the expression is not | 832 // Record a statement position right here if the expression is not |
839 // breakable. For breakable expressions the actual recording of the | 833 // breakable. For breakable expressions the actual recording of the |
(...skipping 852 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1692 } | 1686 } |
1693 return true; | 1687 return true; |
1694 } | 1688 } |
1695 #endif // DEBUG | 1689 #endif // DEBUG |
1696 | 1690 |
1697 | 1691 |
1698 #undef __ | 1692 #undef __ |
1699 | 1693 |
1700 | 1694 |
1701 } } // namespace v8::internal | 1695 } } // namespace v8::internal |
OLD | NEW |