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

Unified Diff: frog/leg/ssa/builder.dart

Issue 8924001: First implementation of top-level fields without initializers. (Closed) Base URL: http://dart.googlecode.com/svn/branches/bleeding_edge/dart/
Patch Set: '' Created 9 years 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: frog/leg/ssa/builder.dart
===================================================================
--- frog/leg/ssa/builder.dart (revision 2339)
+++ frog/leg/ssa/builder.dart (working copy)
@@ -129,7 +129,7 @@
add(new HInvokeDynamic(methodName, superInputs));
}
body.accept(this);
- return closeFunction();
+ return closeFunction();
}
void openFunction(NodeList parameters) {
@@ -143,7 +143,7 @@
visitParameterValues(parameters);
close(new HGoto()).addSuccessor(block);
- open(block);
+ open(block);
}
HGraph closeFunction() {
@@ -634,9 +634,16 @@
if (node.receiver !== null) {
compiler.unimplemented("SsaBuilder.visitSend with receiver");
}
- HInstruction instruction = definitions[element];
- assert(instruction !== null);
- stack.add(instruction);
+ if (element != null
+ && !element.isInstanceMember()
+ && element.kind === ElementKind.FIELD) {
+ compiler.unimplemented("SsaBuilder.visitSend with static field");
+ push(new HStatic(element));
+ } else {
+ HInstruction instruction = definitions[element];
+ assert(instruction !== null);
+ stack.add(instruction);
+ }
} else {
if (element === null) {
compiler.unimplemented("SsaBuilder.visitSend with receiver");

Powered by Google App Engine
This is Rietveld 408576698