| 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 #include "vm/flow_graph_builder.h" | 5 #include "vm/flow_graph_builder.h" |
| 6 | 6 |
| 7 #include "lib/invocation_mirror.h" | 7 #include "lib/invocation_mirror.h" |
| 8 #include "vm/ast_printer.h" | 8 #include "vm/ast_printer.h" |
| 9 #include "vm/bit_vector.h" | 9 #include "vm/bit_vector.h" |
| 10 #include "vm/code_descriptors.h" | 10 #include "vm/code_descriptors.h" |
| (...skipping 3429 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 3440 ASSERT(!no_such_method_func.IsNull()); | 3440 ASSERT(!no_such_method_func.IsNull()); |
| 3441 ZoneGrowableArray<PushArgumentInstr*>* push_arguments = | 3441 ZoneGrowableArray<PushArgumentInstr*>* push_arguments = |
| 3442 new ZoneGrowableArray<PushArgumentInstr*>(2); | 3442 new ZoneGrowableArray<PushArgumentInstr*>(2); |
| 3443 BuildPushArguments(*args, push_arguments); | 3443 BuildPushArguments(*args, push_arguments); |
| 3444 return new StaticCallInstr(args_pos, | 3444 return new StaticCallInstr(args_pos, |
| 3445 no_such_method_func, | 3445 no_such_method_func, |
| 3446 Object::null_array(), | 3446 Object::null_array(), |
| 3447 push_arguments, | 3447 push_arguments, |
| 3448 owner()->ic_data_array()); | 3448 owner()->ic_data_array()); |
| 3449 } | 3449 } |
| 3450 |
| 3451 |
| 3450 StaticCallInstr* EffectGraphVisitor::BuildThrowNoSuchMethodError( | 3452 StaticCallInstr* EffectGraphVisitor::BuildThrowNoSuchMethodError( |
| 3451 intptr_t token_pos, | 3453 intptr_t token_pos, |
| 3452 const Class& function_class, | 3454 const Class& function_class, |
| 3453 const String& function_name, | 3455 const String& function_name, |
| 3454 int invocation_type) { | 3456 int invocation_type) { |
| 3455 ZoneGrowableArray<PushArgumentInstr*>* arguments = | 3457 ZoneGrowableArray<PushArgumentInstr*>* arguments = |
| 3456 new ZoneGrowableArray<PushArgumentInstr*>(); | 3458 new ZoneGrowableArray<PushArgumentInstr*>(); |
| 3457 // Object receiver. | 3459 // Object receiver. |
| 3458 // TODO(regis): For now, we pass a class literal of the unresolved | 3460 // TODO(regis): For now, we pass a class literal of the unresolved |
| 3459 // method's owner, but this is not specified and will probably change. | 3461 // method's owner, but this is not specified and will probably change. |
| (...skipping 166 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 3626 intptr_t len = OS::SNPrint(NULL, 0, kFormat, function_name, reason) + 1; | 3628 intptr_t len = OS::SNPrint(NULL, 0, kFormat, function_name, reason) + 1; |
| 3627 char* chars = Isolate::Current()->current_zone()->Alloc<char>(len); | 3629 char* chars = Isolate::Current()->current_zone()->Alloc<char>(len); |
| 3628 OS::SNPrint(chars, len, kFormat, function_name, reason); | 3630 OS::SNPrint(chars, len, kFormat, function_name, reason); |
| 3629 const Error& error = Error::Handle( | 3631 const Error& error = Error::Handle( |
| 3630 LanguageError::New(String::Handle(String::New(chars)))); | 3632 LanguageError::New(String::Handle(String::New(chars)))); |
| 3631 Isolate::Current()->long_jump_base()->Jump(1, error); | 3633 Isolate::Current()->long_jump_base()->Jump(1, error); |
| 3632 } | 3634 } |
| 3633 | 3635 |
| 3634 | 3636 |
| 3635 } // namespace dart | 3637 } // namespace dart |
| OLD | NEW |