| Index: pkg/compiler/lib/src/js_emitter/code_emitter_task.dart
|
| diff --git a/pkg/compiler/lib/src/js_emitter/code_emitter_task.dart b/pkg/compiler/lib/src/js_emitter/code_emitter_task.dart
|
| index 6dcc012b766cf245b6efde8babe220ab256d4df1..8c2cbda545e0ac64afa65b2bd8fcd06059a8af30 100644
|
| --- a/pkg/compiler/lib/src/js_emitter/code_emitter_task.dart
|
| +++ b/pkg/compiler/lib/src/js_emitter/code_emitter_task.dart
|
| @@ -59,11 +59,11 @@ class CodeEmitterTask extends CompilerTask {
|
| jsAst.Expression isolateStaticClosureAccess(Element element) {
|
| return emitter.isolateStaticClosureAccess(element);
|
| }
|
| -
|
| +
|
| jsAst.Expression isolateLazyInitializerAccess(Element element) {
|
| return emitter.isolateLazyInitializerAccess(element);
|
| }
|
| -
|
| +
|
| jsAst.Expression generateEmbeddedGlobalAccess(String global) {
|
| return emitter.generateEmbeddedGlobalAccess(global);
|
| }
|
| @@ -75,15 +75,15 @@ class CodeEmitterTask extends CompilerTask {
|
| jsAst.Expression staticFieldAccess(Element e) {
|
| return emitter.staticFunctionAccess(e);
|
| }
|
| -
|
| +
|
| jsAst.Expression staticFunctionAccess(Element e) {
|
| return emitter.staticFunctionAccess(e);
|
| }
|
| -
|
| +
|
| jsAst.Expression classAccess(Element e) {
|
| return emitter.classAccess(e);
|
| }
|
| -
|
| +
|
| jsAst.Expression typedefAccess(Element e) {
|
| return emitter.typedefAccess(e);
|
| }
|
| @@ -360,8 +360,8 @@ class CodeEmitterTask extends CompilerTask {
|
| computeNeededLibraries();
|
| }
|
|
|
| - void assembleProgram() {
|
| - measure(() {
|
| + int assembleProgram() {
|
| + return measure(() {
|
| emitter.invalidateCaches();
|
|
|
| computeAllNeededEntities();
|
| @@ -370,27 +370,28 @@ class CodeEmitterTask extends CompilerTask {
|
| if (USE_NEW_EMITTER) {
|
| program = new ProgramBuilder(compiler, namer, this).buildProgram();
|
| }
|
| - emitter.emitProgram(program);
|
| + return emitter.emitProgram(program);
|
| });
|
| }
|
| }
|
|
|
| abstract class Emitter {
|
| - void emitProgram(Program program);
|
| + /// Emits [program] and returns the size of the generated output.
|
| + int emitProgram(Program program);
|
|
|
| jsAst.Expression isolateLazyInitializerAccess(Element element);
|
| jsAst.Expression isolateStaticClosureAccess(Element element);
|
| jsAst.Expression generateEmbeddedGlobalAccess(String global);
|
| jsAst.Expression constantReference(ConstantValue value);
|
| jsAst.PropertyAccess staticFunctionAccess(Element element);
|
| -
|
| +
|
| // TODO(zarah): Split into more fine-grained accesses.
|
| - /// Generates access to the js constructor of the class represented by
|
| + /// Generates access to the js constructor of the class represented by
|
| /// [element]
|
| jsAst.PropertyAccess classAccess(Element element);
|
| jsAst.PropertyAccess typedefAccess(Element element);
|
| jsAst.PropertyAccess staticFieldAccess(Element element);
|
| -
|
| +
|
|
|
| int compareConstants(ConstantValue a, ConstantValue b);
|
| bool isConstantInlinedOrAlreadyEmitted(ConstantValue constant);
|
|
|