OLD | NEW |
1 // Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file |
2 // for details. All rights reserved. Use of this source code is governed by a | 2 // for details. All rights reserved. Use of this source code is governed by a |
3 // BSD-style license that can be found in the LICENSE file. | 3 // BSD-style license that can be found in the LICENSE file. |
4 | 4 |
5 #ifndef VM_FLOW_GRAPH_COMPILER_H_ | 5 #ifndef VM_FLOW_GRAPH_COMPILER_H_ |
6 #define VM_FLOW_GRAPH_COMPILER_H_ | 6 #define VM_FLOW_GRAPH_COMPILER_H_ |
7 | 7 |
8 #include "vm/allocation.h" | 8 #include "vm/allocation.h" |
9 #include "vm/assembler.h" | 9 #include "vm/assembler.h" |
10 #include "vm/code_descriptors.h" | 10 #include "vm/code_descriptors.h" |
(...skipping 510 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
521 intptr_t deopt_id, | 521 intptr_t deopt_id, |
522 TokenPosition token_pos); | 522 TokenPosition token_pos); |
523 | 523 |
524 void RecordSafepoint(LocationSummary* locs, | 524 void RecordSafepoint(LocationSummary* locs, |
525 intptr_t slow_path_argument_count = 0); | 525 intptr_t slow_path_argument_count = 0); |
526 | 526 |
527 Label* AddDeoptStub(intptr_t deopt_id, | 527 Label* AddDeoptStub(intptr_t deopt_id, |
528 ICData::DeoptReasonId reason, | 528 ICData::DeoptReasonId reason, |
529 uint32_t flags = 0); | 529 uint32_t flags = 0); |
530 | 530 |
| 531 #if defined(TARGET_ARCH_DBC) |
| 532 void AddDeoptWithoutStub(intptr_t deopt_id, |
| 533 ICData::DeoptReasonId reason, |
| 534 uint32_t flags = 0); |
| 535 #endif // defined(TARGET_ARCH_DBC) |
| 536 |
531 void AddDeoptIndexAtCall(intptr_t deopt_id, TokenPosition token_pos); | 537 void AddDeoptIndexAtCall(intptr_t deopt_id, TokenPosition token_pos); |
532 | 538 |
533 void AddSlowPathCode(SlowPathCode* slow_path); | 539 void AddSlowPathCode(SlowPathCode* slow_path); |
534 | 540 |
535 void FinalizeExceptionHandlers(const Code& code); | 541 void FinalizeExceptionHandlers(const Code& code); |
536 void FinalizePcDescriptors(const Code& code); | 542 void FinalizePcDescriptors(const Code& code); |
537 RawArray* CreateDeoptInfo(Assembler* assembler); | 543 RawArray* CreateDeoptInfo(Assembler* assembler); |
538 void FinalizeStackmaps(const Code& code); | 544 void FinalizeStackmaps(const Code& code); |
539 void FinalizeVarDescriptors(const Code& code); | 545 void FinalizeVarDescriptors(const Code& code); |
540 void FinalizeStaticCallTargetsTable(const Code& code); | 546 void FinalizeStaticCallTargetsTable(const Code& code); |
(...skipping 283 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
824 const GrowableArray<const Function*>& inline_id_to_function_; | 830 const GrowableArray<const Function*>& inline_id_to_function_; |
825 const GrowableArray<TokenPosition>& inline_id_to_token_pos_; | 831 const GrowableArray<TokenPosition>& inline_id_to_token_pos_; |
826 const GrowableArray<intptr_t>& caller_inline_id_; | 832 const GrowableArray<intptr_t>& caller_inline_id_; |
827 | 833 |
828 DISALLOW_COPY_AND_ASSIGN(FlowGraphCompiler); | 834 DISALLOW_COPY_AND_ASSIGN(FlowGraphCompiler); |
829 }; | 835 }; |
830 | 836 |
831 } // namespace dart | 837 } // namespace dart |
832 | 838 |
833 #endif // VM_FLOW_GRAPH_COMPILER_H_ | 839 #endif // VM_FLOW_GRAPH_COMPILER_H_ |
OLD | NEW |