Chromium Code Reviews| Index: sdk/lib/_internal/compiler/implementation/ssa/nodes.dart |
| diff --git a/sdk/lib/_internal/compiler/implementation/ssa/nodes.dart b/sdk/lib/_internal/compiler/implementation/ssa/nodes.dart |
| index c1b9796ec9cbe58f70e8ea5889df11e536d25935..f77aa993e765799e2c6f82456526b7aae3e44227 100644 |
| --- a/sdk/lib/_internal/compiler/implementation/ssa/nodes.dart |
| +++ b/sdk/lib/_internal/compiler/implementation/ssa/nodes.dart |
| @@ -64,6 +64,7 @@ abstract class HVisitor<R> { |
| R visitSwitch(HSwitch node); |
| R visitThis(HThis node); |
| R visitThrow(HThrow node); |
| + R visitThrowExpression(HThrowExpression node); |
| R visitTry(HTry node); |
| R visitTypeGuard(HTypeGuard node); |
| R visitTypeConversion(HTypeConversion node); |
| @@ -339,6 +340,7 @@ class HBaseVisitor extends HGraphVisitor implements HVisitor { |
| visitStringify(HStringify node) => visitInstruction(node); |
| visitThis(HThis node) => visitParameterValue(node); |
| visitThrow(HThrow node) => visitControlFlow(node); |
| + visitThrowExpression(HThrowExpression node) => visitInstruction(node); |
| visitTry(HTry node) => visitControlFlow(node); |
| visitTypeGuard(HTypeGuard node) => visitCheck(node); |
| visitIs(HIs node) => visitInstruction(node); |
| @@ -2018,6 +2020,13 @@ class HReturn extends HControlFlow { |
| accept(HVisitor visitor) => visitor.visitReturn(this); |
| } |
| +class HThrowExpression extends HInstruction { |
| + HThrowExpression(value) : super(<HInstruction>[value]); |
| + toString() => 'throwexpression'; |
|
ngeoffray
2013/04/11 09:31:08
throwexpression -> throw expression
|
| + accept(HVisitor visitor) => visitor.visitThrowExpression(this); |
| + bool canThrow() => true; |
| +} |
| + |
| class HThrow extends HControlFlow { |
| final bool isRethrow; |
| HThrow(value, {this.isRethrow: false}) : super(<HInstruction>[value]); |