| Index: pkg/compiler/lib/src/common/codegen.dart
|
| diff --git a/pkg/compiler/lib/src/common/codegen.dart b/pkg/compiler/lib/src/common/codegen.dart
|
| index 521458560a80630bb795bf916284796d40deed1d..84eb4222d70511e2e73b6c6a618c9d573ef4238f 100644
|
| --- a/pkg/compiler/lib/src/common/codegen.dart
|
| +++ b/pkg/compiler/lib/src/common/codegen.dart
|
| @@ -19,14 +19,17 @@ import '../elements/elements.dart'
|
| import '../enqueue.dart' show Enqueuer;
|
| import '../universe/use.dart' show DynamicUse, StaticUse, TypeUse;
|
| import '../universe/world_impact.dart'
|
| - show WorldImpact, WorldImpactBuilderImpl, WorldImpactVisitor;
|
| + show WorldImpact, WorldImpactBuilder, WorldImpactVisitor;
|
| import '../util/util.dart' show Pair, Setlet;
|
| -import 'registry.dart' show Registry;
|
| +import 'registry.dart' show Registry, EagerRegistry;
|
| import 'work.dart' show WorkItem;
|
|
|
| class CodegenImpact extends WorldImpact {
|
| const CodegenImpact();
|
|
|
| + // TODO(johnniwinther): Remove this.
|
| + Registry get registry => null;
|
| +
|
| Iterable<ConstantValue> get compileTimeConstants => const <ConstantValue>[];
|
|
|
| Iterable<Pair<DartType, DartType>> get typeVariableBoundsSubtypeChecks {
|
| @@ -46,7 +49,10 @@ class CodegenImpact extends WorldImpact {
|
| Iterable<Element> get asyncMarkers => const <FunctionElement>[];
|
| }
|
|
|
| -class _CodegenImpact extends WorldImpactBuilderImpl implements CodegenImpact {
|
| +class _CodegenImpact extends WorldImpactBuilder implements CodegenImpact {
|
| + // TODO(johnniwinther): Remove this.
|
| + final Registry registry;
|
| +
|
| Setlet<ConstantValue> _compileTimeConstants;
|
| Setlet<Pair<DartType, DartType>> _typeVariableBoundsSubtypeChecks;
|
| Setlet<String> _constSymbols;
|
| @@ -55,7 +61,7 @@ class _CodegenImpact extends WorldImpactBuilderImpl implements CodegenImpact {
|
| Setlet<ClassElement> _typeConstants;
|
| Setlet<FunctionElement> _asyncMarkers;
|
|
|
| - _CodegenImpact();
|
| + _CodegenImpact(this.registry);
|
|
|
| void apply(WorldImpactVisitor visitor) {
|
| staticUses.forEach(visitor.visitStaticUse);
|
| @@ -154,7 +160,8 @@ class CodegenRegistry extends Registry {
|
| CodegenRegistry(Compiler compiler, AstElement currentElement)
|
| : this.compiler = compiler,
|
| this.currentElement = currentElement,
|
| - this.worldImpact = new _CodegenImpact();
|
| + this.worldImpact = new _CodegenImpact(new EagerRegistry(
|
| + 'EagerRegistry for $currentElement', compiler.enqueuer.codegen));
|
|
|
| bool get isForResolution => false;
|
|
|
|
|