| OLD | NEW |
| 1 // Copyright (c) 2016, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2016, 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 <set> | 5 #include <set> |
| 6 | 6 |
| 7 #include "vm/kernel_to_il.h" | 7 #include "vm/kernel_to_il.h" |
| 8 | 8 |
| 9 #include "vm/compiler.h" | 9 #include "vm/compiler.h" |
| 10 #include "vm/intermediate_language.h" | 10 #include "vm/intermediate_language.h" |
| (...skipping 743 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 754 #ifdef DEBUG | 754 #ifdef DEBUG |
| 755 Function& function = | 755 Function& function = |
| 756 Function::Handle(Z, parsed_function_->function().raw()); | 756 Function::Handle(Z, parsed_function_->function().raw()); |
| 757 while (function.IsClosureFunction()) { | 757 while (function.IsClosureFunction()) { |
| 758 function = function.parent_function(); | 758 function = function.parent_function(); |
| 759 } | 759 } |
| 760 ASSERT(function.IsFactory()); | 760 ASSERT(function.IsFactory()); |
| 761 #endif | 761 #endif |
| 762 instructions += LoadLocal(scopes_->type_arguments_variable); | 762 instructions += LoadLocal(scopes_->type_arguments_variable); |
| 763 } else if (scopes_->this_variable != NULL && | 763 } else if (scopes_->this_variable != NULL && |
| 764 active_class_.class_type_parameters > 0) { | 764 active_class_.ClassTypeParameterCount(Z) > 0) { |
| 765 ASSERT(!parsed_function_->function().IsFactory()); | 765 ASSERT(!parsed_function_->function().IsFactory()); |
| 766 intptr_t type_arguments_field_offset = | 766 intptr_t type_arguments_field_offset = |
| 767 active_class_.klass->type_arguments_field_offset(); | 767 active_class_.klass->type_arguments_field_offset(); |
| 768 ASSERT(type_arguments_field_offset != dart::Class::kNoTypeArguments); | 768 ASSERT(type_arguments_field_offset != dart::Class::kNoTypeArguments); |
| 769 | 769 |
| 770 instructions += LoadLocal(scopes_->this_variable); | 770 instructions += LoadLocal(scopes_->this_variable); |
| 771 instructions += LoadField(type_arguments_field_offset); | 771 instructions += LoadField(type_arguments_field_offset); |
| 772 } else { | 772 } else { |
| 773 instructions += NullConstant(); | 773 instructions += NullConstant(); |
| 774 } | 774 } |
| (...skipping 1580 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2355 StreamingFlowGraphBuilder streaming_flow_graph_builder( | 2355 StreamingFlowGraphBuilder streaming_flow_graph_builder( |
| 2356 &helper, zone_, script.kernel_data(), script.kernel_data_size()); | 2356 &helper, zone_, script.kernel_data(), script.kernel_data_size()); |
| 2357 return streaming_flow_graph_builder.GetLineStartsFor( | 2357 return streaming_flow_graph_builder.GetLineStartsFor( |
| 2358 script.kernel_script_index()); | 2358 script.kernel_script_index()); |
| 2359 } | 2359 } |
| 2360 | 2360 |
| 2361 } // namespace kernel | 2361 } // namespace kernel |
| 2362 } // namespace dart | 2362 } // namespace dart |
| 2363 | 2363 |
| 2364 #endif // !defined(DART_PRECOMPILED_RUNTIME) | 2364 #endif // !defined(DART_PRECOMPILED_RUNTIME) |
| OLD | NEW |