| Index: pkg/compiler/lib/src/compiler.dart
|
| diff --git a/pkg/compiler/lib/src/compiler.dart b/pkg/compiler/lib/src/compiler.dart
|
| index 673fa5ba79aac85fd2d5d9284b569acc53350f70..4646013fb6bf24eeb9adbc2abb3bdad333b56854 100644
|
| --- a/pkg/compiler/lib/src/compiler.dart
|
| +++ b/pkg/compiler/lib/src/compiler.dart
|
| @@ -273,7 +273,9 @@ abstract class Backend {
|
| return new native.NativeEnqueuer();
|
| }
|
|
|
| - void assembleProgram();
|
| + /// Generates the output and returns the total size of the generated code.
|
| + int assembleProgram();
|
| +
|
| List<CompilerTask> get tasks;
|
|
|
| void onResolutionComplete() {}
|
| @@ -627,7 +629,6 @@ abstract class Compiler implements DiagnosticListener {
|
| final Stopwatch totalCompileTime = new Stopwatch();
|
| int nextFreeClassId = 0;
|
| World world;
|
| - String assembledCode;
|
| Types types;
|
| _CompilerCoreTypes _coreTypes;
|
|
|
| @@ -1079,8 +1080,6 @@ abstract class Compiler implements DiagnosticListener {
|
| }
|
|
|
| void internalError(Spannable node, reason) {
|
| - assembledCode = null; // Compilation failed. Make sure that we
|
| - // don't return a bogus result.
|
| String message = tryToString(reason);
|
| reportDiagnosticInternal(
|
| node, MessageKind.GENERIC, {'text': message}, api.Diagnostic.CRASH);
|
| @@ -1615,17 +1614,14 @@ abstract class Compiler implements DiagnosticListener {
|
|
|
| if (compilationFailed) return;
|
|
|
| - backend.assembleProgram();
|
| + int programSize = backend.assembleProgram();
|
|
|
| if (dumpInfo) {
|
| + dumpInfoTask.reportSize(programSize);
|
| dumpInfoTask.dumpInfo();
|
| }
|
|
|
| checkQueues();
|
| -
|
| - if (compilationFailed) {
|
| - assembledCode = null; // Signals failure.
|
| - }
|
| }
|
|
|
| void fullyEnqueueLibrary(LibraryElement library, Enqueuer world) {
|
|
|