diff --git a/lib/VMCore/Metadata.cpp b/lib/VMCore/Metadata.cpp index 909c33d55bc..bccdafa9cd1 100644 --- a/lib/VMCore/Metadata.cpp +++ b/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.