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

Unified Diff: pkg/compiler/lib/src/cps_ir/scalar_replacement.dart

Issue 1743283002: dart2js cps: Use definitions by default, not references. (Closed) Base URL: git@github.com:dart-lang/sdk.git@master
Patch Set: Fix doc comments and long lines Created 4 years, 10 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/cps_ir/scalar_replacement.dart
diff --git a/pkg/compiler/lib/src/cps_ir/scalar_replacement.dart b/pkg/compiler/lib/src/cps_ir/scalar_replacement.dart
index b220847358fc5c4b8bb4ff19531aeb72b37db05c..5eb8156ea719dc188ec5b52dc3d842549e302698 100644
--- a/pkg/compiler/lib/src/cps_ir/scalar_replacement.dart
+++ b/pkg/compiler/lib/src/cps_ir/scalar_replacement.dart
@@ -77,7 +77,7 @@ class ScalarReplacementVisitor extends TrampolineRecursiveVisitor {
for (Reference ref = allocation.firstRef; ref != null; ref = ref.next) {
Node use = ref.parent;
if (use is GetField) continue;
- if (use is SetField && use.object == ref) continue;
+ if (use is SetField && use.objectRef == ref) continue;
return;
}
@@ -102,7 +102,7 @@ class ScalarReplacementVisitor extends TrampolineRecursiveVisitor {
int i = 0;
allocation.classElement.forEachInstanceField(
(ClassElement enclosingClass, FieldElement field) {
- Primitive argument = allocation.arguments[i++].definition;
+ Primitive argument = allocation.argument(i++);
fieldInitialValues[field] = argument;
},
includeSuperAndInjectedMembers: true);
@@ -127,7 +127,7 @@ class ScalarReplacementVisitor extends TrampolineRecursiveVisitor {
insertionPoint = let..insertBelow(insertionPoint);
}
LetMutable let = new LetMutable(variable, initialValue);
- let.value.parent = let;
+ let.valueRef.parent = let;
insertionPoint = let..insertBelow(insertionPoint);
}
@@ -141,7 +141,7 @@ class ScalarReplacementVisitor extends TrampolineRecursiveVisitor {
if (variable != null) {
GetMutable getter = new GetMutable(variable);
getter.type = getField.type;
- getter.variable.parent = getter;
+ getter.variableRef.parent = getter;
getField.replaceUsesWith(getter);
replacePrimitive(getField, getter);
deletePrimitive(getField);
@@ -150,14 +150,14 @@ class ScalarReplacementVisitor extends TrampolineRecursiveVisitor {
getField.replaceUsesWith(value);
deleteLetPrimOf(getField);
}
- } else if (use is SetField && use.object == ref) {
+ } else if (use is SetField && use.objectRef == ref) {
SetField setField = use;
MutableVariable variable = cells[setField.field];
- Primitive value = setField.value.definition;
+ Primitive value = setField.value;
variable.type = variable.type.union(value.type, classWorld);
SetMutable setter = new SetMutable(variable, value);
- setter.variable.parent = setter;
- setter.value.parent = setter;
+ setter.variableRef.parent = setter;
+ setter.valueRef.parent = setter;
setField.replaceUsesWith(setter);
replacePrimitive(setField, setter);
deletePrimitive(setField);

Powered by Google App Engine
This is Rietveld 408576698