aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorEdwin Török <edwintorok@gmail.com>2008-05-03 20:25:26 +0000
committerEdwin Török <edwintorok@gmail.com>2008-05-03 20:25:26 +0000
commit6bf0c5675f17a58a64b02accf489da811a933810 (patch)
treea15e44065bfb8733b3e71febaa7ae9529cc83ee7
parentf8812efdc1378b868c0b376c067b92be0e2798ad (diff)
downloadexternal_llvm-6bf0c5675f17a58a64b02accf489da811a933810.zip
external_llvm-6bf0c5675f17a58a64b02accf489da811a933810.tar.gz
external_llvm-6bf0c5675f17a58a64b02accf489da811a933810.tar.bz2
Implement destructor for PostDominatorTree to eliminate a memory leak.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50607 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r--include/llvm/Analysis/PostDominators.h2
-rw-r--r--lib/Analysis/PostDominators.cpp5
2 files changed, 7 insertions, 0 deletions
diff --git a/include/llvm/Analysis/PostDominators.h b/include/llvm/Analysis/PostDominators.h
index 07910e9..27c2b26 100644
--- a/include/llvm/Analysis/PostDominators.h
+++ b/include/llvm/Analysis/PostDominators.h
@@ -29,6 +29,8 @@ struct PostDominatorTree : public FunctionPass {
DT = new DominatorTreeBase<BasicBlock>(true);
}
+ ~PostDominatorTree();
+
virtual bool runOnFunction(Function &F);
virtual void getAnalysisUsage(AnalysisUsage &AU) const {
diff --git a/lib/Analysis/PostDominators.cpp b/lib/Analysis/PostDominators.cpp
index 4330e90..c72b140 100644
--- a/lib/Analysis/PostDominators.cpp
+++ b/lib/Analysis/PostDominators.cpp
@@ -37,6 +37,11 @@ bool PostDominatorTree::runOnFunction(Function &F) {
return false;
}
+PostDominatorTree::~PostDominatorTree()
+{
+ delete DT;
+}
+
//===----------------------------------------------------------------------===//
// PostDominanceFrontier Implementation
//===----------------------------------------------------------------------===//