anchor.diff:                      ..append(makeBlockRef(instr.true_successor))
                       ..appendText(", ")
                       ..append(makeBlockRef(instr.false_successor))
  -                    ..appendText(")"));
  +                    ..appendText(")"), fields: fieldsFor(instr));
         ln.gutter.parentNode.classes.add("${ctx.ns}-gutter");
         ln.text.parentNode.classes.add("${ctx.ns}-line");
       }
  
positive.code: 
        final line = format(ctx, opcode, operands);
  
        var fields = null;
  
        if (ir.profile != null && ir.profile.hirTicks.containsKey(instr)) {
          final ticks = ir.profile.hirTicks[instr];
          fields = {
            "ticks": new Element.tag("b")
              ..appendText("${ticks.toStringAsFixed(2)}")
              ..style.color = "${brewer.colorFor(ticks, 0, ir.profile.maxHirTicks)}"
          };
        }
  
        var ln = add(gutter, line, id: id, fields: fields);
        ln.gutter.parentNode.classes.add("${ctx.ns}-gutter");
        ln.text.parentNode.classes.add("${ctx.ns}-line");
        return ln;
  
negative.code:       new SpanElement()..append(formatOpcode(ctx, opcode))
                         ..appendText(" ")
                         ..append(new SpanElement()..nodes.addAll(operands.map(ctx.format)));
  
      fieldsFor(instr) {
        var fields = null;
        if (ir.profile != null && ir.profile.hirTicks.containsKey(instr)) {
          final ticks = ir.profile.hirTicks[instr];
          fields = {
            "ticks": new Element.tag("b")
              ..appendText("${ticks.toStringAsFixed(2)}")
              ..style.color = "${brewer.colorFor(ticks, 0, ir.profile.maxHirTicks)}"
          };
        }
        return fields;
      }
  
      addEx(ctx, instr) {
        // id, opcode, operands
  