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 | 4 |
5 #include "vm/globals.h" // Needed here to get TARGET_ARCH_XXX. | 5 #include "vm/globals.h" // Needed here to get TARGET_ARCH_XXX. |
6 | 6 |
7 #include "vm/flow_graph_compiler.h" | 7 #include "vm/flow_graph_compiler.h" |
8 | 8 |
9 #include "vm/bit_vector.h" | 9 #include "vm/bit_vector.h" |
10 #include "vm/cha.h" | 10 #include "vm/cha.h" |
(...skipping 1022 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1033 *static_calls_target_table_[i]->code); | 1033 *static_calls_target_table_[i]->code); |
1034 } | 1034 } |
1035 } | 1035 } |
1036 code.set_static_calls_target_table(targets); | 1036 code.set_static_calls_target_table(targets); |
1037 INC_STAT(Thread::Current(), total_code_size, | 1037 INC_STAT(Thread::Current(), total_code_size, |
1038 targets.Length() * sizeof(uword)); | 1038 targets.Length() * sizeof(uword)); |
1039 } | 1039 } |
1040 | 1040 |
1041 | 1041 |
1042 void FlowGraphCompiler::FinalizeCodeSourceMap(const Code& code) { | 1042 void FlowGraphCompiler::FinalizeCodeSourceMap(const Code& code) { |
1043 if (FLAG_precompiled_mode) { | |
1044 // TODO(rmacnak): Include a filtered verion of this to produce stack traces | |
1045 // with inlined frames. | |
1046 return; | |
1047 } | |
1048 | |
1049 const Array& inlined_id_array = | 1043 const Array& inlined_id_array = |
1050 Array::Handle(zone(), code_source_map_builder_->InliningIdToFunction()); | 1044 Array::Handle(zone(), code_source_map_builder_->InliningIdToFunction()); |
1051 INC_STAT(Thread::Current(), total_code_size, | 1045 INC_STAT(Thread::Current(), total_code_size, |
1052 inlined_id_array.Length() * sizeof(uword)); | 1046 inlined_id_array.Length() * sizeof(uword)); |
1053 code.set_inlined_id_to_function(inlined_id_array); | 1047 code.set_inlined_id_to_function(inlined_id_array); |
1054 | 1048 |
1055 const CodeSourceMap& map = | 1049 const CodeSourceMap& map = |
1056 CodeSourceMap::Handle(code_source_map_builder_->Finalize()); | 1050 CodeSourceMap::Handle(code_source_map_builder_->Finalize()); |
1057 INC_STAT(Thread::Current(), total_code_size, map.Length() * sizeof(uint8_t)); | 1051 INC_STAT(Thread::Current(), total_code_size, map.Length() * sizeof(uint8_t)); |
1058 code.set_code_source_map(map); | 1052 code.set_code_source_map(map); |
(...skipping 800 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1859 | 1853 |
1860 | 1854 |
1861 void FlowGraphCompiler::FrameStateClear() { | 1855 void FlowGraphCompiler::FrameStateClear() { |
1862 ASSERT(!is_optimizing()); | 1856 ASSERT(!is_optimizing()); |
1863 frame_state_.TruncateTo(0); | 1857 frame_state_.TruncateTo(0); |
1864 } | 1858 } |
1865 #endif // defined(DEBUG) && !defined(TARGET_ARCH_DBC) | 1859 #endif // defined(DEBUG) && !defined(TARGET_ARCH_DBC) |
1866 | 1860 |
1867 | 1861 |
1868 } // namespace dart | 1862 } // namespace dart |
OLD | NEW |