Chris Lattner ccaba64332 Eliminate the static constructors and locks from DynamicLibrary.cpp.
This fixes PR4512 and eliminating static ctors is always good.  Losing
thread safety is unfortunate, but the code is just incredibly poorly
designed.

If someone is interested, the "right" solution is to split
DynamicLibrary.cpp into two separate pieces: a stateless piece in
libsystem, and a simple support file in libsupport that has the
"state" (e.g.  AddSymbol) in managed static objects.

Doing this would both fix memory leaks we already have, as well as make
the code thread safe again.  it would also make sense to move all the
unix specific code in System/DynamicLibrary.cpp into 
System/Unix/DynamicLibrary.inc.

llvm-svn: 74927
2009-07-07 18:17:07 +00:00
..
2009-07-07 16:09:05 +00:00
2009-07-01 07:03:41 +00:00
2009-07-07 17:32:34 +00:00
2009-07-06 23:00:19 +00:00
2009-07-06 23:00:19 +00:00
2009-07-05 22:35:49 +00:00
2009-04-01 16:13:29 +00:00
2009-03-19 23:26:52 +00:00