anchor.diff:    /// Wraps the statement in a named function to that it shows up as a unit in
     /// profiles.
     // TODO(sra): Should this be conditional?
  -  js.Statement wrapPhase(String name, js.Statement statement) {
  -    return js.js.statement('(function #(){#})();', [name, statement]);
  +  js.Statement wrapPhase(String name, List<js.Statement> statements) {
  +    js.Block block = new js.Block(statements);
  +    if (statements.isEmpty) return block;
  +    return js.js.statement('(function #(){#})();', [name, block]);
     }
   
     /// Emits the section that installs tear-off getters.
  
positive.code:       ]);
      });
  
      return wrapPhase('lazyInitializers', new js.Block(statements.toList()));
    }
  
    /// Emits the embedded globals that are needed for deferred loading.
  
negative.code:         js.js.statement("setOrUpdateLeafTags(#);", js.objectLiteral(leafTags)));
      statements.addAll(subclassAssignments);
  
      return wrapPhase('nativeSupport', statements);
    }
  }
  