| 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 444 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 455 // handlers as needed. Also emits the return sequence if necessary (i.e., | 455 // handlers as needed. Also emits the return sequence if necessary (i.e., |
| 456 // if the return is not delayed by a finally block). | 456 // if the return is not delayed by a finally block). |
| 457 void EmitUnwindAndReturn(); | 457 void EmitUnwindAndReturn(); |
| 458 | 458 |
| 459 // Platform-specific return sequence | 459 // Platform-specific return sequence |
| 460 void EmitReturnSequence(); | 460 void EmitReturnSequence(); |
| 461 void EmitProfilingCounterHandlingForReturnSequence(bool is_tail_call); | 461 void EmitProfilingCounterHandlingForReturnSequence(bool is_tail_call); |
| 462 | 462 |
| 463 // Platform-specific code sequences for calls | 463 // Platform-specific code sequences for calls |
| 464 void EmitCall(Call* expr, ConvertReceiverMode = ConvertReceiverMode::kAny); | 464 void EmitCall(Call* expr, ConvertReceiverMode = ConvertReceiverMode::kAny); |
| 465 void EmitSuperConstructorCall(Call* expr); | |
| 466 void EmitCallWithLoadIC(Call* expr); | 465 void EmitCallWithLoadIC(Call* expr); |
| 467 void EmitSuperCallWithLoadIC(Call* expr); | 466 void EmitSuperCallWithLoadIC(Call* expr); |
| 468 void EmitKeyedCallWithLoadIC(Call* expr, Expression* key); | 467 void EmitKeyedCallWithLoadIC(Call* expr, Expression* key); |
| 469 void EmitKeyedSuperCallWithLoadIC(Call* expr); | 468 void EmitKeyedSuperCallWithLoadIC(Call* expr); |
| 470 void EmitPossiblyEvalCall(Call* expr); | 469 void EmitPossiblyEvalCall(Call* expr); |
| 471 | 470 |
| 472 #define FOR_EACH_FULL_CODE_INTRINSIC(F) \ | 471 #define FOR_EACH_FULL_CODE_INTRINSIC(F) \ |
| 473 F(IsSmi) \ | 472 F(IsSmi) \ |
| 474 F(IsArray) \ | 473 F(IsArray) \ |
| 475 F(IsTypedArray) \ | 474 F(IsTypedArray) \ |
| (...skipping 542 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1018 Address start_; | 1017 Address start_; |
| 1019 Address instruction_start_; | 1018 Address instruction_start_; |
| 1020 uint32_t length_; | 1019 uint32_t length_; |
| 1021 }; | 1020 }; |
| 1022 | 1021 |
| 1023 | 1022 |
| 1024 } // namespace internal | 1023 } // namespace internal |
| 1025 } // namespace v8 | 1024 } // namespace v8 |
| 1026 | 1025 |
| 1027 #endif // V8_FULL_CODEGEN_FULL_CODEGEN_H_ | 1026 #endif // V8_FULL_CODEGEN_FULL_CODEGEN_H_ |
| OLD | NEW |