OLD | NEW |
1 // Copyright (c) 2017, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2017, the Dart project authors. Please see the AUTHORS file |
2 // for details. All rights reserved. Use of this source code is governed by a | 2 // for details. All rights reserved. Use of this source code is governed by a |
3 // BSD-style license that can be found in the LICENSE file. | 3 // BSD-style license that can be found in the LICENSE file. |
4 | 4 |
5 /// Additions to Fasta for generating .dill (Kernel IR) files with dart2js patch | 5 /// Additions to Fasta for generating .dill (Kernel IR) files with dart2js patch |
6 /// files and native hooks. | 6 /// files and native hooks. |
7 library compiler.src.kernel.fasta_support; | 7 library compiler.src.kernel.fasta_support; |
8 | 8 |
9 // TODO(sigmund): get rid of this file. Fasta should be agnostic of the | 9 // TODO(sigmund): get rid of this file. Fasta should be agnostic of the |
10 // target platform, at which point this should not be necessary. In particular, | 10 // target platform, at which point this should not be necessary. In particular, |
(...skipping 27 matching lines...) Expand all Loading... |
38 {Uri outlineOutput, Uri packages}) async { | 38 {Uri outlineOutput, Uri packages}) async { |
39 Uri deps = Uri.base.resolveUri(new Uri.file("${fullOutput.toFilePath()}.d")); | 39 Uri deps = Uri.base.resolveUri(new Uri.file("${fullOutput.toFilePath()}.d")); |
40 TranslateUri uriTranslator = await TranslateUri.parse( | 40 TranslateUri uriTranslator = await TranslateUri.parse( |
41 PhysicalFileSystem.instance, patchedSdk, packages); | 41 PhysicalFileSystem.instance, patchedSdk, packages); |
42 var ticker = new Ticker(isVerbose: false); | 42 var ticker = new Ticker(isVerbose: false); |
43 var dillTarget = new DillTargetForDart2js(ticker, uriTranslator); | 43 var dillTarget = new DillTargetForDart2js(ticker, uriTranslator); |
44 var kernelTarget = | 44 var kernelTarget = |
45 new KernelTargetForDart2js(dillTarget, uriTranslator, false); | 45 new KernelTargetForDart2js(dillTarget, uriTranslator, false); |
46 | 46 |
47 kernelTarget.read(Uri.parse("dart:core")); | 47 kernelTarget.read(Uri.parse("dart:core")); |
48 await dillTarget.computeOutline(); | 48 await dillTarget.buildOutlines(); |
49 await kernelTarget.computeOutline(); | 49 await kernelTarget.buildOutlines(); |
50 await kernelTarget.writeOutline(outlineOutput); | 50 await kernelTarget.writeOutline(outlineOutput); |
51 | 51 |
52 if (exitCode != 0) return null; | 52 if (exitCode != 0) return null; |
| 53 await kernelTarget.buildProgram(); |
53 await kernelTarget.writeProgram(fullOutput); | 54 await kernelTarget.writeProgram(fullOutput); |
54 await kernelTarget.writeDepsFile(fullOutput, deps); | 55 await kernelTarget.writeDepsFile(fullOutput, deps); |
55 } | 56 } |
56 | 57 |
57 /// Extends the internal fasta [CompileTask] to use a dart2js-aware [DillTarget] | 58 /// Extends the internal fasta [CompileTask] to use a dart2js-aware [DillTarget] |
58 /// and [KernelTarget]. | 59 /// and [KernelTarget]. |
59 class Dart2jsCompileTask extends CompileTask { | 60 class Dart2jsCompileTask extends CompileTask { |
60 Dart2jsCompileTask(CompilerContext c, Ticker ticker) : super(c, ticker); | 61 Dart2jsCompileTask(CompilerContext c, Ticker ticker) : super(c, ticker); |
61 | 62 |
62 @override | 63 @override |
(...skipping 81 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
144 'dart:_native_typed_data', | 145 'dart:_native_typed_data', |
145 'dart:_internal', | 146 'dart:_internal', |
146 'dart:_js_helper', | 147 'dart:_js_helper', |
147 'dart:_interceptors', | 148 'dart:_interceptors', |
148 'dart:_foreign_helper', | 149 'dart:_foreign_helper', |
149 'dart:_js_mirrors', | 150 'dart:_js_mirrors', |
150 'dart:_js_names', | 151 'dart:_js_names', |
151 'dart:_js_embedded_names', | 152 'dart:_js_embedded_names', |
152 'dart:_isolate_helper', | 153 'dart:_isolate_helper', |
153 ]; | 154 ]; |
OLD | NEW |