From 1f3b0c03e5cc00d4cd6cab4575d80c02366250db Mon Sep 17 00:00:00 2001 From: Benjamin Kramer Date: Sat, 21 Aug 2010 15:07:23 +0000 Subject: Use MDNode::destroy(). Fixes a delete/free mismatch. llvm-svn: 111739 --- llvm/lib/VMCore/Metadata.cpp | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) (limited to 'llvm/lib') diff --git a/llvm/lib/VMCore/Metadata.cpp b/llvm/lib/VMCore/Metadata.cpp index 909c33d55bc..bccdafa9cd1 100644 --- a/llvm/lib/VMCore/Metadata.cpp +++ b/llvm/lib/VMCore/Metadata.cpp @@ -263,10 +263,8 @@ void MDNode::deleteTemporary(MDNode *N) { "Temporary MDNode does not have NotUniquedBit set!"); assert((N->getSubclassDataFromValue() & DestroyFlag) == 0 && "Temporary MDNode has DestroyFlag set!"); - N->setValueSubclassData(N->getSubclassDataFromValue() | - DestroyFlag); LeakDetector::removeGarbageObject(N); - delete N; + N->destroy(); } /// getOperand - Return specified operand. -- cgit v1.2.3