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

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

Issue 1153603006: dart2js cps: Type casts and related changes to type propagation. (Closed) Base URL: git@github.com:dart-lang/sdk.git@master
Patch Set: Another typo in SExpression unstrngifier Created 5 years, 6 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/compiler/lib/src/cps_ir/cps_ir_builder.dart ('k') | pkg/compiler/lib/src/cps_ir/cps_ir_nodes.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_builder_task.dart
diff --git a/pkg/compiler/lib/src/cps_ir/cps_ir_builder_task.dart b/pkg/compiler/lib/src/cps_ir/cps_ir_builder_task.dart
index c075b77bc4d2e4625b2fa5b86b2ae3b8bb57d7db..e768e3c154fb4a360fa86d4107f252acbaad1b38 100644
--- a/pkg/compiler/lib/src/cps_ir/cps_ir_builder_task.dart
+++ b/pkg/compiler/lib/src/cps_ir/cps_ir_builder_task.dart
@@ -2810,13 +2810,11 @@ class JsIrBuilderVisitor extends IrBuilderVisitor {
/// - Replace [ir.LetPrim] binding a [ir.NonTailThrow] with a [ir.Throw]
/// expression.
class CleanupPass extends ir.RecursiveVisitor {
- RemovalVisitor _remover = new RemovalVisitor();
-
ir.Expression replacementFor(ir.Expression expression) {
if (expression != null && expression is ir.LetPrim) {
ir.Primitive primitive = expression.primitive;
if (primitive is ir.NonTailThrow) {
- _remover.visit(expression);
+ ir.RemovalVisitor.remove(expression);
return new ir.Throw(primitive.value.definition);
}
}
@@ -2859,10 +2857,3 @@ class CleanupPass extends ir.RecursiveVisitor {
node.body = replacementFor(node.body);
}
}
-
-/// Visit a just-deleted subterm and unlink all [Reference]s in it.
-class RemovalVisitor extends ir.RecursiveVisitor {
- processReference(ir.Reference reference) {
- reference.unlink();
- }
-}
« no previous file with comments | « pkg/compiler/lib/src/cps_ir/cps_ir_builder.dart ('k') | pkg/compiler/lib/src/cps_ir/cps_ir_nodes.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698