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

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

Issue 2964683003: Split implementation of KernelToElementMapImpl (Closed)
Patch Set: Created 3 years, 5 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) 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 // Partial test that the closed world computed from [WorldImpact]s derived from 5 // Partial test that the closed world computed from [WorldImpact]s derived from
6 // kernel is equivalent to the original computed from resolution. 6 // kernel is equivalent to the original computed from resolution.
7 library dart2js.kernel.closed_world_from_dill_test; 7 library dart2js.kernel.closed_world_from_dill_test;
8 8
9 import 'dart:async'; 9 import 'dart:async';
10 import 'dart:io'; 10 import 'dart:io';
(...skipping 121 matching lines...) Expand 10 before | Expand all | Expand 10 after
132 } 132 }
133 Expect.isFalse(compiler1.compilationFailed); 133 Expect.isFalse(compiler1.compilationFailed);
134 ResolutionEnqueuer enqueuer1 = compiler1.enqueuer.resolution; 134 ResolutionEnqueuer enqueuer1 = compiler1.enqueuer.resolution;
135 ClosedWorld closedWorld1 = compiler1.resolutionWorldBuilder.closeWorld(); 135 ClosedWorld closedWorld1 = compiler1.resolutionWorldBuilder.closeWorld();
136 136
137 Compiler compiler2 = await compileWithDill( 137 Compiler compiler2 = await compileWithDill(
138 entryPoint, const {}, [Flags.analyzeOnly, Flags.enableAssertMessage], 138 entryPoint, const {}, [Flags.analyzeOnly, Flags.enableAssertMessage],
139 printSteps: true); 139 printSteps: true);
140 140
141 KernelFrontEndStrategy frontendStrategy = compiler2.frontendStrategy; 141 KernelFrontEndStrategy frontendStrategy = compiler2.frontendStrategy;
142 KernelToElementMapForBuilding elementMap = frontendStrategy.elementMap; 142 KernelToElementMap elementMap = frontendStrategy.elementMap;
143 143
144 Expect.isFalse(compiler2.compilationFailed); 144 Expect.isFalse(compiler2.compilationFailed);
145 145
146 KernelEquivalence equivalence = new KernelEquivalence(elementMap); 146 KernelEquivalence equivalence = new KernelEquivalence(elementMap);
147 147
148 ResolutionEnqueuer enqueuer2 = compiler2.enqueuer.resolution; 148 ResolutionEnqueuer enqueuer2 = compiler2.enqueuer.resolution;
149 ClosedWorld closedWorld2 = compiler2.resolutionWorldBuilder.closeWorld(); 149 ClosedWorld closedWorld2 = compiler2.resolutionWorldBuilder.closeWorld();
150 150
151 checkBackendUsage(closedWorld1.backendUsage, closedWorld2.backendUsage, 151 checkBackendUsage(closedWorld1.backendUsage, closedWorld2.backendUsage,
152 equivalence.defaultStrategy); 152 equivalence.defaultStrategy);
153 153
154 checkResolutionEnqueuers(closedWorld1.backendUsage, closedWorld2.backendUsage, 154 checkResolutionEnqueuers(closedWorld1.backendUsage, closedWorld2.backendUsage,
155 enqueuer1, enqueuer2, 155 enqueuer1, enqueuer2,
156 elementEquivalence: (a, b) => equivalence.entityEquivalence(a, b), 156 elementEquivalence: (a, b) => equivalence.entityEquivalence(a, b),
157 typeEquivalence: (DartType a, DartType b) { 157 typeEquivalence: (DartType a, DartType b) {
158 return equivalence.typeEquivalence(unalias(a), b); 158 return equivalence.typeEquivalence(unalias(a), b);
159 }, 159 },
160 elementFilter: elementFilter, 160 elementFilter: elementFilter,
161 verbose: arguments.verbose); 161 verbose: arguments.verbose);
162 162
163 checkClosedWorlds(closedWorld1, closedWorld2, 163 checkClosedWorlds(closedWorld1, closedWorld2,
164 strategy: equivalence.defaultStrategy, verbose: arguments.verbose); 164 strategy: equivalence.defaultStrategy, verbose: arguments.verbose);
165 165
166 return ResultKind.success; 166 return ResultKind.success;
167 } 167 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698