| OLD | NEW |
| 1 library dart2js.cps_ir.loop_effects; | 1 library dart2js.cps_ir.loop_effects; |
| 2 | 2 |
| 3 import 'cps_ir_nodes.dart'; | 3 import 'cps_ir_nodes.dart'; |
| 4 import 'loop_hierarchy.dart'; | 4 import 'loop_hierarchy.dart'; |
| 5 import 'type_mask_system.dart'; | |
| 6 import '../universe/side_effects.dart'; | 5 import '../universe/side_effects.dart'; |
| 7 import '../elements/elements.dart'; | 6 import '../elements/elements.dart'; |
| 8 import '../world.dart'; | 7 import '../world.dart'; |
| 9 | 8 |
| 10 /// Determines which the [SideEffects] that may occur during each loop in | 9 /// Determines which the [SideEffects] that may occur during each loop in |
| 11 /// a given function, in addition to whether the loop may change the length | 10 /// a given function, in addition to whether the loop may change the length |
| 12 /// of an indexable object. | 11 /// of an indexable object. |
| 13 /// | 12 /// |
| 14 /// TODO(asgerf): Make length a flag on [SideEffects] for better precision and | 13 /// TODO(asgerf): Make length a flag on [SideEffects] for better precision and |
| 15 /// so we don't need to special case the length in this class. | 14 /// so we don't need to special case the length in this class. |
| (...skipping 161 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 177 | 176 |
| 178 void visitYield(Yield node) { | 177 void visitYield(Yield node) { |
| 179 addAllSideEffects(); | 178 addAllSideEffects(); |
| 180 } | 179 } |
| 181 | 180 |
| 182 void visitApplyBuiltinMethod(ApplyBuiltinMethod node) { | 181 void visitApplyBuiltinMethod(ApplyBuiltinMethod node) { |
| 183 currentLoopSideEffects.setChangesIndex(); | 182 currentLoopSideEffects.setChangesIndex(); |
| 184 currentLoopChangesLength = true; // Push and pop. | 183 currentLoopChangesLength = true; // Push and pop. |
| 185 } | 184 } |
| 186 } | 185 } |
| OLD | NEW |