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 #ifndef VM_FLOW_GRAPH_BUILDER_H_ | 5 #ifndef VM_FLOW_GRAPH_BUILDER_H_ |
6 #define VM_FLOW_GRAPH_BUILDER_H_ | 6 #define VM_FLOW_GRAPH_BUILDER_H_ |
7 | 7 |
8 #include "vm/allocation.h" | 8 #include "vm/allocation.h" |
9 #include "vm/ast.h" | 9 #include "vm/ast.h" |
10 #include "vm/growable_array.h" | 10 #include "vm/growable_array.h" |
(...skipping 346 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
357 void BuildSaveContext(const LocalVariable& variable); | 357 void BuildSaveContext(const LocalVariable& variable); |
358 void BuildRestoreContext(const LocalVariable& variable); | 358 void BuildRestoreContext(const LocalVariable& variable); |
359 | 359 |
360 void BuildThrowNode(ThrowNode* node); | 360 void BuildThrowNode(ThrowNode* node); |
361 | 361 |
362 StaticCallInstr* BuildStaticNoSuchMethodCall( | 362 StaticCallInstr* BuildStaticNoSuchMethodCall( |
363 const Class& target_class, | 363 const Class& target_class, |
364 AstNode* receiver, | 364 AstNode* receiver, |
365 const String& method_name, | 365 const String& method_name, |
366 ArgumentListNode* method_arguments, | 366 ArgumentListNode* method_arguments, |
367 bool save_last_arg); | 367 bool save_last_arg, |
| 368 bool is_super_invocation); |
368 | 369 |
369 StaticCallInstr* BuildThrowNoSuchMethodError( | 370 StaticCallInstr* BuildThrowNoSuchMethodError( |
370 intptr_t token_pos, | 371 intptr_t token_pos, |
371 const Class& function_class, | 372 const Class& function_class, |
372 const String& function_name, | 373 const String& function_name, |
373 ArgumentListNode* function_arguments, | 374 ArgumentListNode* function_arguments, |
374 int invocation_type); | 375 int invocation_type); |
375 | 376 |
376 void BuildStaticSetter(StaticSetterNode* node, bool result_is_needed); | 377 void BuildStaticSetter(StaticSetterNode* node, bool result_is_needed); |
377 Definition* BuildStoreStaticField(StoreStaticFieldNode* node, | 378 Definition* BuildStoreStaticField(StoreStaticFieldNode* node, |
(...skipping 147 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
525 // Output parameters. | 526 // Output parameters. |
526 GrowableArray<TargetEntryInstr**> true_successor_addresses_; | 527 GrowableArray<TargetEntryInstr**> true_successor_addresses_; |
527 GrowableArray<TargetEntryInstr**> false_successor_addresses_; | 528 GrowableArray<TargetEntryInstr**> false_successor_addresses_; |
528 | 529 |
529 intptr_t condition_token_pos_; | 530 intptr_t condition_token_pos_; |
530 }; | 531 }; |
531 | 532 |
532 } // namespace dart | 533 } // namespace dart |
533 | 534 |
534 #endif // VM_FLOW_GRAPH_BUILDER_H_ | 535 #endif // VM_FLOW_GRAPH_BUILDER_H_ |
OLD | NEW |