Make sure to clear the LazyFunctionLoadMap after we ParseAllFunctionBodies.
authorChris Lattner <sabre@nondot.org>
Sun, 13 Feb 2005 17:48:18 +0000 (17:48 +0000)
committerChris Lattner <sabre@nondot.org>
Sun, 13 Feb 2005 17:48:18 +0000 (17:48 +0000)
Otherwise, clients who call ParseAllFunctionBodies will attempt to parse
the function bodies twice, which is (uh) very very bad (tm).

This fixes gccld on python.

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

lib/Bytecode/Reader/Reader.cpp

index cf68d678e2ca7f882bd4619b4cdee2398d08c6f5..6876cf70b53abd96b29f6c96c3b48846301d8675 100644 (file)
@@ -1769,9 +1769,10 @@ void BytecodeReader::ParseAllFunctionBodies() {
     Function* Func = Fi->first;
     BlockStart = At = Fi->second.Buf;
     BlockEnd = Fi->second.EndBuf;
-    this->ParseFunctionBody(Func);
+    ParseFunctionBody(Func);
     ++Fi;
   }
+  LazyFunctionLoadMap.clear();
 }
 
 /// Parse the global type list