summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorChris Lattner <sabre@nondot.org>2002-08-09 22:52:06 +0000
committerChris Lattner <sabre@nondot.org>2002-08-09 22:52:06 +0000
commite836b583e096ae69cf41e82934c46392545e75c6 (patch)
treebcf7ff8a28527f31c962ccb8fcc77c505ac963b9
parent2253a154d73a97c6ec76636249a92e82ebc1b965 (diff)
downloadbcm5719-llvm-e836b583e096ae69cf41e82934c46392545e75c6.tar.gz
bcm5719-llvm-e836b583e096ae69cf41e82934c46392545e75c6.zip
* IntervalPartition no longer derives from vector
llvm-svn: 3281
-rw-r--r--llvm/include/llvm/Analysis/IntervalPartition.h8
1 files changed, 6 insertions, 2 deletions
diff --git a/llvm/include/llvm/Analysis/IntervalPartition.h b/llvm/include/llvm/Analysis/IntervalPartition.h
index a295ce1034a..197c469db98 100644
--- a/llvm/include/llvm/Analysis/IntervalPartition.h
+++ b/llvm/include/llvm/Analysis/IntervalPartition.h
@@ -27,12 +27,13 @@
// BasicBlock is a (possibly nonexistent) loop with a "tail" of non looping
// nodes following it.
//
-class IntervalPartition : public FunctionPass, public std::vector<Interval*> {
+class IntervalPartition : public FunctionPass {
typedef std::map<BasicBlock*, Interval*> IntervalMapTy;
IntervalMapTy IntervalMap;
typedef std::vector<Interval*> IntervalListTy;
Interval *RootInterval;
+ std::vector<Interval*> Intervals;
public:
static AnalysisID ID; // We are an analysis, we must have an ID
@@ -60,7 +61,7 @@ public:
// isDegeneratePartition() - Returns true if the interval partition contains
// a single interval, and thus cannot be simplified anymore.
- bool isDegeneratePartition() { return size() == 1; }
+ bool isDegeneratePartition() { return Intervals.size() == 1; }
// TODO: isIrreducible - look for triangle graph.
@@ -75,6 +76,9 @@ public:
AU.setPreservesAll();
}
+ // Interface to Intervals vector...
+ const std::vector<Interval*> &getIntervals() const { return Intervals; }
+
private:
// destroy - Reset state back to before function was analyzed
void destroy();
OpenPOWER on IntegriCloud