| 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 tracer; | 5 library tracer; |
| 6 | 6 |
| 7 import 'dart:async' show EventSink; | 7 import 'dart:async' show EventSink; |
| 8 | 8 |
| 9 import 'ssa.dart'; | 9 import 'ssa.dart'; |
| 10 import '../js_backend/js_backend.dart'; | 10 import '../js_backend/js_backend.dart'; |
| (...skipping 461 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 472 } | 472 } |
| 473 buf.write("default: B"); | 473 buf.write("default: B"); |
| 474 buf.write(node.block.successors.last.id); | 474 buf.write(node.block.successors.last.id); |
| 475 return buf.toString(); | 475 return buf.toString(); |
| 476 } | 476 } |
| 477 | 477 |
| 478 String visitThis(HThis node) => "this"; | 478 String visitThis(HThis node) => "this"; |
| 479 | 479 |
| 480 String visitThrow(HThrow node) => "Throw ${temporaryId(node.inputs[0])}"; | 480 String visitThrow(HThrow node) => "Throw ${temporaryId(node.inputs[0])}"; |
| 481 | 481 |
| 482 String visitThrowExpression(HThrowExpression node) { |
| 483 return "ThrowExpression ${temporaryId(node.inputs[0])}"; |
| 484 } |
| 485 |
| 482 String visitExitTry(HExitTry node) { | 486 String visitExitTry(HExitTry node) { |
| 483 return "Exit try"; | 487 return "Exit try"; |
| 484 } | 488 } |
| 485 | 489 |
| 486 String visitTry(HTry node) { | 490 String visitTry(HTry node) { |
| 487 List<HBasicBlock> successors = currentBlock.successors; | 491 List<HBasicBlock> successors = currentBlock.successors; |
| 488 String tryBlock = 'B${successors[0].id}'; | 492 String tryBlock = 'B${successors[0].id}'; |
| 489 String catchBlock = 'none'; | 493 String catchBlock = 'none'; |
| 490 if (node.catchBlock != null) { | 494 if (node.catchBlock != null) { |
| 491 catchBlock = 'B${successors[1].id}'; | 495 catchBlock = 'B${successors[1].id}'; |
| (...skipping 58 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 550 | 554 |
| 551 String visitTypeConversion(HTypeConversion node) { | 555 String visitTypeConversion(HTypeConversion node) { |
| 552 return "TypeConversion: ${temporaryId(node.checkedInput)} to " | 556 return "TypeConversion: ${temporaryId(node.checkedInput)} to " |
| 553 "${node.instructionType}"; | 557 "${node.instructionType}"; |
| 554 } | 558 } |
| 555 | 559 |
| 556 String visitRangeConversion(HRangeConversion node) { | 560 String visitRangeConversion(HRangeConversion node) { |
| 557 return "RangeConversion: ${node.checkedInput}"; | 561 return "RangeConversion: ${node.checkedInput}"; |
| 558 } | 562 } |
| 559 } | 563 } |
| OLD | NEW |