| 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 #ifndef V8_FULL_CODEGEN_FULL_CODEGEN_H_ | 5 #ifndef V8_FULL_CODEGEN_FULL_CODEGEN_H_ |
| 6 #define V8_FULL_CODEGEN_FULL_CODEGEN_H_ | 6 #define V8_FULL_CODEGEN_FULL_CODEGEN_H_ |
| 7 | 7 |
| 8 #include "src/allocation.h" | 8 #include "src/allocation.h" |
| 9 #include "src/assert-scope.h" | 9 #include "src/assert-scope.h" |
| 10 #include "src/ast/ast.h" | 10 #include "src/ast/ast.h" |
| (...skipping 659 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 670 // otherwise. | 670 // otherwise. |
| 671 void SetStatementPosition(Statement* stmt, | 671 void SetStatementPosition(Statement* stmt, |
| 672 InsertBreak insert_break = INSERT_BREAK); | 672 InsertBreak insert_break = INSERT_BREAK); |
| 673 void SetExpressionPosition(Expression* expr, | 673 void SetExpressionPosition(Expression* expr, |
| 674 InsertBreak insert_break = SKIP_BREAK); | 674 InsertBreak insert_break = SKIP_BREAK); |
| 675 | 675 |
| 676 // Consider an expression a statement. As such, we also insert a break. | 676 // Consider an expression a statement. As such, we also insert a break. |
| 677 // This is used in loop headers where we want to break for each iteration. | 677 // This is used in loop headers where we want to break for each iteration. |
| 678 void SetExpressionAsStatementPosition(Expression* expr); | 678 void SetExpressionAsStatementPosition(Expression* expr); |
| 679 | 679 |
| 680 void SetCallPosition(Expression* expr); | 680 void SetCallPosition(Expression* expr, |
| 681 TailCallMode tail_call_mode = TailCallMode::kDisallow); |
| 681 | 682 |
| 682 void SetConstructCallPosition(Expression* expr) { | 683 void SetConstructCallPosition(Expression* expr) { |
| 683 // Currently call and construct calls are treated the same wrt debugging. | 684 // Currently call and construct calls are treated the same wrt debugging. |
| 684 SetCallPosition(expr); | 685 SetCallPosition(expr); |
| 685 } | 686 } |
| 686 | 687 |
| 687 // Non-local control flow support. | 688 // Non-local control flow support. |
| 688 void EnterTryBlock(int handler_index, Label* handler); | 689 void EnterTryBlock(int handler_index, Label* handler); |
| 689 void ExitTryBlock(int handler_index); | 690 void ExitTryBlock(int handler_index); |
| 690 void EnterFinallyBlock(); | 691 void EnterFinallyBlock(); |
| (...skipping 366 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1057 Address start_; | 1058 Address start_; |
| 1058 Address instruction_start_; | 1059 Address instruction_start_; |
| 1059 uint32_t length_; | 1060 uint32_t length_; |
| 1060 }; | 1061 }; |
| 1061 | 1062 |
| 1062 | 1063 |
| 1063 } // namespace internal | 1064 } // namespace internal |
| 1064 } // namespace v8 | 1065 } // namespace v8 |
| 1065 | 1066 |
| 1066 #endif // V8_FULL_CODEGEN_FULL_CODEGEN_H_ | 1067 #endif // V8_FULL_CODEGEN_FULL_CODEGEN_H_ |
| OLD | NEW |