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

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

Issue 869223003: Revert "Add a shrinking reduction for dead continuation parameters." (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: Created 5 years, 11 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 | « pkg/analyzer2dart/test/sexpr_data.dart ('k') | pkg/compiler/lib/src/cps_ir/cps_ir_nodes_sexpr.dart » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: pkg/compiler/lib/src/cps_ir/cps_ir_nodes.dart
diff --git a/pkg/compiler/lib/src/cps_ir/cps_ir_nodes.dart b/pkg/compiler/lib/src/cps_ir/cps_ir_nodes.dart
index 00e3252a9459f472ab3e1b3cd194ae86aab814af..139b3a1a86abb53480ae6b0ce3a5f30d8a77f050 100644
--- a/pkg/compiler/lib/src/cps_ir/cps_ir_nodes.dart
+++ b/pkg/compiler/lib/src/cps_ir/cps_ir_nodes.dart
@@ -630,12 +630,6 @@ class Parameter extends Primitive {
super.hint = hint;
}
- // In addition to a parent pointer to the containing Continuation or
- // FunctionDefinition, parameters have an index into the list of parameters
- // bound by the parent. This gives constant-time access to the continuation
- // from the parent.
- int parent_index;
-
accept(Visitor visitor) => visitor.visitParameter(this);
}
@@ -686,7 +680,7 @@ class FieldDefinition extends Node implements ExecutableDefinition {
/// `true` if this field has no initializer.
///
- /// If `true` [body] is `null`.
+ /// If `true` [body] and [returnContinuation] are `null`.
///
/// This is different from a initializer that is `null`. Consider this class:
///
@@ -723,7 +717,7 @@ class RunnableBody extends InteriorNode {
}
/// A function definition, consisting of parameters and a body. The parameters
-/// include a distinguished continuation parameter (held by the body).
+/// include a distinguished continuation parameter.
class FunctionDefinition extends Node
implements ExecutableDefinition {
final FunctionElement element;
@@ -757,7 +751,8 @@ class FunctionDefinition extends Node
/// Returns `true` if this function is abstract or external.
///
- /// If `true`, [body] is `null` and [localConstants] is empty.
+ /// If `true`, [body] and [returnContinuation] are `null` and [localConstants]
+ /// is empty.
bool get isAbstract => body == null;
}
@@ -889,7 +884,6 @@ abstract class RecursiveVisitor extends Visitor {
processRunnableBody(RunnableBody node) {}
visitRunnableBody(RunnableBody node) {
processRunnableBody(node);
- visit(node.returnContinuation);
visit(node.body);
}
@@ -1069,7 +1063,7 @@ abstract class RecursiveVisitor extends Visitor {
visitContinuation(Continuation node) {
processContinuation(node);
node.parameters.forEach(visitParameter);
- if (node.body != null) visit(node.body);
+ visit(node.body);
}
// Conditions.
« no previous file with comments | « pkg/analyzer2dart/test/sexpr_data.dart ('k') | pkg/compiler/lib/src/cps_ir/cps_ir_nodes_sexpr.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698