summaryrefslogtreecommitdiff
path: root/lib/Bytecode
diff options
context:
space:
mode:
authorChris Lattner <sabre@nondot.org>2005-02-13 17:48:18 +0000
committerChris Lattner <sabre@nondot.org>2005-02-13 17:48:18 +0000
commitb52f1c2950d745f4b305e82cf1ac9a0b49274f56 (patch)
treef9841b1e19117678acf28a69b845d237d223848a /lib/Bytecode
parente5cea5eb89c9e96e8c8f5318c393d573ac8662bc (diff)
downloadllvm-b52f1c2950d745f4b305e82cf1ac9a0b49274f56.tar.gz
llvm-b52f1c2950d745f4b305e82cf1ac9a0b49274f56.tar.bz2
llvm-b52f1c2950d745f4b305e82cf1ac9a0b49274f56.tar.xz
Make sure to clear the LazyFunctionLoadMap after we ParseAllFunctionBodies.
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
Diffstat (limited to 'lib/Bytecode')
-rw-r--r--lib/Bytecode/Reader/Reader.cpp3
1 files changed, 2 insertions, 1 deletions
diff --git a/lib/Bytecode/Reader/Reader.cpp b/lib/Bytecode/Reader/Reader.cpp
index cf68d678e2..6876cf70b5 100644
--- a/lib/Bytecode/Reader/Reader.cpp
+++ b/lib/Bytecode/Reader/Reader.cpp
@@ -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