Index: pkg/compiler/lib/src/cps_ir/cps_ir_builder_task.dart |
diff --git a/pkg/compiler/lib/src/cps_ir/cps_ir_builder_task.dart b/pkg/compiler/lib/src/cps_ir/cps_ir_builder_task.dart |
index 2c4fa8edf7c115c5065b881114174ca169c2e5d5..3ecb2745ff0ca6199dc76d99e6324a4351623e6e 100644 |
--- a/pkg/compiler/lib/src/cps_ir/cps_ir_builder_task.dart |
+++ b/pkg/compiler/lib/src/cps_ir/cps_ir_builder_task.dart |
@@ -3207,7 +3207,7 @@ class JsIrBuilderVisitor extends IrBuilderVisitor { |
} |
return irBuilder.buildForeignCode( |
js.js.expressionTemplateYielding( |
- backend.emitter.staticFunctionAccess(function)), |
+ backend.emitter.staticFunctionAccess(closure)), |
<ir.Primitive>[], |
NativeBehavior.PURE, |
dependency: closure); |
@@ -3309,6 +3309,16 @@ class JsIrBuilderVisitor extends IrBuilderVisitor { |
const <ir.Primitive>[], |
NativeBehavior.PURE); |
+ case 'JS_SET_STATIC_STATE': |
+ validateArgumentCount(exactly: 1); |
+ |
+ ir.Primitive value = visit(argumentNodes.single); |
+ String isolateName = backend.namer.staticStateHolder; |
+ return irBuilder.buildForeignCode( |
+ js.js.parseForeignJS("$isolateName = #"), |
+ <ir.Primitive>[value], |
+ NativeBehavior.PURE); |
+ |
case 'JS_CALL_IN_ISOLATE': |
validateArgumentCount(exactly: 2); |