Eliminate use of C++ static constructors.
authorbryce <bryce@138bc75d-0d04-0410-961f-82ee72b054a4>
Tue, 16 Oct 2001 08:35:17 +0000 (08:35 +0000)
committerbryce <bryce@138bc75d-0d04-0410-961f-82ee72b054a4>
Tue, 16 Oct 2001 08:35:17 +0000 (08:35 +0000)
commit380cddab526fcf3c2f33dc8ebeb61c2d42703f41
tree48472b1f97ae998bfbcb469ac6838d504c367998
parentc490b220adad350c352aa16b7c0c6c812fc1cd48
Eliminate use of C++ static constructors.
* interpret.cc: Remove static Utf8Consts. Use namespace gcj.
* jni.cc: Likewise.
* resolve.cc: Likewise.
* defineclass.cc: Likewise.
(_Jv_ClassReader::handleClassBegin): Synchronize call to
_Jv_RegisterClass.
* include/jvm.h (void_signature, clinit_name, init_name, finit_name):
Declare in namespace gcj.
* java/lang/Class.h (Class): Remove initialization for primitive
types.
(friend void _Jv_InitPrimClass): This is in prims.cc.
* prims.cc (_Jv_InitPrimClass): Do primitive type initialization
here instead.
(void_signature, clinit_name, init_name, finit_name): Define in
namespace gcj.
(_Jv_CreateJavaVM): Call _Jv_InitThreads, _Jv_InitGC, and
_Jv_InitializeSyncMutex from here. Initialize Utf8 constants.
Initialize primitive types.
* java/lang/natClassLoader.cc (_Jv_RegisterClasses): Don't call
initialization routines. Don't synchronize.
* java/lang/natRuntime.cc (_load): Synchronize on java.lang.Class
across dlopen call.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@46282 138bc75d-0d04-0410-961f-82ee72b054a4
libjava/ChangeLog
libjava/defineclass.cc
libjava/include/jvm.h
libjava/interpret.cc
libjava/java/lang/natClass.cc
libjava/java/lang/natClassLoader.cc
libjava/java/lang/natRuntime.cc
libjava/jni.cc
libjava/prims.cc
libjava/resolve.cc