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

Side by Side Diff: tests/compiler/dart2js/call_site_simple_type_inferer_test.dart

Issue 2488353004: Remove Compiler access from ResolutionEnqueuer (Closed)
Patch Set: Updated cf. comments. Created 4 years, 1 month 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) 2013, the Dart project authors. Please see the AUTHORS file 1 // Copyright (c) 2013, 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 'package:expect/expect.dart'; 5 import 'package:expect/expect.dart';
6 import "package:async_helper/async_helper.dart"; 6 import "package:async_helper/async_helper.dart";
7 7
8 import 'compiler_helper.dart'; 8 import 'compiler_helper.dart';
9 import 'type_mask_test_helper.dart'; 9 import 'type_mask_test_helper.dart';
10 10
(...skipping 193 matching lines...) Expand 10 before | Expand all | Expand 10 after
204 new B().x("a", "b"); 204 new B().x("a", "b");
205 new A().x(1, 2); 205 new A().x(1, 2);
206 } 206 }
207 """; 207 """;
208 208
209 void doTest(String test, bool enableInlining, Function f) { 209 void doTest(String test, bool enableInlining, Function f) {
210 compileAndFind(test, 'A', 'x', enableInlining, (compiler, element) { 210 compileAndFind(test, 'A', 'x', enableInlining, (compiler, element) {
211 var expectedTypes = f(compiler); 211 var expectedTypes = f(compiler);
212 var signature = element.functionSignature; 212 var signature = element.functionSignature;
213 int index = 0; 213 int index = 0;
214 var inferrer = compiler.globalInference.typesInferrer; 214 var inferrer = compiler.globalInference.typesInferrerInternal;
215 signature.forEachParameter((Element element) { 215 signature.forEachParameter((Element element) {
216 Expect.equals(expectedTypes[index++], 216 Expect.equals(expectedTypes[index++],
217 simplify(inferrer.getTypeOfElement(element), compiler), test); 217 simplify(inferrer.getTypeOfElement(element), compiler), test);
218 }); 218 });
219 Expect.equals(index, expectedTypes.length); 219 Expect.equals(index, expectedTypes.length);
220 }); 220 });
221 } 221 }
222 222
223 void runTest(String test, Function f) { 223 void runTest(String test, Function f) {
224 doTest(test, false, f); 224 doTest(test, false, f);
225 doTest(test, true, f); 225 doTest(test, true, f);
226 } 226 }
227 227
228 subclassOfInterceptor(compiler) { 228 subclassOfInterceptor(compiler) {
229 return findTypeMask(compiler, 'Interceptor', 'nonNullSubclass'); 229 return findTypeMask(compiler, 'Interceptor', 'nonNullSubclass');
230 } 230 }
231 231
232 void test() { 232 void test() {
233 runTest(TEST_1, (compiler) => [compiler.commonMasks.stringType]); 233 runTest(TEST_1, (compiler) => [compiler.closedWorld.commonMasks.stringType]);
234 runTest(TEST_2, (compiler) => [compiler.commonMasks.uint31Type]); 234 runTest(TEST_2, (compiler) => [compiler.closedWorld.commonMasks.uint31Type]);
235 runTest(TEST_3, (compiler) => [compiler.commonMasks.intType]); 235 runTest(TEST_3, (compiler) => [compiler.closedWorld.commonMasks.intType]);
236 runTest(TEST_4, (compiler) => [compiler.commonMasks.numType]); 236 runTest(TEST_4, (compiler) => [compiler.closedWorld.commonMasks.numType]);
237 runTest(TEST_5, (compiler) => [compiler.commonMasks.numType]); 237 runTest(TEST_5, (compiler) => [compiler.closedWorld.commonMasks.numType]);
238 runTest(TEST_6, (compiler) => [compiler.commonMasks.numType]); 238 runTest(TEST_6, (compiler) => [compiler.closedWorld.commonMasks.numType]);
239 runTest(TEST_7a, (compiler) => [subclassOfInterceptor(compiler)]); 239 runTest(TEST_7a, (compiler) => [subclassOfInterceptor(compiler)]);
240 runTest( 240 runTest(
241 TEST_7b, (compiler) => [compiler.commonMasks.dynamicType.nonNullable()]); 241 TEST_7b,
242 (compiler) =>
243 [compiler.closedWorld.commonMasks.dynamicType.nonNullable()]);
242 244
243 runTest( 245 runTest(
244 TEST_8, 246 TEST_8,
245 (compiler) => [ 247 (compiler) => [
246 compiler.commonMasks.uint31Type, 248 compiler.closedWorld.commonMasks.uint31Type,
247 subclassOfInterceptor(compiler), 249 subclassOfInterceptor(compiler),
248 compiler.commonMasks.dynamicType.nonNullable() 250 compiler.closedWorld.commonMasks.dynamicType.nonNullable()
249 ]); 251 ]);
250 runTest( 252 runTest(
251 TEST_9, 253 TEST_9,
252 (compiler) => 254 (compiler) => [
253 [compiler.commonMasks.uint31Type, compiler.commonMasks.uint31Type]); 255 compiler.closedWorld.commonMasks.uint31Type,
256 compiler.closedWorld.commonMasks.uint31Type
257 ]);
254 runTest( 258 runTest(
255 TEST_10, 259 TEST_10,
256 (compiler) => 260 (compiler) => [
257 [compiler.commonMasks.uint31Type, compiler.commonMasks.uint31Type]); 261 compiler.closedWorld.commonMasks.uint31Type,
262 compiler.closedWorld.commonMasks.uint31Type
263 ]);
258 runTest( 264 runTest(
259 TEST_11, 265 TEST_11,
260 (compiler) => 266 (compiler) =>
261 [subclassOfInterceptor(compiler), subclassOfInterceptor(compiler)]); 267 [subclassOfInterceptor(compiler), subclassOfInterceptor(compiler)]);
262 268
263 runTest( 269 runTest(
264 TEST_12, 270 TEST_12,
265 (compiler) => 271 (compiler) => [
266 [compiler.commonMasks.stringType, compiler.commonMasks.uint31Type]); 272 compiler.closedWorld.commonMasks.stringType,
273 compiler.closedWorld.commonMasks.uint31Type
274 ]);
267 275
268 runTest(TEST_13, (compiler) => [compiler.commonMasks.numType]); 276 runTest(TEST_13, (compiler) => [compiler.closedWorld.commonMasks.numType]);
269 277
270 runTest( 278 runTest(
271 TEST_14, 279 TEST_14,
272 (compiler) => 280 (compiler) => [
273 [compiler.commonMasks.uint31Type, compiler.commonMasks.stringType]); 281 compiler.closedWorld.commonMasks.uint31Type,
282 compiler.closedWorld.commonMasks.stringType
283 ]);
274 284
275 runTest( 285 runTest(
276 TEST_15, 286 TEST_15,
277 (compiler) => 287 (compiler) => [
278 [compiler.commonMasks.stringType, compiler.commonMasks.boolType]); 288 compiler.closedWorld.commonMasks.stringType,
289 compiler.closedWorld.commonMasks.boolType
290 ]);
279 291
280 runTest( 292 runTest(
281 TEST_16, 293 TEST_16,
282 (compiler) => [ 294 (compiler) => [
283 compiler.commonMasks.uint31Type, 295 compiler.closedWorld.commonMasks.uint31Type,
284 compiler.commonMasks.uint31Type, 296 compiler.closedWorld.commonMasks.uint31Type,
285 compiler.commonMasks.stringType 297 compiler.closedWorld.commonMasks.stringType
286 ]); 298 ]);
287 299
288 runTest( 300 runTest(
289 TEST_17, 301 TEST_17,
290 (compiler) => [ 302 (compiler) => [
291 compiler.commonMasks.uint31Type, 303 compiler.closedWorld.commonMasks.uint31Type,
292 compiler.commonMasks.boolType, 304 compiler.closedWorld.commonMasks.boolType,
293 compiler.commonMasks.doubleType 305 compiler.closedWorld.commonMasks.doubleType
294 ]); 306 ]);
295 307
296 runTest( 308 runTest(
297 TEST_18, 309 TEST_18,
298 (compiler) => 310 (compiler) =>
299 [subclassOfInterceptor(compiler), subclassOfInterceptor(compiler)]); 311 [subclassOfInterceptor(compiler), subclassOfInterceptor(compiler)]);
300 } 312 }
301 313
302 void main() { 314 void main() {
303 test(); 315 test();
304 } 316 }
OLDNEW
« no previous file with comments | « pkg/dart2js_incremental/lib/caching_compiler.dart ('k') | tests/compiler/dart2js/closure_tracer_test.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698