diff options
author | Chris Lattner <sabre@nondot.org> | 2005-02-13 17:48:18 +0000 |
---|---|---|
committer | Chris Lattner <sabre@nondot.org> | 2005-02-13 17:48:18 +0000 |
commit | 147c561432ba72c0486f737eedae11af82ea3b41 (patch) | |
tree | 4ee4c17e8127ab06dd037d4910adb6d04d02aa8c /llvm/lib/Bytecode | |
parent | 1b9f9c5f67027011e8c8f376871197401bd40c84 (diff) | |
download | bcm5719-llvm-147c561432ba72c0486f737eedae11af82ea3b41.tar.gz bcm5719-llvm-147c561432ba72c0486f737eedae11af82ea3b41.zip |
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.
llvm-svn: 20152
Diffstat (limited to 'llvm/lib/Bytecode')
-rw-r--r-- | llvm/lib/Bytecode/Reader/Reader.cpp | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/llvm/lib/Bytecode/Reader/Reader.cpp b/llvm/lib/Bytecode/Reader/Reader.cpp index cf68d678e2c..6876cf70b53 100644 --- a/llvm/lib/Bytecode/Reader/Reader.cpp +++ b/llvm/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 |