OLD | NEW |
1 // Copyright (c) 2014, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2014, 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 dart2js.ir_tracer; | 5 library dart2js.ir_tracer; |
6 | 6 |
7 import 'dart:async' show EventSink; | 7 import 'dart:async' show EventSink; |
8 import 'cps_ir_nodes.dart' as cps_ir; | 8 import 'cps_ir_nodes.dart' as cps_ir; |
9 import '../tracer.dart'; | 9 import '../tracer.dart'; |
10 | 10 |
(...skipping 328 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
339 } | 339 } |
340 | 340 |
341 visitCreateInvocationMirror(cps_ir.CreateInvocationMirror node) { | 341 visitCreateInvocationMirror(cps_ir.CreateInvocationMirror node) { |
342 String args = node.arguments.map(formatReference).join(', '); | 342 String args = node.arguments.map(formatReference).join(', '); |
343 return "CreateInvocationMirror(${node.selector.name}, $args)"; | 343 return "CreateInvocationMirror(${node.selector.name}, $args)"; |
344 } | 344 } |
345 | 345 |
346 visitTypeTest(cps_ir.TypeTest node) { | 346 visitTypeTest(cps_ir.TypeTest node) { |
347 String value = formatReference(node.value); | 347 String value = formatReference(node.value); |
348 String args = node.typeArguments.map(formatReference).join(', '); | 348 String args = node.typeArguments.map(formatReference).join(', '); |
349 String interceptor = node.interceptor == null | 349 return "TypeTest ($value ${node.dartType} ($args))"; |
350 ? '' | |
351 : ' ${formatReference(node.interceptor)}'; | |
352 return "TypeTest ($value ${node.dartType} ($args)$interceptor)"; | |
353 } | |
354 | |
355 visitTypeTestViaFlag(cps_ir.TypeTestViaFlag node) { | |
356 String interceptor = formatReference(node.interceptor); | |
357 return "TypeTestViaFlag ($interceptor ${node.dartType})"; | |
358 } | 350 } |
359 | 351 |
360 visitApplyBuiltinOperator(cps_ir.ApplyBuiltinOperator node) { | 352 visitApplyBuiltinOperator(cps_ir.ApplyBuiltinOperator node) { |
361 String operator = node.operator.toString(); | 353 String operator = node.operator.toString(); |
362 String args = node.arguments.map(formatReference).join(', '); | 354 String args = node.arguments.map(formatReference).join(', '); |
363 return 'ApplyBuiltinOperator $operator ($args)'; | 355 return 'ApplyBuiltinOperator $operator ($args)'; |
364 } | 356 } |
365 | 357 |
366 visitApplyBuiltinMethod(cps_ir.ApplyBuiltinMethod node) { | 358 visitApplyBuiltinMethod(cps_ir.ApplyBuiltinMethod node) { |
367 String method = node.method.toString(); | 359 String method = node.method.toString(); |
(...skipping 276 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
644 } | 636 } |
645 | 637 |
646 visitCreateInvocationMirror(cps_ir.CreateInvocationMirror node) { | 638 visitCreateInvocationMirror(cps_ir.CreateInvocationMirror node) { |
647 unexpectedNode(node); | 639 unexpectedNode(node); |
648 } | 640 } |
649 | 641 |
650 visitTypeTest(cps_ir.TypeTest node) { | 642 visitTypeTest(cps_ir.TypeTest node) { |
651 unexpectedNode(node); | 643 unexpectedNode(node); |
652 } | 644 } |
653 | 645 |
654 visitTypeTestViaFlag(cps_ir.TypeTestViaFlag node) { | |
655 unexpectedNode(node); | |
656 } | |
657 | |
658 visitApplyBuiltinOperator(cps_ir.ApplyBuiltinOperator node) { | 646 visitApplyBuiltinOperator(cps_ir.ApplyBuiltinOperator node) { |
659 unexpectedNode(node); | 647 unexpectedNode(node); |
660 } | 648 } |
661 | 649 |
662 visitApplyBuiltinMethod(cps_ir.ApplyBuiltinMethod node) { | 650 visitApplyBuiltinMethod(cps_ir.ApplyBuiltinMethod node) { |
663 unexpectedNode(node); | 651 unexpectedNode(node); |
664 } | 652 } |
665 | 653 |
666 visitGetLength(cps_ir.GetLength node) { | 654 visitGetLength(cps_ir.GetLength node) { |
667 unexpectedNode(node); | 655 unexpectedNode(node); |
(...skipping 32 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
700 @override | 688 @override |
701 visitYield(cps_ir.Yield node) { | 689 visitYield(cps_ir.Yield node) { |
702 addEdgeToContinuation(node.continuation); | 690 addEdgeToContinuation(node.continuation); |
703 } | 691 } |
704 | 692 |
705 @override | 693 @override |
706 visitRefinement(cps_ir.Refinement node) { | 694 visitRefinement(cps_ir.Refinement node) { |
707 unexpectedNode(node); | 695 unexpectedNode(node); |
708 } | 696 } |
709 } | 697 } |
OLD | NEW |