| OLD | NEW |
| 1 // Copyright (c) 2013, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2013, 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_H_ | 5 #ifndef VM_FLOW_GRAPH_H_ |
| 6 #define VM_FLOW_GRAPH_H_ | 6 #define VM_FLOW_GRAPH_H_ |
| 7 | 7 |
| 8 #include "vm/bit_vector.h" | 8 #include "vm/bit_vector.h" |
| 9 #include "vm/growable_array.h" | 9 #include "vm/growable_array.h" |
| 10 #include "vm/hash_map.h" | 10 #include "vm/hash_map.h" |
| (...skipping 355 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 366 void ComputeIsReceiverRecursive(PhiInstr* phi, | 366 void ComputeIsReceiverRecursive(PhiInstr* phi, |
| 367 GrowableArray<PhiInstr*>* unmark) const; | 367 GrowableArray<PhiInstr*>* unmark) const; |
| 368 | 368 |
| 369 void OptimizeLeftShiftBitAndSmiOp( | 369 void OptimizeLeftShiftBitAndSmiOp( |
| 370 ForwardInstructionIterator* current_iterator, | 370 ForwardInstructionIterator* current_iterator, |
| 371 Definition* bit_and_instr, | 371 Definition* bit_and_instr, |
| 372 Definition* left_instr, | 372 Definition* left_instr, |
| 373 Definition* right_instr); | 373 Definition* right_instr); |
| 374 | 374 |
| 375 void TryMergeTruncDivMod(GrowableArray<BinarySmiOpInstr*>* merge_candidates); | 375 void TryMergeTruncDivMod(GrowableArray<BinarySmiOpInstr*>* merge_candidates); |
| 376 void TryMergeMathUnary(GrowableArray<MathUnaryInstr*>* merge_candidates); | 376 void TryMergeMathUnary( |
| 377 GrowableArray<InvokeMathCFunctionInstr*>* merge_candidates); |
| 377 | 378 |
| 378 void AppendExtractNthOutputForMerged(Definition* instr, intptr_t ix, | 379 void AppendExtractNthOutputForMerged(Definition* instr, intptr_t ix, |
| 379 Representation rep, intptr_t cid); | 380 Representation rep, intptr_t cid); |
| 380 | 381 |
| 381 Thread* thread_; | 382 Thread* thread_; |
| 382 | 383 |
| 383 // DiscoverBlocks computes parent_ and assigned_vars_ which are then used | 384 // DiscoverBlocks computes parent_ and assigned_vars_ which are then used |
| 384 // if/when computing SSA. | 385 // if/when computing SSA. |
| 385 GrowableArray<intptr_t> parent_; | 386 GrowableArray<intptr_t> parent_; |
| 386 GrowableArray<BitVector*> assigned_vars_; | 387 GrowableArray<BitVector*> assigned_vars_; |
| (...skipping 172 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 559 | 560 |
| 560 private: | 561 private: |
| 561 GrowableArray<Definition*> defs_; | 562 GrowableArray<Definition*> defs_; |
| 562 BitVector* contains_vector_; | 563 BitVector* contains_vector_; |
| 563 }; | 564 }; |
| 564 | 565 |
| 565 | 566 |
| 566 } // namespace dart | 567 } // namespace dart |
| 567 | 568 |
| 568 #endif // VM_FLOW_GRAPH_H_ | 569 #endif // VM_FLOW_GRAPH_H_ |
| OLD | NEW |