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 234 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
245 | 245 |
246 Value* BuildObjectAllocation(ConstructorCallNode* node); | 246 Value* BuildObjectAllocation(ConstructorCallNode* node); |
247 void BuildConstructorCall(ConstructorCallNode* node, | 247 void BuildConstructorCall(ConstructorCallNode* node, |
248 PushArgumentInstr* alloc_value); | 248 PushArgumentInstr* alloc_value); |
249 | 249 |
250 void BuildStoreContext(const LocalVariable& variable); | 250 void BuildStoreContext(const LocalVariable& variable); |
251 void BuildLoadContext(const LocalVariable& variable); | 251 void BuildLoadContext(const LocalVariable& variable); |
252 | 252 |
253 void BuildThrowNode(ThrowNode* node); | 253 void BuildThrowNode(ThrowNode* node); |
254 | 254 |
| 255 StaticCallInstr* BuildStaticNoSuchMethodCall( |
| 256 const Class& target_class, |
| 257 AstNode* receiver, |
| 258 const String& method_name, |
| 259 ArgumentListNode* method_arguments); |
| 260 |
255 void BuildStaticSetter(StaticSetterNode* node, bool result_is_needed); | 261 void BuildStaticSetter(StaticSetterNode* node, bool result_is_needed); |
256 Definition* BuildStoreStaticField(StoreStaticFieldNode* node, | 262 Definition* BuildStoreStaticField(StoreStaticFieldNode* node, |
257 bool result_is_needed); | 263 bool result_is_needed); |
258 | 264 |
259 ClosureCallInstr* BuildClosureCall(ClosureCallNode* node); | 265 ClosureCallInstr* BuildClosureCall(ClosureCallNode* node); |
260 | 266 |
261 Value* BuildNullValue(); | 267 Value* BuildNullValue(); |
262 | 268 |
263 private: | 269 private: |
264 // Specify a definition of the final result. Adds the definition to | 270 // Specify a definition of the final result. Adds the definition to |
(...skipping 127 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
392 // Output parameters. | 398 // Output parameters. |
393 GrowableArray<TargetEntryInstr**> true_successor_addresses_; | 399 GrowableArray<TargetEntryInstr**> true_successor_addresses_; |
394 GrowableArray<TargetEntryInstr**> false_successor_addresses_; | 400 GrowableArray<TargetEntryInstr**> false_successor_addresses_; |
395 | 401 |
396 intptr_t condition_token_pos_; | 402 intptr_t condition_token_pos_; |
397 }; | 403 }; |
398 | 404 |
399 } // namespace dart | 405 } // namespace dart |
400 | 406 |
401 #endif // VM_FLOW_GRAPH_BUILDER_H_ | 407 #endif // VM_FLOW_GRAPH_BUILDER_H_ |
OLD | NEW |