llvm-project/llvm/lib/Bitcode/Reader
Chris Lattner 06310bf178 Fix PR4336: Iterating over use-def chains doesn't seem to be deterministic.
The problem was that BitcodeReader::materializeModule would read functions
from the bc file in densemap pointer key order (doubly non-deterministic!),
which would cause the use-def chains to be set up for globals in
non-determinstic order.  Non-determinstic use/def chains can cause 
nondeterminism in many places down-stream.

Many thanks to Julien Lerouge for putting together the pass in the PR that
shows the issue!

llvm-svn: 73470
2009-06-16 05:15:21 +00:00
..
BitReader.cpp Unbreak build with gcc 4.3: provide missed includes and silence most annoying warnings. 2008-02-20 11:08:44 +00:00
BitcodeReader.cpp Fix PR4336: Iterating over use-def chains doesn't seem to be deterministic. 2009-06-16 05:15:21 +00:00
BitcodeReader.h Make a major API change to BitstreamReader: split all the reading 2009-04-26 20:59:02 +00:00
CMakeLists.txt Initial support for the CMake build system. 2008-09-22 01:08:49 +00:00
Deserialize.cpp Make a major API change to BitstreamReader: split all the reading 2009-04-26 20:59:02 +00:00
DeserializeAPFloat.cpp Remove attribution from file headers, per discussion on llvmdev. 2007-12-29 20:36:04 +00:00
DeserializeAPInt.cpp Remove attribution from file headers, per discussion on llvmdev. 2007-12-29 20:36:04 +00:00
Makefile Removed trailing whitespace from Makefiles. 2009-01-09 16:44:42 +00:00