aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--lib/VMCore/LLVMContextImpl.h3
1 files changed, 3 insertions, 0 deletions
diff --git a/lib/VMCore/LLVMContextImpl.h b/lib/VMCore/LLVMContextImpl.h
index 77130d1ab9..048018d6b4 100644
--- a/lib/VMCore/LLVMContextImpl.h
+++ b/lib/VMCore/LLVMContextImpl.h
@@ -203,6 +203,9 @@ public:
AggZeroConstants.freeConstants();
NullPtrConstants.freeConstants();
UndefValueConstants.freeConstants();
+ for (FoldingSet<MDNode>::iterator I=MDNodeSet.begin(),
+ E =MDNodeSet.end(); I != E; ++I)
+ I->dropAllReferences();
for (IntMapTy::iterator I=IntConstants.begin(), E=IntConstants.end();
I != E; ++I) {
if (I->second->use_empty())