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_COMPILER_H_ | 5 #ifndef VM_FLOW_GRAPH_COMPILER_H_ |
6 #define VM_FLOW_GRAPH_COMPILER_H_ | 6 #define VM_FLOW_GRAPH_COMPILER_H_ |
7 | 7 |
8 #include "vm/allocation.h" | 8 #include "vm/allocation.h" |
9 #include "vm/assembler.h" | 9 #include "vm/assembler.h" |
10 #include "vm/code_descriptors.h" | 10 #include "vm/code_descriptors.h" |
(...skipping 322 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
333 Label* is_instance_lbl, | 333 Label* is_instance_lbl, |
334 Label* is_not_instance_lbl); | 334 Label* is_not_instance_lbl); |
335 void GenerateStringTypeCheck(Register kClassIdReg, | 335 void GenerateStringTypeCheck(Register kClassIdReg, |
336 Label* is_instance_lbl, | 336 Label* is_instance_lbl, |
337 Label* is_not_instance_lbl); | 337 Label* is_not_instance_lbl); |
338 void GenerateListTypeCheck(Register kClassIdReg, | 338 void GenerateListTypeCheck(Register kClassIdReg, |
339 Label* is_instance_lbl); | 339 Label* is_instance_lbl); |
340 | 340 |
341 void EmitComment(Instruction* instr); | 341 void EmitComment(Instruction* instr); |
342 | 342 |
| 343 void EmitEdgeCounter(); |
| 344 |
343 void EmitOptimizedInstanceCall(ExternalLabel* target_label, | 345 void EmitOptimizedInstanceCall(ExternalLabel* target_label, |
344 const ICData& ic_data, | 346 const ICData& ic_data, |
345 intptr_t argument_count, | 347 intptr_t argument_count, |
346 intptr_t deopt_id, | 348 intptr_t deopt_id, |
347 intptr_t token_pos, | 349 intptr_t token_pos, |
348 LocationSummary* locs); | 350 LocationSummary* locs); |
349 | 351 |
350 void EmitInstanceCall(ExternalLabel* target_label, | 352 void EmitInstanceCall(ExternalLabel* target_label, |
351 const ICData& ic_data, | 353 const ICData& ic_data, |
352 intptr_t argument_count, | 354 intptr_t argument_count, |
(...skipping 251 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
604 // that should be used when deoptimizing we store it in this variable. | 606 // that should be used when deoptimizing we store it in this variable. |
605 // In future AddDeoptStub should be moved out of the instruction template. | 607 // In future AddDeoptStub should be moved out of the instruction template. |
606 Environment* pending_deoptimization_env_; | 608 Environment* pending_deoptimization_env_; |
607 | 609 |
608 DISALLOW_COPY_AND_ASSIGN(FlowGraphCompiler); | 610 DISALLOW_COPY_AND_ASSIGN(FlowGraphCompiler); |
609 }; | 611 }; |
610 | 612 |
611 } // namespace dart | 613 } // namespace dart |
612 | 614 |
613 #endif // VM_FLOW_GRAPH_COMPILER_H_ | 615 #endif // VM_FLOW_GRAPH_COMPILER_H_ |
OLD | NEW |