Clear FunctionLocalMDs in purgeFunction along with the rest of the
authorDan Gohman <gohman@apple.com>
Wed, 25 Aug 2010 17:11:16 +0000 (17:11 +0000)
committerDan Gohman <gohman@apple.com>
Wed, 25 Aug 2010 17:11:16 +0000 (17:11 +0000)
function-specific state.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@112058 91177308-0d34-0410-b5e6-96231b3b80d8

lib/Bitcode/Writer/ValueEnumerator.cpp

index 15f8f6cdb0d8ae603c6b792e43afcc3992cc2914..2f02262c36aff12518340a7898d0662b470e521e 100644 (file)
@@ -445,7 +445,6 @@ void ValueEnumerator::incorporateFunction(const Function &F) {
 
   FirstInstID = Values.size();
 
-  FunctionLocalMDs.clear();
   SmallVector<MDNode *, 8> FnLocalMDVector;
   // Add all of the instructions.
   for (Function::const_iterator BB = F.begin(), E = F.end(); BB != E; ++BB) {
@@ -488,6 +487,7 @@ void ValueEnumerator::purgeFunction() {
   Values.resize(NumModuleValues);
   MDValues.resize(NumModuleMDValues);
   BasicBlocks.clear();
+  FunctionLocalMDs.clear();
 }
 
 static void IncorporateFunctionInfoGlobalBBIDs(const Function *F,