Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(284)

Side by Side Diff: tests/compiler/dart2js/kernel/closed_world_test.dart

Issue 2735763002: Create ResolutionEnqueuer after library loading. (Closed)
Patch Set: Fix. Created 3 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright (c) 2016, the Dart project authors. Please see the AUTHORS file 1 // Copyright (c) 2016, 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 // Tests that the closed world computed from [WorldImpact]s derived from kernel 5 // Tests that the closed world computed from [WorldImpact]s derived from kernel
6 // is equivalent to the original computed from resolution. 6 // is equivalent to the original computed from resolution.
7 library dart2js.kernel.closed_world_test; 7 library dart2js.kernel.closed_world_test;
8 8
9 import 'package:async_helper/async_helper.dart'; 9 import 'package:async_helper/async_helper.dart';
10 import 'package:compiler/src/commandline_options.dart'; 10 import 'package:compiler/src/commandline_options.dart';
(...skipping 59 matching lines...) Expand 10 before | Expand all | Expand 10 after
70 asyncTest(() async { 70 asyncTest(() async {
71 enableDebugMode(); 71 enableDebugMode();
72 Compiler compiler = compilerFor( 72 Compiler compiler = compilerFor(
73 entryPoint: entryPoint, 73 entryPoint: entryPoint,
74 memorySourceFiles: memorySourceFiles, 74 memorySourceFiles: memorySourceFiles,
75 options: [ 75 options: [
76 Flags.analyzeOnly, 76 Flags.analyzeOnly,
77 Flags.useKernel, 77 Flags.useKernel,
78 Flags.enableAssertMessage 78 Flags.enableAssertMessage
79 ]); 79 ]);
80 ElementResolutionWorldBuilder worldBuilder = 80 ElementResolutionWorldBuilder.useInstantiationMap = true;
81 compiler.enqueuer.resolution.worldBuilder;
82 worldBuilder.useInstantiationMap = true;
83 compiler.resolution.retainCachesForTesting = true; 81 compiler.resolution.retainCachesForTesting = true;
84 await compiler.run(entryPoint); 82 await compiler.run(entryPoint);
85 compiler.resolutionWorldBuilder.closeWorld(compiler.reporter); 83 compiler.resolutionWorldBuilder.closeWorld(compiler.reporter);
86 84
87 JavaScriptBackend backend = compiler.backend; 85 JavaScriptBackend backend = compiler.backend;
88 // Create a new resolution enqueuer and feed it with the [WorldImpact]s 86 // Create a new resolution enqueuer and feed it with the [WorldImpact]s
89 // computed from kernel through the [build] in `kernel_impact.dart`. 87 // computed from kernel through the [build] in `kernel_impact.dart`.
90 ResolutionEnqueuer enqueuer = new ResolutionEnqueuer( 88 ResolutionEnqueuer enqueuer = new ResolutionEnqueuer(
91 compiler.enqueuer, 89 compiler.enqueuer,
92 compiler.options, 90 compiler.options,
(...skipping 65 matching lines...) Expand 10 before | Expand all | Expand 10 after
158 compiler.libraryLoader.libraries); 156 compiler.libraryLoader.libraries);
159 enqueuer.forEach((work) { 157 enqueuer.forEach((work) {
160 AstElement element = work.element; 158 AstElement element = work.element;
161 ResolutionImpact resolutionImpact = build(compiler, element.resolvedAst); 159 ResolutionImpact resolutionImpact = build(compiler, element.resolvedAst);
162 WorldImpact worldImpact = compiler.backend.impactTransformer 160 WorldImpact worldImpact = compiler.backend.impactTransformer
163 .transformResolutionImpact(enqueuer, resolutionImpact); 161 .transformResolutionImpact(enqueuer, resolutionImpact);
164 enqueuer.applyImpact(worldImpact, impactSource: element); 162 enqueuer.applyImpact(worldImpact, impactSource: element);
165 }); 163 });
166 return enqueuer.worldBuilder.closeWorld(compiler.reporter); 164 return enqueuer.worldBuilder.closeWorld(compiler.reporter);
167 } 165 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698