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

Side by Side Diff: pkg/compiler/lib/src/js_backend/enqueuer.dart

Issue 2846433003: Run closed_world2_test using the normal compiler pipeline. (Closed)
Patch Set: Updated cf. comments Created 3 years, 7 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) 2012, the Dart project authors. Please see the AUTHORS file 1 // Copyright (c) 2012, 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 library dart2js.js.enqueue; 5 library dart2js.js.enqueue;
6 6
7 import 'dart:collection' show Queue; 7 import 'dart:collection' show Queue;
8 8
9 import '../common/codegen.dart' show CodegenWorkItem; 9 import '../common/codegen.dart' show CodegenWorkItem;
10 import '../common/tasks.dart' show CompilerTask; 10 import '../common/tasks.dart' show CompilerTask;
11 import '../common/work.dart' show WorkItem; 11 import '../common/work.dart' show WorkItem;
12 import '../common.dart'; 12 import '../common.dart';
13 import '../common_elements.dart' show ElementEnvironment;
13 import '../elements/resolution_types.dart' 14 import '../elements/resolution_types.dart'
14 show ResolutionDartType, ResolutionInterfaceType; 15 show ResolutionDartType, ResolutionInterfaceType;
15 import '../elements/elements.dart' show MemberElement; 16 import '../elements/elements.dart' show MemberElement;
16 import '../elements/entities.dart'; 17 import '../elements/entities.dart';
17 import '../enqueue.dart'; 18 import '../enqueue.dart';
18 import '../js_backend/backend.dart' show JavaScriptBackend; 19 import '../js_backend/backend.dart' show JavaScriptBackend;
19 import '../options.dart'; 20 import '../options.dart';
20 import '../universe/world_builder.dart'; 21 import '../universe/world_builder.dart';
21 import '../universe/use.dart' 22 import '../universe/use.dart'
22 show 23 show
(...skipping 79 matching lines...) Expand 10 before | Expand all | Expand 10 after
102 103
103 void _registerInstantiatedType(ResolutionInterfaceType type, 104 void _registerInstantiatedType(ResolutionInterfaceType type,
104 {bool mirrorUsage: false, bool nativeUsage: false}) { 105 {bool mirrorUsage: false, bool nativeUsage: false}) {
105 task.measure(() { 106 task.measure(() {
106 _worldBuilder.registerTypeInstantiation(type, _applyClassUse, 107 _worldBuilder.registerTypeInstantiation(type, _applyClassUse,
107 byMirrors: mirrorUsage); 108 byMirrors: mirrorUsage);
108 listener.registerInstantiatedType(type, nativeUsage: nativeUsage); 109 listener.registerInstantiatedType(type, nativeUsage: nativeUsage);
109 }); 110 });
110 } 111 }
111 112
112 bool checkNoEnqueuedInvokedInstanceMethods() { 113 bool checkNoEnqueuedInvokedInstanceMethods(
113 return strategy.checkEnqueuerConsistency(this); 114 ElementEnvironment elementEnvironment) {
115 return strategy.checkEnqueuerConsistency(this, elementEnvironment);
114 } 116 }
115 117
116 void checkClass(ClassEntity cls) { 118 void checkClass(ClassEntity cls) {
117 _worldBuilder.processClassMembers(cls, (MemberEntity member, useSet) { 119 _worldBuilder.processClassMembers(cls, (MemberEntity member, useSet) {
118 if (useSet.isNotEmpty) { 120 if (useSet.isNotEmpty) {
119 throw new SpannableAssertionFailure(member, 121 throw new SpannableAssertionFailure(member,
120 'Unenqueued use of $member: ${useSet.iterable(MemberUse.values)}'); 122 'Unenqueued use of $member: ${useSet.iterable(MemberUse.values)}');
121 } 123 }
122 }); 124 });
123 } 125 }
(...skipping 160 matching lines...) Expand 10 before | Expand all | Expand 10 after
284 // code for checked setters. 286 // code for checked setters.
285 if (element.isField && element.isInstanceMember) { 287 if (element.isField && element.isInstanceMember) {
286 if (!_options.enableTypeAssertions || 288 if (!_options.enableTypeAssertions ||
287 element.enclosingElement.isClosure) { 289 element.enclosingElement.isClosure) {
288 return null; 290 return null;
289 } 291 }
290 } 292 }
291 return new CodegenWorkItem(_backend, element); 293 return new CodegenWorkItem(_backend, element);
292 } 294 }
293 } 295 }
OLDNEW
« no previous file with comments | « pkg/compiler/lib/src/js_backend/backend.dart ('k') | pkg/compiler/lib/src/kernel/element_map.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698