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 part of ssa; | 5 part of ssa; |
6 | 6 |
7 /** | 7 /** |
8 * Replaces some instructions with specialized versions to make codegen easier. | 8 * Replaces some instructions with specialized versions to make codegen easier. |
9 * Caches codegen information on nodes. | 9 * Caches codegen information on nodes. |
10 */ | 10 */ |
(...skipping 683 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
694 } | 694 } |
695 | 695 |
696 // If [thenInput] is defined in the first predecessor, then it is only used | 696 // If [thenInput] is defined in the first predecessor, then it is only used |
697 // by [phi] and can be generated at use site. | 697 // by [phi] and can be generated at use site. |
698 if (identical(thenInput.block, end.predecessors[0])) { | 698 if (identical(thenInput.block, end.predecessors[0])) { |
699 assert(thenInput.usedBy.length == 1); | 699 assert(thenInput.usedBy.length == 1); |
700 markAsGenerateAtUseSite(thenInput); | 700 markAsGenerateAtUseSite(thenInput); |
701 } | 701 } |
702 } | 702 } |
703 } | 703 } |
OLD | NEW |