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

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: Addressed comments. 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
« no previous file with comments | « lib/compiler/implementation/namer.dart ('k') | lib/compiler/implementation/ssa/codegen.dart » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: lib/compiler/implementation/ssa/builder.dart
diff --git a/lib/compiler/implementation/ssa/builder.dart b/lib/compiler/implementation/ssa/builder.dart
index a66dbaf7c2a4c7ff9fa48ead04383232ebeafb22..3ecbeffd22a75623dd9985e0c8d78c41969210b8 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);
« no previous file with comments | « lib/compiler/implementation/namer.dart ('k') | lib/compiler/implementation/ssa/codegen.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698