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

Unified Diff: lib/compiler/implementation/ssa/builder.dart

Issue 10831154: Make field-get/set work without elements. (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: Created 8 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: lib/compiler/implementation/ssa/builder.dart
diff --git a/lib/compiler/implementation/ssa/builder.dart b/lib/compiler/implementation/ssa/builder.dart
index 7ffe061bbb142bedb42f73a5e7000d18fcdfc9d5..85de4b13d55c3094a7b14c0e223695f4c35503ca 100644
--- a/lib/compiler/implementation/ssa/builder.dart
+++ b/lib/compiler/implementation/ssa/builder.dart
@@ -396,7 +396,7 @@ class LocalsHandler {
} else if (isStoredInClosureField(element)) {
Element redirect = redirectionMapping[element];
HInstruction receiver = readLocal(closureData.closureElement);
- HInstruction fieldGet = new HFieldGet(redirect, receiver);
+ HInstruction fieldGet = new HFieldGet.withElement(redirect, receiver);
builder.add(fieldGet);
return fieldGet;
} else if (isBoxed(element)) {
@@ -408,7 +408,7 @@ class LocalsHandler {
// the box.
assert(redirect.enclosingElement.kind == ElementKind.VARIABLE);
HInstruction box = readLocal(redirect.enclosingElement);
- HInstruction lookup = new HFieldGet(redirect, box);
+ HInstruction lookup = new HFieldGet.withElement(redirect, box);
builder.add(lookup);
return lookup;
} else {
@@ -468,7 +468,7 @@ class LocalsHandler {
// be accessed directly.
assert(redirect.enclosingElement.kind == ElementKind.VARIABLE);
HInstruction box = readLocal(redirect.enclosingElement);
- builder.add(new HFieldSet(redirect, box, value));
+ builder.add(new HFieldSet.withElement(redirect, box, value));
} else {
assert(isUsedInTry(element));
HLocalValue local = getLocal(element);

Powered by Google App Engine
This is Rietveld 408576698