OLD | NEW |
---|---|
1 // Copyright 2013 the V8 project authors. All rights reserved. | 1 // Copyright 2013 the V8 project authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include "src/compiler/graph-visualizer.h" | 5 #include "src/compiler/graph-visualizer.h" |
6 | 6 |
7 #include <sstream> | 7 #include <sstream> |
8 #include <string> | 8 #include <string> |
9 | 9 |
10 #include "src/code-stubs.h" | 10 #include "src/code-stubs.h" |
(...skipping 552 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
563 const BasicBlockVector* rpo = schedule->rpo_order(); | 563 const BasicBlockVector* rpo = schedule->rpo_order(); |
564 for (size_t i = 0; i < rpo->size(); i++) { | 564 for (size_t i = 0; i < rpo->size(); i++) { |
565 BasicBlock* current = (*rpo)[i]; | 565 BasicBlock* current = (*rpo)[i]; |
566 Tag block_tag(this, "block"); | 566 Tag block_tag(this, "block"); |
567 PrintBlockProperty("name", current->id()); | 567 PrintBlockProperty("name", current->id()); |
568 PrintIntProperty("from_bci", -1); | 568 PrintIntProperty("from_bci", -1); |
569 PrintIntProperty("to_bci", -1); | 569 PrintIntProperty("to_bci", -1); |
570 | 570 |
571 PrintIndent(); | 571 PrintIndent(); |
572 os_ << "predecessors"; | 572 os_ << "predecessors"; |
573 for (BasicBlock::Predecessors::iterator j = current->predecessors_begin(); | 573 for (auto predecessor : current->predecessors()) { |
Michael Starzinger
2015/01/22 12:15:29
remark: I know you all like the "auto" magic, but
Benedikt Meurer
2015/01/22 13:48:01
Done.
| |
574 j != current->predecessors_end(); ++j) { | 574 os_ << " \"B" << predecessor->id() << "\""; |
575 os_ << " \"B" << (*j)->id() << "\""; | |
576 } | 575 } |
577 os_ << "\n"; | 576 os_ << "\n"; |
578 | 577 |
579 PrintIndent(); | 578 PrintIndent(); |
580 os_ << "successors"; | 579 os_ << "successors"; |
581 for (BasicBlock::Successors::iterator j = current->successors_begin(); | 580 for (auto successor : current->successors()) { |
582 j != current->successors_end(); ++j) { | 581 os_ << " \"B" << successor->id() << "\""; |
583 os_ << " \"B" << (*j)->id() << "\""; | |
584 } | 582 } |
585 os_ << "\n"; | 583 os_ << "\n"; |
586 | 584 |
587 PrintIndent(); | 585 PrintIndent(); |
588 os_ << "xhandlers\n"; | 586 os_ << "xhandlers\n"; |
589 | 587 |
590 PrintIndent(); | 588 PrintIndent(); |
591 os_ << "flags\n"; | 589 os_ << "flags\n"; |
592 | 590 |
593 if (current->dominator() != NULL) { | 591 if (current->dominator() != NULL) { |
(...skipping 64 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
658 BasicBlock::Control control = current->control(); | 656 BasicBlock::Control control = current->control(); |
659 if (control != BasicBlock::kNone) { | 657 if (control != BasicBlock::kNone) { |
660 PrintIndent(); | 658 PrintIndent(); |
661 os_ << "0 0 "; | 659 os_ << "0 0 "; |
662 if (current->control_input() != NULL) { | 660 if (current->control_input() != NULL) { |
663 PrintNode(current->control_input()); | 661 PrintNode(current->control_input()); |
664 } else { | 662 } else { |
665 os_ << -1 - current->id().ToInt() << " Goto"; | 663 os_ << -1 - current->id().ToInt() << " Goto"; |
666 } | 664 } |
667 os_ << " ->"; | 665 os_ << " ->"; |
668 for (BasicBlock::Successors::iterator j = current->successors_begin(); | 666 for (auto successor : current->successors()) { |
669 j != current->successors_end(); ++j) { | 667 os_ << " B" << successor->id(); |
670 os_ << " B" << (*j)->id(); | |
671 } | 668 } |
672 if (FLAG_trace_turbo_types && current->control_input() != NULL) { | 669 if (FLAG_trace_turbo_types && current->control_input() != NULL) { |
673 os_ << " "; | 670 os_ << " "; |
674 PrintType(current->control_input()); | 671 PrintType(current->control_input()); |
675 } | 672 } |
676 os_ << " <|@\n"; | 673 os_ << " <|@\n"; |
677 } | 674 } |
678 } | 675 } |
679 | 676 |
680 if (instructions != NULL) { | 677 if (instructions != NULL) { |
(...skipping 143 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
824 os << "#" << SafeId(i) << ":" << SafeMnemonic(i); | 821 os << "#" << SafeId(i) << ":" << SafeMnemonic(i); |
825 } | 822 } |
826 os << ")" << std::endl; | 823 os << ")" << std::endl; |
827 } | 824 } |
828 } | 825 } |
829 return os; | 826 return os; |
830 } | 827 } |
831 } | 828 } |
832 } | 829 } |
833 } // namespace v8::internal::compiler | 830 } // namespace v8::internal::compiler |
OLD | NEW |