OLD | NEW |
1 // Copyright (c) 2014, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2014, 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 dart2js.optimizers; | 5 part of dart2js.optimizers; |
6 | 6 |
7 /// Eliminate redundant phis from the given [FunctionDefinition]. | 7 /// Eliminate redundant phis from the given [FunctionDefinition]. |
8 /// | 8 /// |
9 /// Phis in this case are [Continuations] together with corresponding | 9 /// Phis in this case are [Continuations] together with corresponding |
10 /// [InvokeContinuation]s. A [Continuation] parameter at position i is redundant | 10 /// [InvokeContinuation]s. A [Continuation] parameter at position i is redundant |
(...skipping 160 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
171 | 171 |
172 // Insert it just below the binding of definition. | 172 // Insert it just below the binding of definition. |
173 InteriorNode binding = definition.parent; | 173 InteriorNode binding = definition.parent; |
174 | 174 |
175 letCont.body = binding.body; | 175 letCont.body = binding.body; |
176 binding.body.parent = letCont; | 176 binding.body.parent = letCont; |
177 | 177 |
178 binding.body = letCont; | 178 binding.body = letCont; |
179 letCont.parent = binding; | 179 letCont.parent = binding; |
180 } | 180 } |
OLD | NEW |