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

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

Issue 2963983002: Further splitting of inference type-info (Closed)
Patch Set: Updated cf. comments. Created 3 years, 6 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 7b1bb0d2ced76524fb126b63afb61acfbc52d156..c328946f75c31ec7d96fb2280830d89ef1343d92 100644
--- a/pkg/compiler/lib/src/inferrer/node_tracer.dart
+++ b/pkg/compiler/lib/src/inferrer/node_tracer.dart
@@ -303,7 +303,7 @@ abstract class TracerVisitor implements TypeInformationVisitor {
void bailoutIfReaches(bool predicate(ParameterElement e)) {
for (var user in currentUser.users) {
if (user is ParameterTypeInformation) {
- if (predicate(user.element)) {
+ if (predicate(user.parameter)) {
bailout('Reached suppressed parameter without precise receiver');
break;
}
@@ -452,28 +452,28 @@ abstract class TracerVisitor implements TypeInformationVisitor {
if (info.isClosurized) {
bailout('Returned from a closurized method');
}
- if (isClosure(info.element)) {
+ if (isClosure(info.member)) {
bailout('Returned from a closure');
}
- if (info.element.isField &&
+ if (info.member.isField &&
!inferrer.compiler.backend.canFieldBeUsedForGlobalOptimizations(
- info.element, inferrer.closedWorld)) {
+ info.member, inferrer.closedWorld)) {
bailout('Escape to code that has special backend treatment');
}
addNewEscapeInformation(info);
}
void visitParameterTypeInformation(ParameterTypeInformation info) {
- if (inferrer.isNativeMember(info.declaration)) {
+ if (inferrer.isNativeMember(info.method)) {
bailout('Passed to a native method');
}
if (!inferrer.compiler.backend
.canFunctionParametersBeUsedForGlobalOptimizations(
- info.declaration, inferrer.closedWorld)) {
+ info.method, inferrer.closedWorld)) {
bailout('Escape to code that has special backend treatment');
}
- if (isParameterOfListAddingMethod(info.element) ||
- isParameterOfMapAddingMethod(info.element)) {
+ if (isParameterOfListAddingMethod(info.parameter) ||
+ isParameterOfMapAddingMethod(info.parameter)) {
// These elements are being handled in
// [visitDynamicCallSiteTypeInformation].
return;
« no previous file with comments | « pkg/compiler/lib/src/inferrer/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