OLD | NEW |
1 // Copyright (c) 2013, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2013, 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 #if !defined(DART_PRECOMPILED_RUNTIME) | 4 #if !defined(DART_PRECOMPILED_RUNTIME) |
5 #include "vm/flow_graph_inliner.h" | 5 #include "vm/flow_graph_inliner.h" |
6 | 6 |
7 #include "vm/aot_optimizer.h" | 7 #include "vm/aot_optimizer.h" |
8 #include "vm/precompiler.h" | 8 #include "vm/precompiler.h" |
9 #include "vm/block_scheduler.h" | 9 #include "vm/block_scheduler.h" |
10 #include "vm/branch_optimizer.h" | 10 #include "vm/branch_optimizer.h" |
(...skipping 782 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
793 | 793 |
794 // Build the callee graph. | 794 // Build the callee graph. |
795 InlineExitCollector* exit_collector = | 795 InlineExitCollector* exit_collector = |
796 new (Z) InlineExitCollector(caller_graph_, call); | 796 new (Z) InlineExitCollector(caller_graph_, call); |
797 FlowGraph* callee_graph; | 797 FlowGraph* callee_graph; |
798 if (UseKernelFrontEndFor(parsed_function)) { | 798 if (UseKernelFrontEndFor(parsed_function)) { |
799 kernel::TreeNode* node = static_cast<kernel::TreeNode*>( | 799 kernel::TreeNode* node = static_cast<kernel::TreeNode*>( |
800 parsed_function->function().kernel_function()); | 800 parsed_function->function().kernel_function()); |
801 | 801 |
802 kernel::FlowGraphBuilder builder( | 802 kernel::FlowGraphBuilder builder( |
803 node, parsed_function, *ic_data_array, exit_collector, | 803 node, parsed_function, *ic_data_array, |
| 804 /* not building var desc */ NULL, exit_collector, |
804 Compiler::kNoOSRDeoptId, caller_graph_->max_block_id() + 1); | 805 Compiler::kNoOSRDeoptId, caller_graph_->max_block_id() + 1); |
805 { | 806 { |
806 CSTAT_TIMER_SCOPE(thread(), graphinliner_build_timer); | 807 CSTAT_TIMER_SCOPE(thread(), graphinliner_build_timer); |
807 callee_graph = builder.BuildGraph(); | 808 callee_graph = builder.BuildGraph(); |
808 } | 809 } |
809 } else { | 810 } else { |
810 FlowGraphBuilder builder(*parsed_function, *ic_data_array, | 811 FlowGraphBuilder builder(*parsed_function, *ic_data_array, |
| 812 /* not building var desc */ NULL, |
811 exit_collector, Compiler::kNoOSRDeoptId); | 813 exit_collector, Compiler::kNoOSRDeoptId); |
812 builder.SetInitialBlockId(caller_graph_->max_block_id()); | 814 builder.SetInitialBlockId(caller_graph_->max_block_id()); |
813 { | 815 { |
814 CSTAT_TIMER_SCOPE(thread(), graphinliner_build_timer); | 816 CSTAT_TIMER_SCOPE(thread(), graphinliner_build_timer); |
815 callee_graph = builder.BuildGraph(); | 817 callee_graph = builder.BuildGraph(); |
816 } | 818 } |
817 } | 819 } |
818 #ifdef DART_PRECOMPILER | 820 #ifdef DART_PRECOMPILER |
819 if (FLAG_precompiled_mode) { | 821 if (FLAG_precompiled_mode) { |
820 Precompiler::PopulateWithICData(parsed_function->function(), | 822 Precompiler::PopulateWithICData(parsed_function->function(), |
(...skipping 2947 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
3768 } | 3770 } |
3769 | 3771 |
3770 default: | 3772 default: |
3771 return false; | 3773 return false; |
3772 } | 3774 } |
3773 } | 3775 } |
3774 | 3776 |
3775 | 3777 |
3776 } // namespace dart | 3778 } // namespace dart |
3777 #endif // !defined(DART_PRECOMPILED_RUNTIME) | 3779 #endif // !defined(DART_PRECOMPILED_RUNTIME) |
OLD | NEW |