diff options
| author | Chris Lattner <sabre@nondot.org> | 2001-07-03 15:28:35 +0000 |
|---|---|---|
| committer | Chris Lattner <sabre@nondot.org> | 2001-07-03 15:28:35 +0000 |
| commit | 81f3ace7531c25ac5338e7aa488c70f97212b545 (patch) | |
| tree | 58de4fc3bbd1c0e888dbce5b5e2feebdb143824a /llvm/lib/Analysis | |
| parent | 6bf3e9512bbd281eaafffe3983719a8250961280 (diff) | |
| download | bcm5719-llvm-81f3ace7531c25ac5338e7aa488c70f97212b545.tar.gz bcm5719-llvm-81f3ace7531c25ac5338e7aa488c70f97212b545.zip | |
IntervalPartition was changed to inherit from vector<Interval*> instead of
contain it so that it would have full iterator access without much work.
Writer includes code to print out IntervalPartition's now.
llvm-svn: 133
Diffstat (limited to 'llvm/lib/Analysis')
| -rw-r--r-- | llvm/lib/Analysis/IntervalPartition.cpp | 2 | ||||
| -rw-r--r-- | llvm/lib/Analysis/Writer.cpp | 16 |
2 files changed, 16 insertions, 2 deletions
diff --git a/llvm/lib/Analysis/IntervalPartition.cpp b/llvm/lib/Analysis/IntervalPartition.cpp index af6cea1627d..bbdcbef65f4 100644 --- a/llvm/lib/Analysis/IntervalPartition.cpp +++ b/llvm/lib/Analysis/IntervalPartition.cpp @@ -24,7 +24,7 @@ IntervalPartition::~IntervalPartition() { // interval itself (in the IntervalMap). // void IntervalPartition::addIntervalToPartition(Interval *I) { - IntervalList.push_back(I); + push_back(I); // Add mappings for all of the basic blocks in I to the IntervalPartition for (Interval::node_iterator It = I->Nodes.begin(), End = I->Nodes.end(); diff --git a/llvm/lib/Analysis/Writer.cpp b/llvm/lib/Analysis/Writer.cpp index 9080dc61441..6fce54a8288 100644 --- a/llvm/lib/Analysis/Writer.cpp +++ b/llvm/lib/Analysis/Writer.cpp @@ -6,11 +6,15 @@ //===----------------------------------------------------------------------===// #include "llvm/Analysis/Writer.h" -#include "llvm/Analysis/Interval.h" +#include "llvm/Analysis/IntervalPartition.h" #include "llvm/Analysis/Dominators.h" #include <iterator> #include <algorithm> +//===----------------------------------------------------------------------===// +// Interval Printing Routines +//===----------------------------------------------------------------------===// + void cfg::WriteToOutput(const Interval *I, ostream &o) { o << "-------------------------------------------------------------\n" << "Interval Contents:\n"; @@ -28,6 +32,16 @@ void cfg::WriteToOutput(const Interval *I, ostream &o) { ostream_iterator<BasicBlock*>(o, "\n")); } +void cfg::WriteToOutput(const IntervalPartition &IP, ostream &o) { + copy(IP.begin(), IP.end(), ostream_iterator<const Interval *>(o, "\n")); +} + + + +//===----------------------------------------------------------------------===// +// Dominator Printing Routines +//===----------------------------------------------------------------------===// + ostream &operator<<(ostream &o, const set<const BasicBlock*> &BBs) { copy(BBs.begin(), BBs.end(), ostream_iterator<const BasicBlock*>(o, "\n")); return o; |

