| Index: pkg/compiler/lib/src/cps_ir/type_propagation.dart
|
| diff --git a/pkg/compiler/lib/src/cps_ir/type_propagation.dart b/pkg/compiler/lib/src/cps_ir/type_propagation.dart
|
| index c0cdcb134e2529cace6538acf902a6a724f1df64..28795ca3e39e49cc0c0370cf5a29379b14f7fa43 100644
|
| --- a/pkg/compiler/lib/src/cps_ir/type_propagation.dart
|
| +++ b/pkg/compiler/lib/src/cps_ir/type_propagation.dart
|
| @@ -829,6 +829,23 @@ class _TypePropagationVisitor<T> implements Visitor {
|
| }
|
| }
|
|
|
| + void visitGetStatic(GetStatic node) {
|
| + setValue(node, nonConstant());
|
| + }
|
| +
|
| + void visitSetStatic(SetStatic node) {
|
| + setReachable(node.body);
|
| + }
|
| +
|
| + void visitGetLazyStatic(GetLazyStatic node) {
|
| + Continuation cont = node.continuation.definition;
|
| + setReachable(cont);
|
| +
|
| + assert(cont.parameters.length == 1);
|
| + Parameter returnValue = cont.parameters[0];
|
| + setValue(returnValue, nonConstant());
|
| + }
|
| +
|
| // Conditions.
|
|
|
| void visitIsTrue(IsTrue node) {
|
| @@ -872,14 +889,6 @@ class _TypePropagationVisitor<T> implements Visitor {
|
| setReachable(node.body);
|
| }
|
|
|
| - void visitGetStatic(GetStatic node) {
|
| - setValue(node, nonConstant());
|
| - }
|
| -
|
| - void visitSetStatic(SetStatic node) {
|
| - setReachable(node.body);
|
| - }
|
| -
|
| void visitCreateBox(CreateBox node) {
|
| setValue(node, nonConstant());
|
| }
|
|
|