-
- Downloads
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. From-SVN: r46282
Showing
- libjava/ChangeLog 24 additions, 0 deletionslibjava/ChangeLog
- libjava/defineclass.cc 6 additions, 5 deletionslibjava/defineclass.cc
- libjava/include/jvm.h 9 additions, 0 deletionslibjava/include/jvm.h
- libjava/interpret.cc 1 addition, 1 deletionlibjava/interpret.cc
- libjava/java/lang/natClass.cc 5 additions, 18 deletionslibjava/java/lang/natClass.cc
- libjava/java/lang/natClassLoader.cc 4 additions, 16 deletionslibjava/java/lang/natClassLoader.cc
- libjava/java/lang/natRuntime.cc 8 additions, 1 deletionlibjava/java/lang/natRuntime.cc
- libjava/jni.cc 2 additions, 3 deletionslibjava/jni.cc
- libjava/prims.cc 71 additions, 15 deletionslibjava/prims.cc
- libjava/resolve.cc 2 additions, 3 deletionslibjava/resolve.cc
Loading
Please register or sign in to comment