| 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/cha.h" | 9 #include "vm/cha.h" |
| 10 #include "vm/dart_entry.h" | 10 #include "vm/dart_entry.h" |
| (...skipping 297 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 308 } | 308 } |
| 309 for (intptr_t i = 0; i < deopt_infos_.length(); i++) { | 309 for (intptr_t i = 0; i < deopt_infos_.length(); i++) { |
| 310 deopt_infos_[i]->GenerateCode(this, i); | 310 deopt_infos_[i]->GenerateCode(this, i); |
| 311 } | 311 } |
| 312 } | 312 } |
| 313 | 313 |
| 314 | 314 |
| 315 void FlowGraphCompiler::AddExceptionHandler(intptr_t try_index, | 315 void FlowGraphCompiler::AddExceptionHandler(intptr_t try_index, |
| 316 intptr_t outer_try_index, | 316 intptr_t outer_try_index, |
| 317 intptr_t pc_offset, | 317 intptr_t pc_offset, |
| 318 const Array& handler_types) { | 318 const Array& handler_types, |
| 319 bool needs_stacktrace) { |
| 319 exception_handlers_list_->AddHandler(try_index, | 320 exception_handlers_list_->AddHandler(try_index, |
| 320 outer_try_index, | 321 outer_try_index, |
| 321 pc_offset, | 322 pc_offset, |
| 322 handler_types); | 323 handler_types, |
| 324 needs_stacktrace); |
| 323 } | 325 } |
| 324 | 326 |
| 325 | 327 |
| 326 // Uses current pc position and try-index. | 328 // Uses current pc position and try-index. |
| 327 void FlowGraphCompiler::AddCurrentDescriptor(PcDescriptors::Kind kind, | 329 void FlowGraphCompiler::AddCurrentDescriptor(PcDescriptors::Kind kind, |
| 328 intptr_t deopt_id, | 330 intptr_t deopt_id, |
| 329 intptr_t token_pos) { | 331 intptr_t token_pos) { |
| 330 pc_descriptors_list()->AddDescriptor(kind, | 332 pc_descriptors_list()->AddDescriptor(kind, |
| 331 assembler()->CodeSize(), | 333 assembler()->CodeSize(), |
| 332 deopt_id, | 334 deopt_id, |
| (...skipping 805 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1138 | 1140 |
| 1139 for (int i = 0; i < len; i++) { | 1141 for (int i = 0; i < len; i++) { |
| 1140 sorted->Add(CidTarget(ic_data.GetReceiverClassIdAt(i), | 1142 sorted->Add(CidTarget(ic_data.GetReceiverClassIdAt(i), |
| 1141 &Function::ZoneHandle(ic_data.GetTargetAt(i)), | 1143 &Function::ZoneHandle(ic_data.GetTargetAt(i)), |
| 1142 ic_data.GetCountAt(i))); | 1144 ic_data.GetCountAt(i))); |
| 1143 } | 1145 } |
| 1144 sorted->Sort(HighestCountFirst); | 1146 sorted->Sort(HighestCountFirst); |
| 1145 } | 1147 } |
| 1146 | 1148 |
| 1147 } // namespace dart | 1149 } // namespace dart |
| OLD | NEW |