aboutsummaryrefslogtreecommitdiff
path: root/llvm/lib/Analysis/InlineCost.cpp
diff options
context:
space:
mode:
authorEaswaran Raman <eraman@google.com>2016-03-04 01:18:40 +0000
committerEaswaran Raman <eraman@google.com>2016-03-04 01:18:40 +0000
commit588c68a87b54e42d4d62abd1621ed7f34bab01de (patch)
treec46315ed45886a0d4e7630676d304ee36661f75f /llvm/lib/Analysis/InlineCost.cpp
parent87feb4e64e2ea574df3a45ba057d9fc506f0c8f7 (diff)
downloadllvm-588c68a87b54e42d4d62abd1621ed7f34bab01de.zip
llvm-588c68a87b54e42d4d62abd1621ed7f34bab01de.tar.gz
llvm-588c68a87b54e42d4d62abd1621ed7f34bab01de.tar.bz2
Fix a memory leak.
llvm-svn: 262682
Diffstat (limited to 'llvm/lib/Analysis/InlineCost.cpp')
-rw-r--r--llvm/lib/Analysis/InlineCost.cpp5
1 files changed, 4 insertions, 1 deletions
diff --git a/llvm/lib/Analysis/InlineCost.cpp b/llvm/lib/Analysis/InlineCost.cpp
index 4f69d1f..355c326 100644
--- a/llvm/lib/Analysis/InlineCost.cpp
+++ b/llvm/lib/Analysis/InlineCost.cpp
@@ -1600,5 +1600,8 @@ BlockFrequencyInfo *BlockFrequencyAnalysis::getBlockFrequencyInfo(Function *F) {
/// \brief Invalidate BlockFrequencyInfo for a function.
void BlockFrequencyAnalysis::invalidateBlockFrequencyInfo(Function *F) {
- BFM.erase(F);
+ if (BFM.count(F)) {
+ delete BFM[F];
+ BFM.erase(F);
+ }
}