X-Git-Url: http://demsky.eecs.uci.edu/git/?a=blobdiff_plain;f=include%2Fllvm%2FAnalysis%2FIntervalPartition.h;h=feae6d82f82f5a3cfc10d891321f74ed3d92ee9a;hb=c23197a26f34f559ea9797de51e187087c039c42;hp=1cc903cae1db1ba559802f95cf9ba497b588792c;hpb=9769ab22265b313171d201b5928688524a01bd87;p=oota-llvm.git diff --git a/include/llvm/Analysis/IntervalPartition.h b/include/llvm/Analysis/IntervalPartition.h index 1cc903cae1d..feae6d82f82 100644 --- a/include/llvm/Analysis/IntervalPartition.h +++ b/include/llvm/Analysis/IntervalPartition.h @@ -2,8 +2,8 @@ // // The LLVM Compiler Infrastructure // -// This file was developed by the LLVM research group and is distributed under -// the University of Illinois Open Source License. See LICENSE.TXT for details. +// This file is distributed under the University of Illinois Open Source +// License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // @@ -25,6 +25,7 @@ #include "llvm/Analysis/Interval.h" #include "llvm/Pass.h" +#include namespace llvm { @@ -45,7 +46,9 @@ class IntervalPartition : public FunctionPass { std::vector Intervals; public: - IntervalPartition() : RootInterval(0) {} + static char ID; // Pass identification, replacement for typeid + + IntervalPartition() : FunctionPass(&ID), RootInterval(0) {} // run - Calculate the interval partition for this function virtual bool runOnFunction(Function &F); @@ -56,11 +59,11 @@ public: // IntervalPartition(IntervalPartition &I, bool); - // Destructor - Free memory - ~IntervalPartition() { destroy(); } - // print - Show contents in human readable format... virtual void print(std::ostream &O, const Module* = 0) const; + void print(std::ostream *O, const Module* M = 0) const { + if (O) print(*O, M); + } // getRootInterval() - Return the root interval that contains the starting // block of the function. @@ -86,10 +89,10 @@ public: // Interface to Intervals vector... const std::vector &getIntervals() const { return Intervals; } -private: - // destroy - Reset state back to before function was analyzed - void destroy(); + // releaseMemory - Reset state back to before function was analyzed + void releaseMemory(); +private: // addIntervalToPartition - Add an interval to the internal list of intervals, // and then add mappings from all of the basic blocks in the interval to the // interval itself (in the IntervalMap).