| OLD | NEW |
| 1 // Copyright (c) 2013, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2013, the Dart project authors. Please see the AUTHORS file |
| 2 // for details. All rights reserved. Use of this source code is governed by a | 2 // for details. All rights reserved. Use of this source code is governed by a |
| 3 // BSD-style license that can be found in the LICENSE file. | 3 // BSD-style license that can be found in the LICENSE file. |
| 4 | 4 |
| 5 library ssa.tracer; | 5 library ssa.tracer; |
| 6 | 6 |
| 7 import 'dart:async' show EventSink; | 7 import 'dart:async' show EventSink; |
| 8 | 8 |
| 9 import '../diagnostics/invariant.dart' show DEBUG_MODE; | 9 import '../diagnostics/invariant.dart' show DEBUG_MODE; |
| 10 import '../js_backend/namer.dart' show Namer; | 10 import '../js_backend/namer.dart' show Namer; |
| (...skipping 434 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 445 String visitThrow(HThrow node) => "Throw: ${temporaryId(node.inputs[0])}"; | 445 String visitThrow(HThrow node) => "Throw: ${temporaryId(node.inputs[0])}"; |
| 446 | 446 |
| 447 String visitThrowExpression(HThrowExpression node) { | 447 String visitThrowExpression(HThrowExpression node) { |
| 448 return "ThrowExpression: ${temporaryId(node.inputs[0])}"; | 448 return "ThrowExpression: ${temporaryId(node.inputs[0])}"; |
| 449 } | 449 } |
| 450 | 450 |
| 451 String visitTruncatingDivide(HTruncatingDivide node) { | 451 String visitTruncatingDivide(HTruncatingDivide node) { |
| 452 return handleInvokeBinary(node, 'TruncatingDivide'); | 452 return handleInvokeBinary(node, 'TruncatingDivide'); |
| 453 } | 453 } |
| 454 | 454 |
| 455 String visitRemainder(HRemainder node) { |
| 456 return handleInvokeBinary(node, 'Remainder'); |
| 457 } |
| 458 |
| 455 String visitExitTry(HExitTry node) { | 459 String visitExitTry(HExitTry node) { |
| 456 return "ExitTry"; | 460 return "ExitTry"; |
| 457 } | 461 } |
| 458 | 462 |
| 459 String visitTry(HTry node) { | 463 String visitTry(HTry node) { |
| 460 List<HBasicBlock> successors = currentBlock.successors; | 464 List<HBasicBlock> successors = currentBlock.successors; |
| 461 String tryBlock = 'B${successors[0].id}'; | 465 String tryBlock = 'B${successors[0].id}'; |
| 462 String catchBlock = 'none'; | 466 String catchBlock = 'none'; |
| 463 if (node.catchBlock != null) { | 467 if (node.catchBlock != null) { |
| 464 catchBlock = 'B${successors[1].id}'; | 468 catchBlock = 'B${successors[1].id}'; |
| (...skipping 87 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 552 } | 556 } |
| 553 | 557 |
| 554 String visitAwait(HAwait node) { | 558 String visitAwait(HAwait node) { |
| 555 return "Await: ${temporaryId(node.inputs[0])}"; | 559 return "Await: ${temporaryId(node.inputs[0])}"; |
| 556 } | 560 } |
| 557 | 561 |
| 558 String visitYield(HYield node) { | 562 String visitYield(HYield node) { |
| 559 return "Yield${node.hasStar ? "*" : ""}: ${temporaryId(node.inputs[0])}"; | 563 return "Yield${node.hasStar ? "*" : ""}: ${temporaryId(node.inputs[0])}"; |
| 560 } | 564 } |
| 561 } | 565 } |
| OLD | NEW |