Christian Thalinger [Mon, 31 Mar 2008 15:31:53 +0000 (17:31 +0200)]
Fixes PR59.
* src/native/jni.c (_Jv_JNI_Get##name##Field): Added TRACEJNICALLS.
(_Jv_JNI_Set##name##Field): Likewise.
(_Jv_JNI_CallStaticObjectMethod): Likewise.
(_Jv_JNI_CallStaticObjectMethodV): Likewise.
(_Jv_JNI_CallStaticObjectMethodA): Likewise.
(_Jv_JNI_CallStaticVoidMethod): Likewise.
(_Jv_JNI_CallStaticVoidMethodV): Likewise.
(_Jv_JNI_CallStaticVoidMethodA): Likewise.
(_Jv_JNI_GetArrayLength): Likewise.
(_Jv_JNI_Get##name##ArrayElements): Likewise.
(_Jv_JNI_Get##name##ArrayRegion): Likewise.
(jni_attach_current_thread): Check correctly if current thread is
already attached.
(_Jv_JNI_DetachCurrentThread): Check if current thread is already
detached.
* src/threads/posix/threads.c (threads_detach_thread): Likewise.
* src/threads/threads-common.c (threads_init) [WITH_CLASSPATH_SUN]:
Resolve correct thread init method.
(thread_create_object): New function, but not yet implemented.
(thread_create_initial_thread): Lot of changes.
* src/threads/threads-common.h (thread_is_attached): New function.
(thread_current_is_attached): Likewise.
* src/vm/global.h (STR): New macro, stolen from OpenJDK.
* src/vm/vm.c (vm_run): Detach the main thread before calling
vm_destroy.
(vm_destroy): Attach the main thread again as DestroyJavaVM thread.
Christian Thalinger [Mon, 31 Mar 2008 14:54:27 +0000 (16:54 +0200)]
* src/threads/posix/threads.c (threads_set_current_threadobject):
Moved from here...
(threads_get_current_threadobject): Likewise.
* src/threads/posix/threads.h (thread_get_current): ...to here.
(thread_set_current): Likewise.
* src/threads/threads-common.h (threads_set_current_threadobject):
Removed.
* src/native/jni.c (jni_attach_current_thread): Use new function name.
(_Jv_JNI_DetachCurrentThread): Likewise.
(_Jv_JNI_GetEnv): Likewise.
* src/native/jvmti/cacaodbg.c (jvmti_get_current_thread): Likewise.
* src/threads/threads-common.c (threads_preinit): Likewise.
Christian Thalinger [Mon, 31 Mar 2008 10:16:10 +0000 (12:16 +0200)]
* configure.ac (AC_CHECK_WITH_HPI_MD_H): Added.
(AC_CHECK_WITH_HPI_H): Likewise.
* m4/classpath.m4 (AC_CHECK_WITH_CLASSPATH_CLASSES): Changed default
for OpenJDK.
(AC_CHECK_WITH_CLASSPATH_LIBDIR): Likewise.
(AC_CHECK_WITH_JNI_MD_H): Likewise.
(AC_CHECK_WITH_JNI_H): Likewise.
* m4/hpi.m4: New file.
* src/native/vm/nativevm.c (nativevm_preinit): Call hpi_initialize.
* src/native/vm/sun/Makefile.am (libnativevmcore_la_SOURCES): Added
hpi.[ch].
* src/native/vm/sun/hpi.c: New file.
* src/native/vm/sun/hpi.h: Likewise.
* src/native/vm/sun/jvm.c (JVM_GetLastErrorString): Use HPI function.
(JVM_NativePath): Likewise.
(JVM_Open): Likewise.
(JVM_Close): Likewise.
(JVM_Read): Likewise.
(JVM_Write): Likewise.
(JVM_Available): Likewise.
(JVM_Lseek): Likewise.
(JVM_SetLength): Likewise.
(JVM_Sync): Likewise.
(JVM_InitializeSocketLibrary): Call hpi_initialize_socket_library.
* src/vmcore/options.c (opt_TraceHPI): Added global variable.
(options_xx): Handle new option.
* src/vmcore/options.h: Likewise.
Christian Thalinger [Mon, 31 Mar 2008 07:24:41 +0000 (09:24 +0200)]
* src/native/vm/nativevm.c (nativevm_preinit) [WITH_CLASSPATH_SUN]:
Check for native_library_open error.
Edwin Steiner [Sat, 29 Mar 2008 15:38:42 +0000 (16:38 +0100)]
* src/vm/jit/stack.c (stack_analyse): Clean up: removed an obsolete
assignment to copy->varkind. (It is set in SET_TEMPVAR anyway.)
Edwin Steiner [Sat, 29 Mar 2008 15:34:00 +0000 (16:34 +0100)]
* src/vm/jit/stack.c (stack_analyse): Use the javaindex instead of the
CACAO varindex for checking conflicts with local variables. While there
is no real conflict between CACAO variables of different types, the
register allocator makes the implicit assumption that variables
corresponding to the same javaindex may be coalesced. As long as this
assumption is made, we must consider variables with the same javaindex
as conflicting (and also check against that in the verifier).
This fixes [Bug 49] VerifyError with obfuscated classes.
Edwin Steiner [Sat, 29 Mar 2008 15:25:23 +0000 (16:25 +0100)]
* src/vm/jit/stack.c (stack_analyse): Clean up the ICMD_IINC case so
it uses the javaindex variable. (No functional change.)
Edwin Steiner [Sat, 29 Mar 2008 15:15:22 +0000 (16:15 +0100)]
* src/vm/jit/jit.h (jitdata): Added reverselocalmap.
* src/vm/jit/parse.c (parse): Fill the reverselocalmap.
* src/vm/jit/verify/typecheck-common.h (verifier_state): Removed the
reverselocalmap.
* src/vm/jit/verify/typecheck.c (typecheck_invalidate_locals): Use
jd->reverselocalmap.
(typecheck): Likewise.
Edwin Steiner [Sat, 29 Mar 2008 15:09:30 +0000 (16:09 +0100)]
* tests/regression/jasmin/test_load_store_conflict_different_types.j:
New test exposing the bug in conflict checking for local variables
([Bug 49] VerifyError with obfuscated classes).
* tests/regression/jasmin/Makefile.am: Added new test.
Edwin Steiner [Sat, 29 Mar 2008 15:06:00 +0000 (16:06 +0100)]
* contrib/vmlog/vmlog_cacao.h: Removed #include of a header that does
not exist anymore.
Christian Thalinger [Thu, 27 Mar 2008 14:00:48 +0000 (15:00 +0100)]
* src/threads/posix/threads.c (threads_attach_current_thread):
Removed.
* src/threads/posix/threads.h: Likewise.
* src/threads/threads-common.c (threads_attach_current_thread): Added.
* src/threads/threads-common.h: Likewise.
Christian Thalinger [Thu, 27 Mar 2008 10:43:29 +0000 (11:43 +0100)]
* src/native/vm/nativevm.c (nativevm_preinit): Changed signature, use
system_* functions.
(nativevm_init): Changed signature.
* src/native/vm/nativevm.h: Likewise.
* src/native/vm/sun/jvm.c (JVM_InitProperties): Added
sun.nio.MaxDirectMemorySize handling.
* src/vm/global.h (PRINTF_FORMAT_INT64_T): Added define for int64_t
formater.
* src/vm/initialize.c (initialize_init): New function.
* src/vm/initialize.h: Likewise.
* src/vm/vm.c (vm_create): Added initialize_init.
* src/vmcore/options.c (opt_MaxDirectMemorySize): New global variable.
(options_xx): Use system_* functions.
* src/vmcore/options.h: Likewise.
Christian Thalinger [Thu, 27 Mar 2008 10:23:52 +0000 (11:23 +0100)]
* configure.ac (AC_CHECK_FUNCS): Added strcat, strcpy.
* src/vmcore/system.h (system_atoi): New function.
(system_strcat): Likewise.
(system_strcpy): Likewise.
Christian Thalinger [Wed, 26 Mar 2008 16:57:56 +0000 (17:57 +0100)]
* src/vmcore/loader.c (load_class_from_classbuffer_intern): Also call
resolve_handle_pending_exception for super interfaces.
* tests/regression/bugzilla/PR58.java (test): Renamed to
testSuperClass.
(testSuperInterface): New method.
Christian Thalinger [Wed, 26 Mar 2008 16:14:46 +0000 (17:14 +0100)]
* src/cacaoh/dummy.c (resolve_handle_pending_exception): New function.
* src/native/vm/sun/jvm.c (JVM_FindClassFromClassLoader): Added assert
on throwError.
(JVM_DoPrivileged): Throw PrivilegedActionException only if the
exception is an instance of java.lang.Exception but not of
java.lang.RuntimeException.
* src/vm/exceptions.c (exceptions_new_class_utf): New function.
(exceptions_throw_class_utf): Likewise.
(exceptions_throw_classnotfoundexception): Use
exceptions_throw_class_utf.
(exceptions_classnotfoundexception_to_noclassdeffounderror): Removed.
* src/vm/exceptions.h: Likewise.
* src/vm/resolve.c (resolve_handle_pending_exception): New function.
(resolve_class_from_name): Don't convert exception.
* src/vm/resolve.h (resolve_handle_pending_exception): Added.
* src/vmcore/class.c (class_java_lang_Exception): New global variable.
(class_java_lang_ClassNotFoundException): Likewise.
(class_java_lang_RuntimeException): Likewise.
* src/vmcore/class.h: Likewise.
* src/vmcore/linker.c (linker_init): Link new global classes.
* src/vmcore/loader.c (loader_init): Load new global classes.
* src/vmcore/utf8.c (utf_java_lang_RuntimeException): New global
variable.
(utf8_init): Initialize new global variable.
* src/vmcore/utf8.h (utf_java_lang_RuntimeException): Export.
* tests/regression/bugzilla/All.java: Added PR58.
* tests/regression/bugzilla/PR58.java: New file.
Christian Thalinger [Wed, 26 Mar 2008 15:44:57 +0000 (16:44 +0100)]
* tests/Makefile.am: Cleanup, removed checkall, added build target.
* tests/A2.java: Removed.
* tests/AA.java,
tests/AA1.java,
tests/AA2.java,
tests/BB.java,
tests/C.java,
tests/C2.java,
tests/C3.java,
tests/CC.java,
tests/D.java,
tests/DD.java,
tests/EE.java,
tests/GG.java,
tests/HI2.java,
tests/II.java,
tests/IIAA.java,
tests/IIBB.java,
tests/IICC.java,
tests/IIexample.java,
tests/n.java,
tests/scribble.java: Likewise.
Christian Thalinger [Wed, 26 Mar 2008 13:27:38 +0000 (14:27 +0100)]
* tests/regression/bugzilla/All.java: Added PR57.
* tests/regression/bugzilla/PR57.java: New file.
Christian Thalinger [Wed, 26 Mar 2008 12:17:54 +0000 (13:17 +0100)]
* tests/regression/bugzilla/Makefile.am (JAVA): Added LD_LIBRARY_PATH
so we can really overrite JAVA.
(build): Added $(srcdir) to find .java files.
(check): Removed LD_LIBRARY_PATH.
Christian Thalinger [Tue, 25 Mar 2008 16:29:18 +0000 (17:29 +0100)]
* src/threads/native/Makefile.am: Removed.
* src/threads/native/generic-primitives.h,
src/threads/native/lock.c,
src/threads/native/lock.h,
src/threads/native/threadlist-posix.c,
src/threads/native/threads.c,
src/threads/native/threads.h: Likewise.
Christian Thalinger [Tue, 25 Mar 2008 15:35:38 +0000 (16:35 +0100)]
* configure.ac (AC_CONFIG_FILES): Moved src/threads/native/Makefile to
src/threads/posix/Makefile.
* src/threads/posix/Makefile.am,
src/threads/posix/generic-primitives.h,
src/threads/posix/lock.c,
src/threads/posix/lock.h,
src/threads/posix/threadlist-posix.c,
src/threads/posix/threads.c,
src/threads/posix/threads.h: Moved from src/threads/native/.
* src/mm/cacao-gc/gc.h,
src/mm/cacao-gc/rootset.h,
src/native/jvmti/cacaodbg.c,
src/native/jvmti/cacaodbg.h,
src/native/jvmti/jvmti.c,
src/native/llni.h,
src/threads/Makefile.am,
src/threads/lock-common.h,
src/threads/threads-common.c,
src/threads/threads-common.h,
src/vm/builtintable.inc,
src/vm/jit/alpha/linux/md-os.c,
src/vm/jit/arm/linux/md-os.c,
src/vm/jit/intrp/asmpart.c,
src/vm/jit/intrp/dynamic-super.c,
src/vm/jit/intrp/engine.c,
src/vm/jit/powerpc/darwin/md-os.c,
src/vm/jit/powerpc/linux/md-os.c,
src/vm/jit/powerpc64/linux/md-os.c,
src/vm/jit/s390/codegen.c,
src/vm/jit/s390/emit.c,
src/vm/jit/s390/md.c,
src/vm/jit/show.c,
src/vm/jit/stacktrace.c,
src/vm/jit/x86_64/freebsd/md-os.c,
src/vm/jit/x86_64/linux/md-os.c: Fixed header includes.
--HG--
rename : src/threads/native/Makefile.am => src/threads/posix/Makefile.am
rename : src/threads/native/generic-primitives.h => src/threads/posix/generic-primitives.h
rename : src/threads/native/lock.c => src/threads/posix/lock.c
rename : src/threads/native/lock.h => src/threads/posix/lock.h
rename : src/threads/native/threadlist-posix.c => src/threads/posix/threadlist-posix.c
rename : src/threads/native/threads.c => src/threads/posix/threads.c
rename : src/threads/native/threads.h => src/threads/posix/threads.h
Christian Thalinger [Tue, 25 Mar 2008 15:13:46 +0000 (16:13 +0100)]
* src/cacaoh/Makefile.am: Changed copyright.
Peter Molnar [Tue, 25 Mar 2008 15:12:45 +0000 (16:12 +0100)]
Dummy push for testing.
Peter Molnar [Tue, 25 Mar 2008 15:11:03 +0000 (16:11 +0100)]
Dummy push for testing.
Peter Molnar [Tue, 25 Mar 2008 15:03:45 +0000 (16:03 +0100)]
Dummy push for testing.
Peter Molnar [Tue, 25 Mar 2008 15:03:16 +0000 (16:03 +0100)]
Dummy push for testing.
Christian Thalinger [Tue, 25 Mar 2008 14:11:06 +0000 (15:11 +0100)]
* src/toolbox/list.c (list_add_first_unsynced): Removed.
(list_add_last_unsynced): Likewise.
(list_remove_unsynced): Likewise.
(list_first_unsynced): Likewise.
(list_last_unsynced): Likewise.
(list_next_unsynced): Likewise.
(list_prev_unsynced): Likewise.
* src/toolbox/list.h: Likewise.
* src/mm/cacao-gc/gc.c,
src/mm/cacao-gc/mark.c,
src/mm/cacao-gc/rootset.c,
src/threads/native/lock.c,
src/threads/threadlist.c,
src/vm/assertion.c,
src/vm/jit/codegen-common.c,
src/vm/jit/emit-common.c,
src/vm/jit/linenumbertable.c,
src/vm/jit/optimizing/recompile.c,
src/vm/jit/patcher-common.c,
src/vm/jit/s390/codegen.c,
src/vm/properties.c: Use normal list functions instead of the unsynced
ones.
Peter Molnar [Sat, 22 Mar 2008 13:51:30 +0000 (14:51 +0100)]
* src/vm/jit/cfg.c (cfg_build): Fixed off by one in predecessorcount for exception handler blocks. See #53.
Christian Thalinger [Fri, 21 Mar 2008 11:48:00 +0000 (12:48 +0100)]
Fixes PR52.
* src/vm/array.c (array_objectarray_element_set): Use
builtin_canstore.
* .hgignore (tests/regression/assertion/*.class)
(tests/regression/assertion/packagetest/*.class)
(tests/regression/bugzilla/*.class): Added.
* configure.ac (AC_CONFIG_FILES): Added
tests/regression/bugzilla/Makefile.
* tests/regression/Makefile.am (SUBDIRS): Added bugzilla.
* tests/regression/bugzilla/All.java: New file.
* tests/regression/bugzilla/Makefile.am: Likewise.
* tests/regression/bugzilla/PR52.java: Likewise.
Christian Thalinger [Thu, 20 Mar 2008 17:25:47 +0000 (18:25 +0100)]
* src/vm/array.c (array_length_get): Removed IllegalArgumentException
check for size.
* src/native/vm/sun/jvm.c (JVM_NewMultiArray): Explicitely check for
exceptions.
Christian Thalinger [Thu, 20 Mar 2008 16:59:31 +0000 (17:59 +0100)]
* src/vm/access.c (access_check_field): Changed signature, use
stacktrace_get_caller_class.
(access_check_method): Likewise.
* src/vm/access.h: Likewise.
* src/native/vm/gnu/java_lang_reflect_Field.c (_field_access_check):
Adapted access_check_field call.
* src/native/vm/java_lang_reflect_Constructor.c (newInstance): Likewise.
* src/native/vm/java_lang_reflect_Method.c (invoke): Likewise.
Christian Thalinger [Thu, 20 Mar 2008 16:55:56 +0000 (17:55 +0100)]
* src/vm/array.c (array_element_get): Do a null-pointer check.
(array_element_primitive_get): Likewise.
(array_element_primitive_set): Likewise.
(array_objectarray_element_set): Check if the object can be stored in
the array.
Christian Thalinger [Thu, 20 Mar 2008 16:54:11 +0000 (17:54 +0100)]
* src/native/vm/sun/jvm.c (JVM_NewArray): Check for error on
primitive_arrayclass_get_by_name.
(JVM_NewMultiArray): Check for error on array_length_get.
Christian Thalinger [Thu, 20 Mar 2008 16:29:18 +0000 (17:29 +0100)]
* src/vm/array.c (array_##name##array_element_get): Fixed
ArrayIndexOutOfBoundsException check.
(array_objectarray_element_get): Likewise.
(array_##name##array_element_set): Likewise.
(array_objectarray_element_set): Likewise.
Christian Thalinger [Thu, 20 Mar 2008 15:29:07 +0000 (16:29 +0100)]
* src/vm/array.c (array_length_get): Check length and thrown an
exception in case.
Christian Thalinger [Thu, 20 Mar 2008 15:07:41 +0000 (16:07 +0100)]
* src/vm/primitive.c (primitive_unbox): Check for NULL values.
Christian Thalinger [Thu, 20 Mar 2008 13:57:33 +0000 (14:57 +0100)]
* src/vm/jit/stacktrace.c [ENABLE_JAVASE]
(stacktrace_get_caller_class): New function.
* src/vm/jit/stacktrace.h: Likewise.
* src/native/vm/gnu/gnu_classpath_VMStackWalker.c (getCallingClass):
Use stacktrace_get_caller_class.
(getCallingClassLoader): Likewise.
(firstNonNullClassLoader): Use stacktrace_first_nonnull_classloader.
* src/native/vm/sun/jvm.c (JVM_GetCallerClass): Use
stacktrace_get_caller_class.
* src/vm/vm.c (vm_create): Call method_init.
* src/vmcore/method.c (method_java_lang_reflect_Method_invoke): New
global variable.
(method_init): New function.
* src/vmcore/method.h: Likewise.
* src/vmcore/utf8.c (utf_invoke): New global variable.
* src/vmcore/utf8.h: Likewise.
Christian Thalinger [Thu, 20 Mar 2008 10:56:20 +0000 (11:56 +0100)]
* src/vm/jit/trace.c (trace_java_call_print_argument): Pass
methodinfo, added sun.misc.Unsafe check.
(trace_java_call_enter, trace_java_call_exit): Pass methodinfo to
trace_java_call_print_argument.
Christian Thalinger [Thu, 20 Mar 2008 09:13:17 +0000 (10:13 +0100)]
* src/native/vm/sun_misc_Unsafe.c (putIntVolatile): Implemented.
(putLongVolatile): Likewise.
(putOrderedObject): Likewise.
(putOrderedInt): Likewise.
(putOrderedLong): Likewise.
(UNSAFE_GET_VOLATILE): Added macro.
(UNSAFE_PUT_VOLATILE): Likewise.
(getIntVolatile): Use UNSAFE_GET_VOLATILE.
(getLongVolatile
Christian Thalinger [Thu, 20 Mar 2008 08:46:23 +0000 (09:46 +0100)]
* src/vm/jit/trace.c (trace_java_call_exit): Workaround for
sun.misc.Unsafe.staticFieldBase().
Peter Molnar [Wed, 19 Mar 2008 12:07:59 +0000 (13:07 +0100)]
Merging 7971:
887db7d64bc9 with 7970:
21b063622472.
Peter Molnar [Wed, 19 Mar 2008 12:04:30 +0000 (13:04 +0100)]
* src/vm/jit/cfg.c (cfg_build): Support for strange basicblocks, where an IF can be followed by a NOP and GOTO.
* src/vm/jit/jit.c (jit_compile_intern) [ENABLE_SSA]: Adapted for changes.
* src/vm/jit/optimizing/ssa3.c: Changed a lot.
* src/vm/jit/stack.c (stack_reach_next_block) [STACK_VERBOSE]: More verbosity to identify basicblocks where an IF can be followed by a GOTO.
Christian Thalinger [Wed, 19 Mar 2008 09:40:48 +0000 (10:40 +0100)]
* src/threads/native/generic-primitives.h
(MEMORY_BARRIER_BEFORE_ATOMIC): Removed.
* src/vm/jit/alpha/machine-instr.h,
src/vm/jit/arm/machine-instr.h,
src/vm/jit/i386/machine-instr.h,
src/vm/jit/m68k/machine-instr.h,
src/vm/jit/mips/machine-instr.h,
src/vm/jit/powerpc/machine-instr.h,
src/vm/jit/powerpc64/machine-instr.h,
src/vm/jit/s390/machine-instr.h,
src/vm/jit/sparc64/machine-instr.h,
src/vm/jit/x86_64/machine-instr.h: Likewise.
Christian Thalinger [Wed, 19 Mar 2008 09:04:38 +0000 (10:04 +0100)]
* src/native/vm/sun_misc_Unsafe.c (setMemory): Fixed compiler warning
on 32-bit architectures.
(copyMemory): Likewise.
Christian Thalinger [Wed, 19 Mar 2008 08:52:52 +0000 (09:52 +0100)]
* src/threads/native/generic-primitives.h (atomic_add): Removed.
* src/threads/native/threads.c [USE_FAKE_ATOMIC_INSTRUCTIONS]
(_atomic_add_lock): Removed.
* src/vm/jit/alpha/machine-instr.h (atomic_add): Removed.
* src/vm/jit/arm/machine-instr.h,
src/vm/jit/i386/machine-instr.h,
src/vm/jit/mips/machine-instr.h,
src/vm/jit/powerpc/machine-instr.h,
src/vm/jit/s390/machine-instr.h,
src/vm/jit/sparc64/machine-instr.h,
src/vm/jit/x86_64/machine-instr.h: Likewise.
Christian Thalinger [Tue, 18 Mar 2008 15:53:20 +0000 (16:53 +0100)]
* src/native/vm/gnu/java_lang_VMThread.c (interrupt): Use
thread_get_thread.
(isInterrupted): Likewise.
(nativeSetPriority): Likewise.
(getState): Likewise.
* src/native/vm/sun/jvm.c (threads/threadlist.h): Removed.
(JVM_IsThreadAlive): Use thread_get_thread.
(JVM_SetThreadPriority): Likewise.
(JVM_Interrupt): Implemented.
(JVM_IsInterrupted): Use thread_get_thread.
Christian Thalinger [Tue, 18 Mar 2008 15:49:25 +0000 (16:49 +0100)]
* src/threads/threads-common.c (thread_get_thread): New function.
* src/threads/threads-common.h: Likewise.
Christian Thalinger [Tue, 18 Mar 2008 13:09:12 +0000 (14:09 +0100)]
* src/classes/gnu/sun/misc/Unsafe.java: Imported the OpenJDK 6
version.
* src/native/vm/sun_misc_Unsafe.c (vmcore/system.h): Added.
(setMemory, copyMemory): Changed to be OpenJDK 6 compatible.
Christian Thalinger [Tue, 18 Mar 2008 13:06:28 +0000 (14:06 +0100)]
* contrib/setenvinstalled.in: Updated BOOTCLASSPATH.
* contrib/setenvsource.in: Likewise.
Christian Thalinger [Tue, 18 Mar 2008 12:47:58 +0000 (13:47 +0100)]
* .hgignore: Removed src/lib/classes/ and src/lib/vm.zip, added
src/classes/classes/ and src/classes/vm.zip.
Christian Thalinger [Tue, 18 Mar 2008 12:45:55 +0000 (13:45 +0100)]
* configure.ac (AC_CONFIG_FILES): Removed src/lib/Makefile, added
src/classes/Makefile.
* m4/classpath.m4 (AC_CHECK_WITH_CLASSPATH_CLASSES): Fixed
BOOTCLASSPATH.
* src/Makefile.am (DIST_SUBDIRS): Removed lib, added classes.
(SUBDIRS): Likewise.
* src/classes/Makefile.am,
src/classes/cldc1.1/com/sun/cldchi/jvm/FileDescriptor.java,
src/classes/gnu/gnu/classpath/VMStackWalker.java,
src/classes/gnu/gnu/classpath/VMSystemProperties.java,
src/classes/gnu/gnu/java/lang/management/VMMemoryMXBeanImpl.java,
src/classes/gnu/gnu/java/lang/management/VMRuntimeMXBeanImpl.java,
src/classes/gnu/java/lang/VMClassLoader.java,
src/classes/gnu/java/lang/VMString.java,
src/classes/gnu/java/lang/VMThread.java,
src/classes/gnu/java/lang/reflect/Constructor.java,
src/classes/gnu/java/lang/reflect/Field.java,
src/classes/gnu/java/lang/reflect/Method.java,
src/classes/gnu/java/security/VMAccessController.java,
src/classes/gnu/sun/misc/Unsafe.java,
src/classes/gnu/sun/reflect/ConstantPool.java,
src/classes/gnu/sun/reflect/annotation/AnnotationParser.java,
src/classes/gnu/sun/reflect/annotation/AnnotationType.java,
src/classes/gnu/sun/reflect/annotation/AnnotationTypeMismatchExceptionProxy.java,
src/classes/gnu/sun/reflect/annotation/EnumConstantNotPresentExceptionProxy.java,
src/classes/gnu/sun/reflect/annotation/ExceptionProxy.java,
src/classes/gnu/sun/reflect/annotation/TypeNotPresentExceptionProxy.java,
src/native/include/Makefile.am: Moved from lib.
* src/lib/Makefile.am,
src/lib/cldc1.1/com/sun/cldchi/jvm/FileDescriptor.java,
src/lib/gnu/gnu/classpath/VMStackWalker.java,
src/lib/gnu/gnu/classpath/VMSystemProperties.java,
src/lib/gnu/gnu/java/lang/management/VMMemoryMXBeanImpl.java,
src/lib/gnu/gnu/java/lang/management/VMRuntimeMXBeanImpl.java,
src/lib/gnu/java/lang/VMClassLoader.java,
src/lib/gnu/java/lang/VMString.java,
src/lib/gnu/java/lang/VMThread.java,
src/lib/gnu/java/lang/reflect/Constructor.java,
src/lib/gnu/java/lang/reflect/Field.java,
src/lib/gnu/java/lang/reflect/Method.java,
src/lib/gnu/java/security/VMAccessController.java,
src/lib/gnu/sun/misc/Unsafe.java,
src/lib/gnu/sun/reflect/ConstantPool.java,
src/lib/gnu/sun/reflect/annotation/AnnotationParser.java,
src/lib/gnu/sun/reflect/annotation/AnnotationType.java,
src/lib/gnu/sun/reflect/annotation/AnnotationTypeMismatchExceptionProxy.java,
src/lib/gnu/sun/reflect/annotation/EnumConstantNotPresentExceptionProxy.java,
src/lib/gnu/sun/reflect/annotation/ExceptionProxy.java,
src/lib/gnu/sun/reflect/annotation/TypeNotPresentExceptionProxy.java:
Moved to lib.
--HG--
rename : src/lib/Makefile.am => src/classes/Makefile.am
rename : src/lib/cldc1.1/com/sun/cldchi/jvm/FileDescriptor.java => src/classes/cldc1.1/com/sun/cldchi/jvm/FileDescriptor.java
rename : src/lib/gnu/gnu/classpath/VMStackWalker.java => src/classes/gnu/gnu/classpath/VMStackWalker.java
rename : src/lib/gnu/gnu/classpath/VMSystemProperties.java => src/classes/gnu/gnu/classpath/VMSystemProperties.java
rename : src/lib/gnu/gnu/java/lang/management/VMMemoryMXBeanImpl.java => src/classes/gnu/gnu/java/lang/management/VMMemoryMXBeanImpl.java
rename : src/lib/gnu/gnu/java/lang/management/VMRuntimeMXBeanImpl.java => src/classes/gnu/gnu/java/lang/management/VMRuntimeMXBeanImpl.java
rename : src/lib/gnu/java/lang/VMClassLoader.java => src/classes/gnu/java/lang/VMClassLoader.java
rename : src/lib/gnu/java/lang/VMString.java => src/classes/gnu/java/lang/VMString.java
rename : src/lib/gnu/java/lang/VMThread.java => src/classes/gnu/java/lang/VMThread.java
rename : src/lib/gnu/java/lang/reflect/Constructor.java => src/classes/gnu/java/lang/reflect/Constructor.java
rename : src/lib/gnu/java/lang/reflect/Field.java => src/classes/gnu/java/lang/reflect/Field.java
rename : src/lib/gnu/java/lang/reflect/Method.java => src/classes/gnu/java/lang/reflect/Method.java
rename : src/lib/gnu/java/security/VMAccessController.java => src/classes/gnu/java/security/VMAccessController.java
rename : src/lib/gnu/sun/misc/Unsafe.java => src/classes/gnu/sun/misc/Unsafe.java
rename : src/lib/gnu/sun/reflect/ConstantPool.java => src/classes/gnu/sun/reflect/ConstantPool.java
rename : src/lib/gnu/sun/reflect/annotation/AnnotationParser.java => src/classes/gnu/sun/reflect/annotation/AnnotationParser.java
rename : src/lib/gnu/sun/reflect/annotation/AnnotationType.java => src/classes/gnu/sun/reflect/annotation/AnnotationType.java
rename : src/lib/gnu/sun/reflect/annotation/AnnotationTypeMismatchExceptionProxy.java => src/classes/gnu/sun/reflect/annotation/AnnotationTypeMismatchExceptionProxy.java
rename : src/lib/gnu/sun/reflect/annotation/EnumConstantNotPresentExceptionProxy.java => src/classes/gnu/sun/reflect/annotation/EnumConstantNotPresentExceptionProxy.java
rename : src/lib/gnu/sun/reflect/annotation/ExceptionProxy.java => src/classes/gnu/sun/reflect/annotation/ExceptionProxy.java
rename : src/lib/gnu/sun/reflect/annotation/TypeNotPresentExceptionProxy.java => src/classes/gnu/sun/reflect/annotation/TypeNotPresentExceptionProxy.java
Christian Thalinger [Tue, 18 Mar 2008 12:23:28 +0000 (13:23 +0100)]
* m4/classpath.m4 (AC_CHECK_WITH_CLASSPATH_CLASSES): Set BOOTCLASSPATH
for Makefiles.
* tests/regression/Makefile.am,
tests/regression/assertion/Makefile.am,
tests/regression/codepatching/Makefile.am,
tests/regression/jasmin/Makefile.am,
tests/regression/native/Makefile.am,
tests/regression/resolving/Makefile.am (BOOTCLASSPATH): Removed.
Christian Thalinger [Mon, 17 Mar 2008 12:56:36 +0000 (13:56 +0100)]
* Merged with
60f051a3c5ae.
Christian Thalinger [Mon, 17 Mar 2008 12:44:01 +0000 (13:44 +0100)]
* Merged with
b78ab2bd233a.
--HG--
branch : methodtree-branch
Christian Thalinger [Mon, 17 Mar 2008 12:40:18 +0000 (13:40 +0100)]
* src/vm/jit/intrp/asmpart.c: Replaced codegen_get_pv_from_pc with
methodtree_find.
--HG--
branch : methodtree-branch
Christian Thalinger [Mon, 17 Mar 2008 12:35:45 +0000 (13:35 +0100)]
* src/vm/jit/s390/md.c: Replaced codegen_get_pv_from_pc with
methodtree_find.
* src/vm/jit/s390/md.h: Likewise.
--HG--
branch : methodtree-branch
Christian Thalinger [Mon, 17 Mar 2008 12:32:39 +0000 (13:32 +0100)]
* src/vm/jit/methodtree.c (threads/threads-common.h): Added.
(methodtree_find): Removed unnecessary assert.
--HG--
branch : methodtree-branch
Christian Thalinger [Mon, 17 Mar 2008 09:56:12 +0000 (10:56 +0100)]
* src/vm/jit/m68k/md.h: Replaced codegen_get_pv_from_pc with
methodtree_find.
--HG--
branch : methodtree-branch
Christian Thalinger [Mon, 17 Mar 2008 09:39:17 +0000 (10:39 +0100)]
* src/vm/jit/i386/asmpart.S: Replaced codegen_get_pv_from_pc with
methodtree_find.
* src/vm/jit/i386/cygwin/md-asm.h
src/vm/jit/i386/darwin/md-asm.h,
src/vm/jit/i386/md.h: Likewise.
--HG--
branch : methodtree-branch
Christian Thalinger [Thu, 13 Mar 2008 15:30:03 +0000 (16:30 +0100)]
* src/vm/jit/methodtree.c: New file.
* src/vm/jit/methodtree.h: Likewise.
* src/vm/jit/Makefile.am (libjit_la_SOURCES): Added methodtree.[ch].
* src/vm/jit/codegen-common.c (methodtree): Removed.
(codegen_init): Removed methodtree stuff.
(methodtree_comparator): Removed.
(codegen_insertmethod): Likewise.
(codegen_get_pv_from_pc): Likewise.
(codegen_get_pv_from_pc_nocheck): Likewise.
(codegen_finish): Call methodtree_insert.
* src/vm/jit/codegen-common.h (methodtree_element): Removed.
(codegen_insertmethod): Likewise.
(codegen_get_pv_from_pc): Likewise.
(codegen_get_pv_from_pc_nocheck): Likewise.
* src/vm/vm.c (vm_create): Call methodtree_init.
* src/vm/jit/code.c,
src/vm/jit/optimizing/profile.c,
src/vm/jit/stacktrace.c,
src/vm/jit/x86_64/asmpart.S,
src/vm/jit/x86_64/md.h,
src/vm/signal.c: Replaced codegen_get_pv_from_pc* with
methodtree_find*.
--HG--
branch : methodtree-branch
Christian Thalinger [Thu, 13 Mar 2008 15:11:31 +0000 (16:11 +0100)]
* src/vm/jit/inline/inline.c (inline_add_blocknr_reference): Commented
as it's not used and produces a compiler warning.
* src/vm/jit/inline/inline_debug.inc (debug_dump_inline_context):
Likewise.
Christian Thalinger [Thu, 13 Mar 2008 15:05:29 +0000 (16:05 +0100)]
* src/lib/gnu/java/lang/VMThrowable.java: Removed, as the local
changes made years ago are not necessary.
* src/lib/Makefile.am (VM_JAVA_FILES_GNU): Removed
gnu/java/lang/VMThrowable.java.
* src/native/vm/gnu/java_lang_VMThrowable.c (fillInStackTrace): Use
vmdata instead of vmData.
(getStackTrace): Likewise.
* src/vm/jit/stacktrace.c (stacktrace_print_exception)
[WITH_CLASSPATH_GNU]: Likewise.
Christian Thalinger [Thu, 13 Mar 2008 14:51:28 +0000 (15:51 +0100)]
* src/threads/native/threads.c (threads_detach_thread): Fixed compiler
warning.
Christian Thalinger [Thu, 13 Mar 2008 14:37:35 +0000 (15:37 +0100)]
* src/vm/jit/alpha/linux/md-os.c (md_replace_executionstate_read):
Renamed to md_executionstate_read.
(md_replace_executionstate_write): Renamed to md_executionstate_write.
--HG--
branch : executionstate-branch
Christian Thalinger [Thu, 13 Mar 2008 13:37:14 +0000 (14:37 +0100)]
* src/vm/jit/x86_64/linux/md-os.c (md_replace_executionstate_read):
Renamed to md_executionstate_read.
(md_replace_executionstate_write): Renamed to md_executionstate_write.
--HG--
branch : executionstate-branch
Christian Thalinger [Thu, 13 Mar 2008 13:32:09 +0000 (14:32 +0100)]
* src/vm/jit/executionstate.c: Fixed file comment.
* src/vm/jit/executionstate.h: Fixed copyright.
--HG--
branch : executionstate-branch
Christian Thalinger [Thu, 13 Mar 2008 13:24:53 +0000 (14:24 +0100)]
* src/vm/jit/executionstate.c: New file.
* src/vm/jit/executionstate.h: Likewise.
* src/vm/jit/Makefile.am (libjit_la_SOURCES): Added
executionstate.[ch].
* src/vm/jit/replace.c (replace_executionstate_println): Moved to
executionstate.[ch].
(replace_sanity_check_read_write): Likewise.
* src/vm/jit/replace.h (executionstate_t): Likwise.
(replace_executionstate_println): Likewise.
(md_replace_executionstate_read): Likewise.
(md_replace_executionstate_write): Likewise.
* src/vm/jit/i386/linux/md-os.c (md_replace_executionstate_read):
Renamed to md_executionstate_read.
(md_replace_executionstate_write): Renamed to md_executionstate_write.
--HG--
branch : executionstate-branch
Christian Thalinger [Thu, 13 Mar 2008 10:31:08 +0000 (11:31 +0100)]
* src/vm/jit/alpha/codegen.c (codegen_emit): Added thread unsafe
comments.
Christian Thalinger [Thu, 13 Mar 2008 10:09:13 +0000 (11:09 +0100)]
* src/threads/none/threads.h (threads_get_current_object): Changed
return type to java_handle_t.
* src/threads/threads-common.h: Likewise.
Christian Thalinger [Thu, 13 Mar 2008 08:49:35 +0000 (09:49 +0100)]
* src/native/vm/sun/jvm.c (TRACEJVMCALLS): Changed to normal macro
instead of a variadic one.
Christian Thalinger [Thu, 13 Mar 2008 08:39:35 +0000 (09:39 +0100)]
* src/native/vm/sun/jvm.c (PRINTJVMWARNINGS): Changed to normal macro
instead of variadic.
(JVM_GetStackTraceDepth): Fixed compiler warning.
(JVM_GetStackTraceElement): Likewise.
(JVM_IsThreadAlive): Likewise.
Christian Thalinger [Thu, 13 Mar 2008 08:25:17 +0000 (09:25 +0100)]
* src/native/localref.c [!NDEBUG] (localref_check_uncleared): Fixed
compiler warning.
Christian Thalinger [Wed, 12 Mar 2008 15:34:55 +0000 (16:34 +0100)]
* src/vm/jit/code.c (code_find_codeinfo_for_pc): Use void* instead of
u1*.
(code_find_codeinfo_for_pc_nocheck): Likewise.
(code_get_methodinfo_for_pv): Likewise.
* src/vm/jit/code.h: Likewise.
* src/cacaoh/dummy.c (vm/jit/code.h): Added.
(code_get_methodinfo_for_pv): Likewise.
* src/vm/jit_interface.h (code_get_methodinfo_for_pv): Removed.
* src/vmcore/method.c (vm/jit/code.h): Added.
Christian Thalinger [Wed, 12 Mar 2008 15:23:11 +0000 (16:23 +0100)]
* src/native/jni.c (_Jv_JNI_GetDirectBufferAddress): Fixed compiler
warnings.
Christian Thalinger [Wed, 12 Mar 2008 15:07:55 +0000 (16:07 +0100)]
* src/threads/none/threads.h (threads_get_current_object): New
function.
(threads_get_current_stackframeinfo): Fixed name to
threads_set_current_stackframeinfo.
* src/threads/threads-common.c (threads_get_current_object): Removed.
* src/threads/threads-common.h (threads_get_current_object): New
function.
(threads_get_current_object): Removed.
* src/vm/jit/stacktrace.c: Small fix.
* src/vm/jit/stacktrace.h [!ENABLE_THREADS]
(_no_threads_stackframeinfo): Added.
Christian Thalinger [Wed, 12 Mar 2008 14:44:44 +0000 (15:44 +0100)]
* src/native/vm/reflect.c (reflect_field_new): Fixed compiler
warnings.
(reflect_method_new): Likewise.
Christian Thalinger [Wed, 12 Mar 2008 14:32:02 +0000 (15:32 +0100)]
* src/vm/jit/code.c (code_init): Changed signature, use vm_abort
instead of assert.
* src/vm/jit/code.h (code_init): Change signature.
* src/vm/vm.c (vm_create): Call code_init.
Stefan Ring [Tue, 11 Mar 2008 14:37:19 +0000 (15:37 +0100)]
* src/mm/boehm.c: Define GC_DARWIN_THREADS.
Stefan Ring [Tue, 11 Mar 2008 14:28:53 +0000 (15:28 +0100)]
Merge -> trunk
Christian Thalinger [Tue, 11 Mar 2008 13:57:37 +0000 (14:57 +0100)]
* src/threads/threads-common.c (threads_thread_start_internal): Code
reworked.
(threads_thread_start): Likewise.
Christian Thalinger [Tue, 11 Mar 2008 13:33:40 +0000 (14:33 +0100)]
* src/threads/threads-common.c [ENABLE_JAVASE] (threadgroup_system,
(threadgroup_main): New variables.
(threads_init): Call thread_create_initial_threadgroups and
thread_create_initial_thread.
(thread_create_initial_threadgroups): New function.
(thread_create_initial_thread): Likewise.
(threads_get_current_object): Removed empty-group hack.
Christian Thalinger [Tue, 11 Mar 2008 13:28:59 +0000 (14:28 +0100)]
* src/vmcore/utf8.c (utf_Ljava_lang_ThreadGroup_Ljava_lang_String__V):
Added.
* src/vmcore/utf8.h: Likewise.
Christian Thalinger [Tue, 11 Mar 2008 13:16:40 +0000 (14:16 +0100)]
* src/vm/vm.c (vm_created): Added.
(vm_create): Set vm_created.
(vm_destroy): Unset vm_created.
* src/vm/vm.h: (vm_created): Added.
* src/native/jni.c (_Jv_JNI_DestroyJavaVM): Added vm_created check.
(_Jv_JNI_AttachCurrentThread): Likewise.
(_Jv_JNI_GetEnv): Likewise.
(_Jv_JNI_AttachCurrentThreadAsDaemon): Likewise.
Christian Thalinger [Tue, 11 Mar 2008 12:03:21 +0000 (13:03 +0100)]
* src/vmcore/utf8.c (utf_main): Added.
(utf8_init): Changed signature.
* src/vmcore/utf8.h: Likewise.
* src/cacaoh/cacaoh.c (main): Removed return value check for
utf8_init.
* src/vm/vm.c (vm_create): Likewise.
Christian Thalinger [Tue, 11 Mar 2008 09:15:05 +0000 (10:15 +0100)]
* src/threads/native/threads.c (method_thread_init): Removed.
(threads_init): Removed.
(threads_impl_init): New function.
(threads_attach_current_thread): Renamed method_thread_init to
thread_method_init.
* src/threads/native/threads.h (threads_init): Removed
* src/threads/threads-common.c (native/native.h): Added.
[ENABLE_JAVASE] (native/include/java_lang_ThreadGroup.h): Likewise.
[WITH_CLASSPATH_GNU] (native/include/java_lang_Throwable.h): Removed.
(toolbox/list.h): Likewise.
(vm/exceptions.h): Added.
(vmcore/method.h): Likewise.
(thread_method_init): Likewise.
(threads_init): New function.
* src/threads/threads-common.h (thread_method_init): Added.
(threads_init): Likewise.
(threads_impl_init): Likewise.
* src/vm/vm.c (vm_create) [ENABLE_THREADS]: Removed return value check
for threads_init.
Christian Thalinger [Tue, 11 Mar 2008 08:47:15 +0000 (09:47 +0100)]
* src/vm/vm.c (vm_create) [!NDEBUG]: Removed conditional, as we want
the config for production builds too.
Christian Thalinger [Mon, 10 Mar 2008 14:08:08 +0000 (15:08 +0100)]
* src/threads/native/threadlist-posix.c: New file.
* src/threads/native/Makefile.am (libthreadsposix_la_SOURCES): Added
threadlist-posix.c.
* src/threads/native/threads.c (mutex_threads_list): Removed.
(threads_impl_preinit): Removed mutex_threads_list initialization.
(threads_list_lock, threads_list_unlock): Removed.
* src/threads/threadlist.c (threadlist_init): Call
threadlist_impl_init.
* src/threads/threadlist.h (threadlist_impl_init, threadlist_lock)
(threadlist_unlock): Added.
* src/threads/threads-common.h (threads_list_lock)
(threads_list_unlock): Removed.
* src/threads/native/lock.c,
src/threads/threads-common.c,
src/vm/jit/optimizing/profile.c: Use new threadlist_{lock,unlock}
functions.
Christian Thalinger [Mon, 10 Mar 2008 13:56:55 +0000 (14:56 +0100)]
* src/threads/threads-common.c [ENABLE_JAVASE]
(native/include/java_lang_ThreadGroup.h): Only a temporary hack.
Christian Thalinger [Mon, 10 Mar 2008 13:07:02 +0000 (14:07 +0100)]
* src/vmcore/options.c (opt_TraceTraps): Added.
* src/vmcore/options.h: Likewise.
* src/vm/signal.c (signal_handle) [!NDEBUG]: Added opt_TraceTraps
debug output. This is not finished yet.
Christian Thalinger [Mon, 10 Mar 2008 12:48:01 +0000 (13:48 +0100)]
* src/cacaoh/dummy.c (errno.h): Added.
(vmcore/system.h): Likewise.
(vm_abort_errno): New function.
(vm_abort_errnum): Likewise.
* src/vmcore/options.c (errno.h): Removed.
(options_xx): Use vm_abort_errno.
Christian Thalinger [Mon, 10 Mar 2008 12:37:19 +0000 (13:37 +0100)]
* src/vm/signal.c (errno.h): Removed.
(signal_init): Use vm_abort_errno.
(signal_register_signal): Likewise.
(signal_thread): Likewise.
Christian Thalinger [Mon, 10 Mar 2008 12:36:04 +0000 (13:36 +0100)]
* NEWS: Added 0.99 news.
Christian Thalinger [Thu, 6 Mar 2008 09:55:37 +0000 (10:55 +0100)]
* src/native/vm/sun_misc_Unsafe.c (putObjectVolatile): OK, this time
WITHOUT debug output. Damn.
Christian Thalinger [Thu, 6 Mar 2008 09:47:24 +0000 (10:47 +0100)]
* src/native/vm/sun_misc_Unsafe.c (putObjectVolatile): Implemented.
Stefan Ring [Wed, 5 Mar 2008 19:58:01 +0000 (20:58 +0100)]
* src/mm/boehm-gc/BCC_MAKEFILE, src/mm/boehm-gc/digimars.mak: unix2dos'ed
the way they were in gc6.8.
Christian Thalinger [Wed, 5 Mar 2008 16:42:05 +0000 (17:42 +0100)]
* src/threads/threadlist.c (threadlist_index_add): Actually set the
index in the structure.
Christian Thalinger [Wed, 5 Mar 2008 16:12:45 +0000 (17:12 +0100)]
* src/mm/cacao-gc/rootset.c (threads/threadlist.h): Added.
(rootset_readout): Use threadlist_* functions.
* src/native/vm/sun/jvm.c (threads/threadlist.h): Added.
(JVM_IsThreadAlive): Use threadlist_* functions.
(JVM_SetThreadPriority): Likewise.
(JVM_IsInterrupted): Likewise.
* src/vm/jit/optimizing/profile.c (threads/threadlist.h): Added.
(profile_thread): Use threadlist_* functions.
Christian Thalinger [Wed, 5 Mar 2008 16:01:01 +0000 (17:01 +0100)]
* src/native/vm/java_lang_Thread.c: Removed.
* src/native/vm/java_lang_Thread.h: Likewise.
* src/native/vm/Makefile.am (libnativevm_la_SOURCES): Removed
java_lang_Thread.[ch].
* src/threads/threads-common.c (threads_get_current_object): New
function.
* src/threads/threads-common.h: Likewise.
* src/native/vm/cldc1.1/java_lang_Thread.c,
src/native/vm/gnu/java_lang_VMThread.c,
src/native/vm/sun/jvm.c: Implemented thread functions directly.
Christian Thalinger [Wed, 5 Mar 2008 14:38:40 +0000 (15:38 +0100)]
* configure.ac (AM_CPPFLAGS): Set to CPPFLAGS.
* m4/classpath.m4 (AC_CHECK_WITH_JNI_MD_H): Preserve CPPFLAGS.
(AC_CHECK_WITH_JNI_H): Likewise.
Christian Thalinger [Wed, 5 Mar 2008 14:20:25 +0000 (15:20 +0100)]
* src/Makefile.am: Changed copyright.
Christian Thalinger [Wed, 5 Mar 2008 14:17:34 +0000 (15:17 +0100)]
* src/threads/threadlist.c: New file.
* src/threads/threadlist.h: Likewise.
* src/threads/Makefile.am (libthreads_la_SOURCES): Added
threadlist.[ch].
* src/threads/lock-common.h: Changed copyright.
* src/threads/native/lock.c (threads/threadlist.h): Added.
(threads_lookup_thread_id): Use threadlist_* functions.
* src/threads/native/threads.c (threads/threadlist.h): Added.
(threads_cast_sendsignals): Use threadlist_* functions.
(threads_stopworld): Likewise.
(threads_startworld): Likewise.
(threads_init): Likewise.
(threads_attach_current_thread): Likewise.
(threads_join_all_threads): Likewise.
* src/threads/threads-common.c (threads/threadlist.h): Added.
(list_threads, list_free_threads, list_free_thread_index): Removed.
(thread_index_t): Removed.
(threads_preinit): Don't initialize the thread lists, moved
lock_init and critical_init calls into vm_create.
(threads_list_first, threads_list_next): Removed.
(threads_list_get_non_daemons): Likewise.
(threads_thread_new, threads_thread_free): Use threadlist_* functions.
* src/threads/threads-common.h (threads_list_first): Removed.
(threads_list_next): Likewise.
(threads_list_get_non_daemons): Likewise.
* src/vm/vm.c (threads/lock-common.h): Added.
(threads/threadlist.h): Added.
(vm_create) [ENABLE_THREADS]: Call threadlist_init, lock_init and
critical_init.