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

Unified Diff: pkg/compiler/lib/src/inferrer/node_tracer.dart

Issue 3004713002: Remove use of Compiler in inferrer engines. (Closed)
Patch Set: Created 3 years, 4 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 side-by-side diff with in-line comments
Download patch
Index: pkg/compiler/lib/src/inferrer/node_tracer.dart
diff --git a/pkg/compiler/lib/src/inferrer/node_tracer.dart b/pkg/compiler/lib/src/inferrer/node_tracer.dart
index 0bfbea7443f112acf647506f82928d8ffccc4f56..b8b08dba865d9c8bc6bcb5c53b68d4d56a2b3f68 100644
--- a/pkg/compiler/lib/src/inferrer/node_tracer.dart
+++ b/pkg/compiler/lib/src/inferrer/node_tracer.dart
@@ -5,7 +5,6 @@
library compiler.src.inferrer.node_tracer;
import '../common/names.dart' show Identifiers;
-import '../compiler.dart' show Compiler;
import '../elements/elements.dart';
import '../elements/entities.dart';
import '../types/types.dart' show ContainerTypeMask, MapTypeMask;
@@ -76,15 +75,12 @@ Set<String> doesNotEscapeMapSet = new Set<String>.from(const <String>[
abstract class TracerVisitor implements TypeInformationVisitor {
final TypeInformation tracedType;
final InferrerEngine inferrer;
- final Compiler compiler;
static const int MAX_ANALYSIS_COUNT =
const int.fromEnvironment('dart2js.tracing.limit', defaultValue: 32);
final Setlet<MemberEntity> analyzedElements = new Setlet<MemberEntity>();
- TracerVisitor(this.tracedType, InferrerEngine inferrer)
- : this.inferrer = inferrer,
- this.compiler = inferrer.compiler;
+ TracerVisitor(this.tracedType, this.inferrer);
// Work list that gets populated with [TypeInformation] that could
// contain the container.
@@ -454,8 +450,7 @@ abstract class TracerVisitor implements TypeInformationVisitor {
bailout('Returned from a closure');
}
if (info.member.isField &&
- !inferrer.compiler.backend.canFieldBeUsedForGlobalOptimizations(
- info.member, inferrer.closedWorld)) {
+ !inferrer.canFieldBeUsedForGlobalOptimizations(info.member)) {
bailout('Escape to code that has special backend treatment');
}
addNewEscapeInformation(info);
@@ -465,9 +460,8 @@ abstract class TracerVisitor implements TypeInformationVisitor {
if (inferrer.closedWorld.nativeData.isNativeMember(info.method)) {
bailout('Passed to a native method');
}
- if (!inferrer.compiler.backend
- .canFunctionParametersBeUsedForGlobalOptimizations(
- info.method, inferrer.closedWorld)) {
+ if (!inferrer
+ .canFunctionParametersBeUsedForGlobalOptimizations(info.method)) {
bailout('Escape to code that has special backend treatment');
}
if (isParameterOfListAddingMethod(info.parameter) ||
« no previous file with comments | « pkg/compiler/lib/src/inferrer/kernel_inferrer_engine.dart ('k') | pkg/compiler/lib/src/inferrer/type_graph_dump.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698