blob: 48e8b5ac9dde3c38fb0255683fc2c105c3950323 [file] [log] [blame]
Chris Lattnerda956802001-06-21 05:27:22 +00001//===-- IntervalWriter.cpp - Library for printing Intervals ------*- C++ -*--=//
2//
3// This library implements the interval printing functionality defined in
4// llvm/Assembly/Writer.h
5//
6//===----------------------------------------------------------------------===//
7
8#include "llvm/Assembly/Writer.h"
Chris Lattnerc9f39b22001-06-24 04:05:45 +00009#include "llvm/Analysis/Interval.h"
Chris Lattnerda956802001-06-21 05:27:22 +000010#include <iterator>
11#include <algorithm>
12
13void cfg::WriteToOutput(const Interval *I, ostream &o) {
14 o << "-------------------------------------------------------------\n"
15 << "Interval Contents:\n";
16
17 // Print out all of the basic blocks in the interval...
18 copy(I->Nodes.begin(), I->Nodes.end(),
19 ostream_iterator<BasicBlock*>(o, "\n"));
20
21 o << "Interval Predecessors:\n";
22 copy(I->Predecessors.begin(), I->Predecessors.end(),
23 ostream_iterator<BasicBlock*>(o, "\n"));
24
25 o << "Interval Successors:\n";
26 copy(I->Successors.begin(), I->Successors.end(),
27 ostream_iterator<BasicBlock*>(o, "\n"));
28}