Chromium Code Reviews| 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 import 'dart:async'; | 5 import 'dart:async'; |
| 6 import 'dart:io'; | 6 import 'dart:io'; |
| 7 | 7 |
| 8 import 'package:front_end/file_system.dart'; | 8 import 'package:front_end/file_system.dart'; |
| 9 import 'package:front_end/incremental_kernel_generator.dart'; | 9 import 'package:front_end/incremental_kernel_generator.dart'; |
| 10 import 'package:front_end/src/base/api_signature.dart'; | 10 import 'package:front_end/src/base/api_signature.dart'; |
| (...skipping 83 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 94 FileState entryLibrary = await _fsState.getFile(_entryPoint); | 94 FileState entryLibrary = await _fsState.getFile(_entryPoint); |
| 95 | 95 |
| 96 List<LibraryCycle> cycles = _logger.run('Compute library cycles', () { | 96 List<LibraryCycle> cycles = _logger.run('Compute library cycles', () { |
| 97 List<LibraryCycle> cycles = entryLibrary.topologicalOrder; | 97 List<LibraryCycle> cycles = entryLibrary.topologicalOrder; |
| 98 _logger.writeln('Computed ${cycles.length} cycles.'); | 98 _logger.writeln('Computed ${cycles.length} cycles.'); |
| 99 return cycles; | 99 return cycles; |
| 100 }); | 100 }); |
| 101 | 101 |
| 102 CanonicalName nameRoot = new CanonicalName.root(); | 102 CanonicalName nameRoot = new CanonicalName.root(); |
| 103 DillTarget dillTarget = | 103 DillTarget dillTarget = |
| 104 new DillTarget(new Ticker(isVerbose: false), _uriTranslator); | 104 new DillTarget(new Ticker(isVerbose: false), _uriTranslator, "vm"); |
|
scheglov
2017/05/22 16:05:06
Why not use new VmTarget() directly?
Why should we
ahe
2017/05/22 16:09:56
Because I'm assuming that this is an option that s
| |
| 105 | 105 |
| 106 List<_LibraryCycleResult> results = []; | 106 List<_LibraryCycleResult> results = []; |
| 107 await _logger.runAsync('Compute results for cycles', () async { | 107 await _logger.runAsync('Compute results for cycles', () async { |
| 108 for (LibraryCycle cycle in cycles) { | 108 for (LibraryCycle cycle in cycles) { |
| 109 _LibraryCycleResult result = | 109 _LibraryCycleResult result = |
| 110 await _compileCycle(nameRoot, dillTarget, cycle); | 110 await _compileCycle(nameRoot, dillTarget, cycle); |
| 111 results.add(result); | 111 results.add(result); |
| 112 } | 112 } |
| 113 }); | 113 }); |
| 114 | 114 |
| (...skipping 184 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 299 /// TODO(scheglov) Use API signatures. | 299 /// TODO(scheglov) Use API signatures. |
| 300 /// TODO(scheglov) Or use tree shaking and compute signatures of outlines. | 300 /// TODO(scheglov) Or use tree shaking and compute signatures of outlines. |
| 301 final String signature; | 301 final String signature; |
| 302 | 302 |
| 303 /// Kernel libraries for libraries in the [cycle]. Bodies of dependencies | 303 /// Kernel libraries for libraries in the [cycle]. Bodies of dependencies |
| 304 /// are not included, but but references to those dependencies are included. | 304 /// are not included, but but references to those dependencies are included. |
| 305 final List<Library> kernelLibraries; | 305 final List<Library> kernelLibraries; |
| 306 | 306 |
| 307 _LibraryCycleResult(this.cycle, this.signature, this.kernelLibraries); | 307 _LibraryCycleResult(this.cycle, this.signature, this.kernelLibraries); |
| 308 } | 308 } |
| OLD | NEW |