Hack to work around deficiency in pass infrastructure

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@5485 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Chris Lattner
2003-02-03 22:51:28 +00:00
parent 8105cfbed0
commit 4923d1be91
3 changed files with 15 additions and 7 deletions

View File

@ -136,7 +136,7 @@ class TDDataStructures : public Pass {
hash_set<const Function*> GraphDone;
DSGraph *GlobalsGraph;
public:
~TDDataStructures() { releaseMemory(); }
~TDDataStructures() { releaseMyMemory(); }
virtual bool run(Module &M);
@ -157,13 +157,14 @@ public:
void print(std::ostream &O, const Module *M) const;
// If the pass pipeline is done with this pass, we can release our memory...
virtual void releaseMemory();
virtual void releaseMyMemory();
// getAnalysisUsage - This obviously provides a data structure graph.
virtual void getAnalysisUsage(AnalysisUsage &AU) const {
AU.setPreservesAll();
AU.addRequired<BUDataStructures>();
}
private:
void calculateGraph(Function &F);
DSGraph &getOrCreateDSGraph(Function &F);