| Index: pkg/compiler/lib/src/cps_ir/cps_ir_tracer.dart
|
| diff --git a/pkg/compiler/lib/src/cps_ir/cps_ir_tracer.dart b/pkg/compiler/lib/src/cps_ir/cps_ir_tracer.dart
|
| index c68ce94770cdca468927646e77f4d66f25054964..c4d5f1f0fd53144106b4512c83a93d530d9b637d 100644
|
| --- a/pkg/compiler/lib/src/cps_ir/cps_ir_tracer.dart
|
| +++ b/pkg/compiler/lib/src/cps_ir/cps_ir_tracer.dart
|
| @@ -251,6 +251,31 @@ class IRTracer extends TracerUtil implements cps_ir.Visitor {
|
| return "IsTrue(${names.name(node.value.definition)})";
|
| }
|
|
|
| + visitSetField(cps_ir.SetField node) {
|
| + String dummy = names.name(node);
|
| + String object = formatReference(node.object);
|
| + String field = node.field.name;
|
| + String value = formatReference(node.value);
|
| + printStmt(dummy, 'SetField $object.$field = $value');
|
| + visit(node.body);
|
| + }
|
| +
|
| + visitGetField(cps_ir.GetField node) {
|
| + String object = formatReference(node.object);
|
| + String field = node.field.name;
|
| + return 'GetField($object.$field)';
|
| + }
|
| +
|
| + visitCreateBox(cps_ir.CreateBox node) {
|
| + return 'CreateBox';
|
| + }
|
| +
|
| + visitCreateClosureClass(cps_ir.CreateClosureClass node) {
|
| + String className = node.classElement.name;
|
| + String arguments = node.arguments.map(formatReference).join(', ');
|
| + return 'CreateClosureClass $className ($arguments)';
|
| + }
|
| +
|
| visitIdentical(cps_ir.Identical node) {
|
| String left = formatReference(node.left);
|
| String right = formatReference(node.right);
|
| @@ -258,7 +283,7 @@ class IRTracer extends TracerUtil implements cps_ir.Visitor {
|
| }
|
|
|
| visitInterceptor(cps_ir.Interceptor node) {
|
| - return "Interceptor(${node.input})";
|
| + return "Interceptor(${formatReference(node.input)})";
|
| }
|
|
|
| visitThis(cps_ir.This node) {
|
| @@ -432,6 +457,10 @@ class BlockCollector extends cps_ir.Visitor {
|
| visit(exp.body);
|
| }
|
|
|
| + visitSetField(cps_ir.SetField exp) {
|
| + visit(exp.body);
|
| + }
|
| +
|
| visitDeclareFunction(cps_ir.DeclareFunction exp) {
|
| visit(exp.body);
|
| }
|
|
|