2007-06-06 09:24 twisti * configure.ac (AC_INIT): Changed version to 0.98. 2007-06-05 23:46 twisti * src/native/vm/gnu/java_lang_VMString.c (native/vm/java_lang_String.h): Added. (intern): Call _Jv_java_lang_String_intern. * src/native/vm/java_lang_String.c: New file. * src/native/vm/java_lang_String.h: Likewise. * src/native/vm/Makefile.am (libnativevm_la_SOURCES): Added java_lang_String.[ch]. 2007-06-05 22:11 twisti * src/native/native.c (native_init): Check nativevm_init return value. * src/native/vm/nativevm.c (nativevm_init): Changed signature. * src/native/vm/nativevm.h (nativevm_init): Likewise. 2007-06-05 20:58 twisti * src/native/vm/gnu/Makefile.am (libnativevmcore_la_SOURCES): Removed sun_misc_Unsafe.c. * src/native/vm/Makefile.am [ENABLE_JAVASE] (SUN_MISC_UNSAFE_SOURCES): Added. (libnativevm_la_SOURCES): Added SUN_MISC_UNSAFE_SOURCES. * src/native/vm/gnu/sun_misc_Unsafe.c: Removed. * src/native/vm/sun_misc_Unsafe.c: Added. 2007-06-05 12:53 twisti * src/vm/jit/codegen-common.c [__ARM__] (md-abi.h): Removed. (codegen_reg_of_var) [__ARM__]: Removed split-code. 2007-06-05 10:19 twisti * src/vm/jit/mips/md-abi.c (md_param_alloc) [SIZEOF_VOID_P == 8]: Use reguse instead of i. 2007-06-05 10:14 twisti * src/vm/jit/mips/md-abi.c (md_param_alloc_native) [SIZEOF_VOID_P == 8]: Fixed compilation. 2007-06-05 10:06 twisti * src/vm/jit/mips/md-abi.c (md_param_alloc) [SIZEOF_VOID_P == 4]: Use internally a different calling convention. It's the same as on n64 with register skipping and, but with long alignment (as on ARM). (md_param_alloc_native) [SIZEOF_VOID_P == 4]: Use the o32 ABI. * src/vm/jit/mips/codegen.c (codegen_emit) [SIZEOF_VOID_P == 4]: Changes for new internal calling conventions. (codegen_emit_stub_native) [SIZEOF_VOID_P == 4]: Likewise. * src/vm/jit/mips/asmpart.S (asm_vm_call_method) [SIZEOF_VOID_P == 4]: Adjusted reserved stack-space to 4*4. 2007-06-05 09:00 twisti * src/vm/jit/mips/codegen.c (codegen_emit): Use FLTMOVE and DBLMOVE to save some moves. 2007-06-05 07:56 twisti * src/vm/jit/mips/codegen.c (codegen_emit): Small code-layout change. 2007-06-05 07:44 twisti * src/vm/vm.c: Set Id keyword. 2007-06-05 07:42 twisti * src/vm/vm.c (vmcore/statistics.h): Added. 2007-06-05 07:40 twisti * src/vmcore/statistics.c (count_calls_java_to_native): Added. (count_calls_native_to_java): Likewise. (count_native_function_calls): Removed. (nativeinvokation): Likewise. (print_stats): Print new variables. * src/vmcore/statistics.h (count_calls_java_to_native): Added. (count_calls_native_to_java): Likewise. (nativeinvokation): Removed. * src/vm/jit/codegen-common.c (codegen_start_native_call) [ENABLE_STATISTICS]: Increase count_calls_java_to_native. * src/vm/vm.c (vm_call_method_vmarg) [ENABLE_STATISTICS]: Increase count_calls_native_to_java. (vm_call_method_int_vmarg): Likewise. (vm_call_method_long_vmarg): Likewise. (vm_call_method_float_vmarg): Likewise. (vm_call_method_double_vmarg): Likewise. 2007-06-04 13:12 twisti * src/vm/signal.c (unistd.h): Removed. (sys/mman.h): Likewise. (signal_init): Moved mmap of page 0x0 and the hardware-exceptions check into exceptions_init. * src/vm/exceptions.c (unistd.h): Added. (sys/mman.h): Likewise. (exceptions_init): See above. 2007-06-04 12:59 twisti * src/vm/signal.c (signal_init): Use if-vm_abort instead of assert. * src/vm/exceptions.h: Changed hardware-exception comment accordingly. 2007-06-03 18:42 twisti * src/threads/threads-common.c (threads_thread_start_internal): Changed order of initialization stuff, so we can leave the join-mutex very early. (threads_thread_start): Likewise. * src/threads/native/threads.c (threads_mutex_join_lock): New function. (threads_mutex_join_unlock): Likewise. (threads_attach_current_thread): Changed order of initialization stuff, so we can leave the join-mutex very early. (threads_detach_thread): Send the signal inside the join-mutex. (threads_join_all_threads): Use join-mutex functions. * src/threads/threads-common.h (threads_mutex_join_lock): Added. (threads_mutex_join_unlock): Likewise. 2007-06-03 18:24 pm * configure.ac: Fix broken regex.h test. 2007-06-02 17:47 pm * contrib/vmlog/vmlogfilter.c: Added a tool that filters a vmlog log file the same way as -XXfi and -XXfx do. * contrib/vmlog/vmlog.c, contrib/vmlog/vmlog.h (vmlog_thread_log_append): Made not-static. * contrib/vmlog/Makefile.am, configure.ac: Conditional building of vmlogfilter if ENABLE_VMLOG is set and regex.h present. 2007-06-01 19:34 ajordan * src/vm/signal.c: Added ifdefs to fix compiling with disabled threads. 2007-06-01 00:45 ajordan * src/vm/jit/sparc64/codegen.c (codegen_emit_stub_native): Fixed the way float arguments are preserved over codegen_start_native_call. * src/vm/jit/sparc64/md-abi.c (codegen_start_native_call): Likewise. * src/vm/jit/sparc64/machine-instr.h (compare_and_swap): Changed inline assembly, so it survives gcc optimization. * src/vm/jit/sparc64/asmpart.S (asm_patcher_wrapper): Saving and restoring float return register. * src/vm/jit/sparc64/md-asm.h: Likewise. 2007-06-01 00:29 twisti * m4/ac_pthreads_implementation.m4: Reverted rev7996. * m4/threads.m4: Likewise. * src/threads/threads-common.c [__LINUX__] (threads_pthreads_implementation_nptl): Added. (threads_preinit) [__LINUX__]: Check which thread-implementation we are using. * src/threads/threads-common.h [__LINUX__] (threads_pthreads_implementation_nptl): Added. * src/vm/signal.c (signal_init) [__LINUX__]: Check for threads_pthreads_implementation_nptl. * src/vm/vm.c (vm_create) [__LINUX__]: Likewise. 2007-05-31 23:26 twisti * src/vm/jit/mips/irix/md-os.c (vm/jit/mips/codegen.h): Added. (md_signal_handler_sigsegv): Updated to new exception-handling. (thread_restartcriticalsection): Renamed to md_critical_section_restart. 2007-05-31 23:05 twisti * m4/ac_pthreads_implementation.m4: New file. * m4/threads.m4 (AC_CHECK_ENABLE_THREADS): Call AC_CHECK_PTHREADS_IMPLEMENTATION for posix and linux. * configure.ac (AC_CHECK_HEADERS): Added stdlib.h. (AC_CHECK_FUNCS): Added confstr, strstr. * src/vm/signal.c (signal_init) [!PTHREADS_IS_LINUXTHREADS]: Only block the signals if we are not on LinuxThreads. (signal_thread): Set state accordingly. * src/vm/vm.c (vm_create) [!PTHREADS_IS_LINUXTHREADS]: Only start signal-thread if we are not on LinuxThreads. 2007-05-31 22:45 twisti * src/vm/signal.c: Reverted rev7978. 2007-05-31 16:10 twisti * src/vm/vm.c (vm_create): Added comment. 2007-05-30 22:32 twisti * src/vm/jit/powerpc64/emit.c (emit_branch): Removed debug output. 2007-05-30 22:01 twisti * NEWS: Added some 0.98 release notes. 2007-05-30 21:59 twisti * ChangeLog: Updated. * ChangeLog-2006: New file. 2007-05-30 21:05 twisti * src/vm/jit/powerpc/darwin/md-os.c (thread_restartcriticalsection): Renamed to md_critical_section_restart. 2007-05-30 21:04 twisti * src/vm/jit/powerpc/asmpart.S [ENABLE_REPLACEMENT] (L_replace_me) (L_replace_build_execution_state, L_replace_free_safestack): Only if replacement is enabled, otherwise we get a linker error. 2007-05-30 20:53 twisti * src/vm/jit/powerpc/darwin/md-abi.c, src/vm/jit/powerpc/darwin/md-abi.h: Removed Contact, Authors, Changes from header. 2007-05-30 20:51 twisti * src/vm/signal.c (signal_thread) [!__DARWIN__]: Don't do the GC_signum stuff on Darwin (should also be done on Solaris, but let's wait how the exact-GC is doing). 2007-05-30 20:45 twisti * src/vm/builtin.c (math.h): Removed because we don't need it as we include fdlibm.h and it does not work on some OSs, like Darwin. 2007-05-30 20:40 twisti * src/mm/boehm-gc/pthread_stop_world.c (GC_signum1, GC_signum2): No it did not work, reverted rev7981. 2007-05-30 20:30 twisti * src/threads/native/threads.c (threads_impl_preinit): Initialize mutex_threads_list. (threads_impl_table_init): Removed. (threads_impl_table_init, threads_list_unlock): Fixed debug message. * src/threads/threads-common.h (threads_impl_table_init): Removed. 2007-05-30 20:04 twisti * src/vm/resolve.c (resolve_subtype_check): Don't free the memory before it's used. 2007-05-30 20:01 twisti * src/vm/jit/powerpc64/codegen.c (codegen_emit_stub_native): Fixed typo. * src/vm/jit/powerpc64/emit.c [!NDEBUG] (emit_verbosecall_enter) (emit_verbosecall_exit): Only compile conditionally. 2007-05-30 19:43 twisti * src/mm/boehm-gc/pthread_stop_world.c (cacao_suspendhandler): Commented. (GC_suspend_handler): Commented cacao_suspendhandler call. (GC_signum1, GC_signum2): Define for all configurations (hope that works). * src/threads/native/threads.c: Commented all critical-sections code, as it does not work anyway and it does not compile everywhere. 2007-05-30 16:01 twisti * src/vm/jit/powerpc64/md.c (md_get_method_patch_address): Use vm_abort and fixed warning. (md_codegen_get_pv_from_pc): Likewise. 2007-05-30 15:52 twisti * src/vm/jit/powerpc64/codegen.c (codegen_emit): Fixed --disable-debug build. 2007-05-30 14:09 twisti * src/vm/signal.c (mm/boehm-gc/include/gc.h): Added. (GC_suspend_handler): Defined. (GC_restart_handler): Likewise. (signal_thread): Add the Boehm-GC signals to the mask and call the appropriate Boehm-function. This is a workaround for the Boehm-LinuxThreads bug. 2007-05-29 12:34 twisti * src/vm/signal.c (signal_init): Changed signature. * src/vm/signallocal.h (signal_init): Likewise. * src/vm/vm.c (vm_create): Call signal_init right after gc_init and check return value. 2007-05-29 12:22 twisti * src/vm/access.c (string.h): Added. (mm/memory.h): Likewise. (vmcore/field.h): Likewise. (vmcore/method.h): Likewise. (access_check_member): Removed. (access_check_field): New function. (access_check_method): Likewise. * src/vm/access.h (vmcore/field.h): Added. (vmcore/method.h): Likewise. (access_check_member): Removed. (access_check_field): New function. (access_check_method): Likewise. * src/native/vm/gnu/java_lang_reflect_Method.c (invokeNative): Call access_check_method instead of access_check_member. * src/native/vm/gnu/java_lang_reflect_Constructor.c (constructNative): Likewise. * src/native/vm/gnu/java_lang_reflect_Field.c (cacao_get_field_address): Call access_check_field instead of access_check_member. 2007-05-29 11:44 pm * src/vm/jit/show.c (vm/vm.h) add missing include, (_no_threads_filterverbosecallctr) fix type: u2 instead of u4 2007-05-29 11:30 twisti * src/vm/jit/powerpc64/codegen.c (codegen_emit): Fixed warnings, some indent. 2007-05-29 09:03 twisti * src/vm/exceptions.c (exceptions_throw_illegalaccessexception): Changed signature. * src/vm/exceptions.h: Likewise. * src/vm/resolve.c (resolve_class_from_name): Make utf8-string out of exception message. (resolve_subtype_check): Likewise. (resolve_field_verifier_checks): Likewise. (resolve_method_verifier_checks): Likewise. 2007-05-28 00:05 ajordan * src/vm/jit/sparc64/codegen.h: Removed asserts for stores with sethi. * src/vm/jit/sparc64/codegen.c: Added code to fill with nops when a patcher is right at the end of a basic block. * src/vm/jit/sparc64/asmpart.S (asm_vm_call_method_end): Returning 0 when an exception occurs. * src/vm/jit/sparc64/md.c (md_get_method_patch_address): Improved handling of mptr loads when a sethi is involved. 2007-05-26 15:26 pm * contrib/vmlog/vmlog.c: Use autoconf define WORDS_BIGENDIAN to determine endianess. 2007-05-25 15:23 twisti * src/threads/threads-common.c (threads_thread_start_internal) [WITH_CLASSPATH_CLDC1_1]: Set name to NULL, but this needs a fix. (threads_thread_print_info) [ENABLE_JAVAME_CLDC1_1]: Set name to utf_null. 2007-05-25 15:05 twisti * src/vm/jit/optimizing/ifconv.c (vm/vm.h): Added. (ifconv_static): Fixed warning, use vm_abort. * src/vm/jit/powerpc/md.c (md_get_method_patch_address): Fixed warning, use vm_abort. 2007-05-25 15:03 twisti * src/vm/string.c (javastring_new_from_utf_buffer): Made static. * src/vm/stringlocal.h (javastring_new_from_utf_buffer): Removed. 2007-05-25 12:41 pm * src/vm/jit/show.h (show_filters_init, show_filters_apply, show_filters_test_verbosecall_enter, show_filters_test_verbosecall_exit): Added. * src/vm/jit/show.c: Likewise. * src/vm/jit/jit.c (jit_compile_intern): Honour filters. * src/vm/jit/codegen-common.c (codegen_add_patch_ref, codegen_generate_stub_native): Honour PATCHER_LONGBRANCHES_NOPS if defined, honour filters. * src/vm/builtin.c (builtin_trace_exception, builtin_verbosecall_enter, builtin_verbosecall_exit): Honour filters. * src/vm/signal.c (signal_init): Register SIGILL handler on s390. * src/vm/vm.c: Handle -XXfi, -XXfe, -XXfm commandline options. * src/vm/signallocal.h (md_signal_handler_sigill): Forward declare on s390. * src/threads/none/threads.h (_no_threads_filterverbosecallctr, FILTERVERBOSECALLCTR): Added. * src/threads/native/threads.h (struct threadobject): Added filterverbosecallctr. * src/threads/native/threads.c (threads_impl_thread_new): Initialize filterverbosecallctr. * src/threads/critical.c (critical_comparator): On s390, clear bit 32 of pointer when comparing. * src/vmcore/options.h (opt_filter_verbosecall_include, opt_filter_verbosecall_exclude, opt_filter_show_method): Added. * src/vmcore/options.c: Likewise. * src/vmcore/method.h (struct methodinfo): Added filtermatches. * configure.ac: If no NDEBUG and regex.h header is present, define ENABLE_DEBUG_FILTER. * src/vm/jit/s390/emit.c, src/vm/jit/s390/md.c, src/vm/jit/s390/codegen.c, src/vm/jit/s390/codegen.h, src/vm/jit/s390/tests/dacapo.status, src/vm/jit/s390/patcher.c: Changed a lot. 2007-05-24 13:25 michi * src/vmcore/linker.c (link_class_intern) [__ARM_EABI__]: Fixed field alignment bug. Double and Long fields are 8-byte aligned with EABI. 2007-05-24 10:23 twisti * src/vm/jit/i386/linux/md-os.c (md_signal_handler_sigsegv): Fixed warning. 2007-05-24 10:21 twisti * src/threads/threads-common.c (mm/memory.h): Added. (toolbox/list.h): Likewise. (threads_table): Removed. (list_threads, list_threads_free): Added. (threads_preinit): Initialize lists. (threads_table_init): Removed. (threads_table_add): Likewise. (threads_table_remove): Likewise. (threads_table_get): Likewise. (threads_table_get_threads): Likewise. (threads_table_get_non_daemons): Likewise. (threads_table_first): Likewise. (threads_table_next): Likewise. (threads_table_dump): Likewise. (threads_list_first): New function. (threads_list_next): Likewise. (threads_list_get_non_daemons): Likewise. (threads_thread_new): Likewise. (threads_thread_free): Likewise. (threads_thread_print_info): Added state-assert, print thread index. (threads_thread_state_runnable): New function. (threads_thread_state_waiting): Likewise. (threads_thread_state_timed_waiting): Likewise. (threads_thread_state_terminated): Likewise. (threads_dump): Use threads-list functions. * src/threads/threads-common.h: Likewise. (threads_table_entry_t): Removed. (threads_table_t): Likewise. * src/threads/native/threads.c (mutex_threads_table): Renamed to mutex_threads_list. (threads_cast_sendsignals): Use threads-list functions. (threads_table_lock): Renamed to threads_list_lock. (threads_table_unlock): Renamed to threads_list_unlock. (threads_startup_thread): Use threads-state functions. (threads_detach_thread): Likewise. (threads_wait_with_timeout): Likewise. (threads_join_all_threads): Use threads-list functions. * src/threads/native/threads.h (threadobject): Added linkage. 2007-05-23 23:56 ajordan * src/vm/jit/sparc64/Makefile.am: Added missing emit.h. 2007-05-23 22:54 ajordan * src/vm/jit/sparc64/Makefile.am: md-asm.h was not properly added to noinst_HEADERS. 2007-05-23 22:04 twisti * configure.ac (AM_INIT_AUTOMAKE): Added dist-bzip2. 2007-05-23 19:37 twisti * src/threads/threads-common.h (THREAD_STATE_NEW) (THREAD_STATE_RUNNABLE, THREAD_STATE_BLOCKED, THREAD_STATE_WAITING) (THREAD_STATE_TIMED_WAITING, THREAD_STATE_TERMINATED): Start states with 1, so we can catch unset states. 2007-05-23 19:11 twisti * src/vm/jit/powerpc64/linux/md-os.c (md_critical_section_restart): Fixed typo. 2007-05-23 18:28 twisti * src/vm/jit/mips/Makefile.am (DIST_SUBDIRS): Added uclinux. 2007-05-23 18:08 twisti * src/vmcore/statistics.c (statistics_print_memory_usage): Smaller output changes. 2007-05-23 18:05 twisti * src/vm/jit/arm/linux/md-os.c, src/vm/jit/alpha/linux/md-os.c, src/vm/jit/i386/linux/md-os.c, src/vm/jit/powerpc/linux/md-os.c, src/vm/jit/powerpc64/linux/md-os.c, src/vm/jit/x86_64/linux/md-os.c (md_critical_section_restart): Removed debug output. 2007-05-23 17:58 twisti * src/threads/native/lock.c: Set Id keyword. * src/threads/native/lock.h: Likewise. 2007-05-23 17:56 twisti * src/native/vm/gnu/java_lang_VMClassLoader.c (getPrimitiveClass): Return NULL in error case. 2007-05-23 17:53 twisti * src/vm/jit/optimizing/profile.c: Set Id keyword. 2007-05-23 17:51 twisti * src/vm/jit/optimizing/profile.c (profile_thread): Replaced table- with list-functions. * src/vm/vm.c (vm_create): Use vm_abort for profile_start_thread. 2007-05-23 17:46 twisti * src/vm/jit/jit.c (jit_compile_intern): Fixed typo. 2007-05-23 16:00 twisti * src/vm/exceptions.c (exceptions_new_hardware_exception): Fixed warning. 2007-05-23 15:57 twisti * src/vm/jit/x86_64/md.c (md_get_method_patch_address): Fixed warning. * src/vm/jit/x86_64/linux/md-os.c (md_signal_handler_sigsegv): Likewise. 2007-05-23 15:43 twisti * configure.ac (OPT_CFLAGS): Changed to -O2. 2007-05-23 15:25 twisti * src/vm/jit/powerpc64/codegen.c (codegen_emit): ICMD_INSTANCEOF: Removed unused supervftbl. * src/vm/jit/emit-common.h [__POWERPC64__] (emit_bnan): Enabled. 2007-05-23 14:15 tbfg * src/vm/jit/powerpc64/emit.c (MCODECHECK): Increase values to fix canary corruption. * src/vm/jit/powerpc64/codegen.c (MCODECHECK): Increase values to fix canary corruption. 2007-05-23 13:09 twisti * src/vmcore/linker.c (linker_compute_subclasses): We don't ship the critical-section stuff with this release, since it's broken on some architectures because of boehm. 2007-05-23 12:40 twisti * src/vm/exceptions.c (threads/lock-common.h): Added. [ENABLE_THREADS] (threads/native/threads.h): Removed. [!ENABLE_THREADS] (threads/none/threads.h): Likewise. (threads/threads-common.h): Added. (new_exception_message): Removed. (exceptions_throw_classcircularityerror): Use exceptions_throw_utf_utf. (exceptions_throw_classformaterror): Likewise. (classnotfoundexception_to_noclassdeffounderror): Fixed warning. (exceptions_throw_incompatibleclasschangeerror): Use exceptions_throw_utf_utf. (exceptions_throw_internalerror): Likewise. (exceptions_throw_unsupportedclassversionerror): Likewise. (exceptions_throw_verifyerror): Likewise. (exceptions_throw_verifyerror_for_stack): Likewise. (exceptions_new_arithmeticexception): Likewise. (exceptions_new_classcastexception): Use exceptions_new_class_utf. (exceptions_print_exception): Fixed warnings. * src/vmcore/utf8.c (utf_division_by_zero): Added. (utf8_init): Likewise. * src/vmcore/utf8.h (utf_division_by_zero): Likewise. 2007-05-23 11:59 twisti * src/vm/exceptions.c (new_exception_int): Removed. * src/vm/exceptions.h (new_exception_int): Likewise. * src/native/native.c (native_new_and_init_int): Likewise. * src/native/native.h (native_new_and_init_int): Likewise. 2007-05-23 09:40 tbfg * src/vm/jit/m68k/codegen.c (codegen_emit): Remove NOP after each ICMD. Add NOP generation at end of basci block when patcher is longer than instruction to be patched. * src/vm/jit/m68k/patcher.c (patcher_get_putfield): Implemented. * src/vm/jit/m68k/codegen.h (COMPILERSTUB_CODESIZE): Correct value. * src/vm/jit/codegen-common.c (codegen_increase): Enable NOP after patcher generation at end of basic block. 2007-05-23 09:37 tbfg * src/vm/jit/abi.h (abi_registers_address_name): Added. (abi_registers_address_argument): Likewise. (abi_registers_address_saved): Likewise. (abi_registers_address_temporary): Likewise. 2007-05-22 11:18 twisti * src/vm/jit/x86_64/md.c (md_get_method_patch_address): Replaced assert with vm_abort. 2007-05-22 10:07 michi * src/vm/jit/arm/codegen.c (codegen_emit_stub_native): Removed obsolete SPLIT-stuff. 2007-05-22 07:21 michi * src/vm/jit/arm/emit.c (emit_verbosecall_enter): Removed obsolete SPLIT-stuff. 2007-05-22 07:00 michi * src/vm/jit/arm/md-abi.c (md_param_alloc): Align stack arguments as well. * src/vm/jit/arm/asmpart.S (asm_vm_call_method): Use EABI internally. 2007-05-21 14:42 twisti * src/vm/jit/arm/md-abi.c (md_param_alloc): Use EABI internally. (ALIGN_2): Removed. * src/vm/jit/arm/codegen.c (codegen_emit): Removed SPLIT-stuff. * src/vm/jit/arm/emit.c (emit_store): Likewise. 2007-05-21 14:40 twisti * src/vm/global.h (ALIGN_2): Added. 2007-05-21 11:45 michi * src/vm/jit/arm/codegen.h (M_EORLE): Added. * src/vm/jit/arm/codegen.c (codegen_emit): Fixed superindex overflow for ICMD_INSTANCEOF and ICMD_CHECKCAST. * src/vm/jit/arm/patcher.c (patcher_checkcast_instanceof_interface): Adapted patcher to above changes. 2007-05-21 08:48 twisti * src/native/include/Makefile.am (CLEANFILES): Simply clean an *.h files. 2007-05-21 08:27 twisti * src/native/jni.c (_Jv_jni_CallLongMethodA): New function. (_Jv_jni_CallFloatMethodA): Likewise. (_Jv_jni_CallDoubleMethodA): Likewise. (_Jv_JNI_CallStaticBooleanMethodA): Implemented. (_Jv_JNI_CallStaticByteMethodA): Likewise. (_Jv_JNI_CallStaticCharMethodA): Likewise. (_Jv_JNI_CallStaticShortMethodA): Likewise. (_Jv_JNI_CallStaticIntMethodA): Likewise. (_Jv_JNI_CallStaticLongMethodA): Likewise. (_Jv_JNI_CallStaticFloatMethodA): Likewise. (_Jv_JNI_CallStaticDoubleMethodA): Likewise. 2007-05-18 15:05 twisti * src/native/vm/cldc1.1/java_lang_Object.c (getClass): Fixed signature. 2007-05-18 14:24 twisti * src/vmcore/statistics.c (count_nstub_len): Renamed to size_stub_native. (statistics_print_memory_usage): Likewise. * src/vmcore/statistics.h: Likewise. * src/vm/jit/codegen-common.c (codegen_generate_stub_native): Likewise, moved statistics-calculation after codegen_finish(), so actually something is counted. 2007-05-18 14:22 twisti * src/toolbox/list.c (list_create): Use LOCK_INIT_OBJECT_LOCK-macro. 2007-05-18 14:17 twisti * src/threads/threads-common.c (threads_thread_get_state): Fixed compiler warning. (threads_thread_is_alive): Likewise. 2007-05-18 13:45 twisti * src/native/vm/cldc1.1/java_lang_String.c (methods): Removed quick-hack. * src/native/vm/cldc1.1/java_lang_Throwable.c (fillInStackTrace): Fixed signature. 2007-05-18 13:12 twisti * src/native/native.c (native_tree_native_methods_comparator): Compare classname, name and descriptor. (native_method_register): Set all structure members. (native_method_find): Changed argument-type to methodinfo. (native_resolve_function): Likewise. * src/native/native.h (native_methods_node_t): Added classname and descriptor, renamed method to function. * src/native/vm/gnu/java_lang_VMClass.c: Updated wrong signatures. * src/native/vm/gnu/java_lang_VMObject.c: Likewise. * src/native/vm/gnu/java_lang_VMThread.c: Likewise. * src/native/vm/gnu/java_lang_reflect_Constructor.c: Likewise. 2007-05-16 09:01 twisti * src/native/native.c (native_library_open): New function. (native_hashtable_library_add): Renamed to native_library_add. (native_hashtable_library_find): Renamed to native_library_find. * src/native/native.h: Likewise. * src/native/vm/java_lang_Runtime.c (loadLibrary): Use native_library_open. 2007-05-16 08:02 twisti * src/native/native.c: Removed all native-includes. (dummynativetable): Removed. (mainhandle): Likewise. (native_init): Don't dlopen libjvm, initialize the native-methods tree. (native_tree_native_methods_comparator): New function. (native_method_symbol): Likewise. (native_method_find): Likewise. (native_resolve_function): Use native-methods tree for internal native methods. * src/native/native.h (native/jni.h): Added. (NATIVE_METHODS_COUNT): Defined. (native_methods_node_t): New structure. (native_method_register): Added. * src/native/vm/nativevm.c: New file. * src/native/vm/nativevm.h: Likewise. * src/native/vm/Makefile.am (libnativevm_la_SOURCES): Added nativevm.[ch]. * src/native/vm/cldc1.1/com_sun_cldc_io_ResourceInputStream.c, src/native/vm/cldc1.1/com_sun_cldc_io_j2me_socket_Protocol.c, src/native/vm/cldc1.1/com_sun_cldchi_io_ConsoleOutputStream.c, src/native/vm/cldc1.1/com_sun_cldchi_jvm_JVM.c, src/native/vm/cldc1.1/java_lang_Class.c, src/native/vm/cldc1.1/java_lang_Double.c, src/native/vm/cldc1.1/java_lang_Float.c, src/native/vm/cldc1.1/java_lang_Math.c, src/native/vm/cldc1.1/java_lang_Object.c, src/native/vm/cldc1.1/java_lang_Runtime.c, src/native/vm/cldc1.1/java_lang_String.c, src/native/vm/cldc1.1/java_lang_System.c, src/native/vm/cldc1.1/java_lang_Thread.c, src/native/vm/cldc1.1/java_lang_Throwable.c, src/native/vm/gnu/gnu_classpath_VMStackWalker.c, src/native/vm/gnu/gnu_classpath_VMSystemProperties.c, src/native/vm/gnu/gnu_java_lang_management_VMClassLoadingMXBeanImpl.c, src/native/vm/gnu/gnu_java_lang_management_VMMemoryMXBeanImpl.c, src/native/vm/gnu/gnu_java_lang_management_VMRuntimeMXBeanImpl.c, src/native/vm/gnu/gnu_java_lang_management_VMThreadMXBeanImpl.c, src/native/vm/gnu/java_lang_VMClass.c, src/native/vm/gnu/java_lang_VMClassLoader.c, src/native/vm/gnu/java_lang_VMObject.c, src/native/vm/gnu/java_lang_VMRuntime.c, src/native/vm/gnu/java_lang_VMString.c, src/native/vm/gnu/java_lang_VMSystem.c, src/native/vm/gnu/java_lang_VMThread.c, src/native/vm/gnu/java_lang_VMThrowable.c, src/native/vm/gnu/java_lang_management_VMManagementFactory.c, src/native/vm/gnu/java_lang_reflect_Constructor.c, src/native/vm/gnu/java_lang_reflect_Field.c, src/native/vm/gnu/java_lang_reflect_Method.c, src/native/vm/gnu/java_lang_reflect_VMProxy.c, src/native/vm/gnu/java_security_VMAccessController.c, src/native/vm/gnu/sun_misc_Unsafe.c: Added methods table and init function to register the native methods. 2007-05-15 10:32 tbfg * src/vm/jit/powerpc64/patcher.c (patcher_resolve_classref_to_classinfo): Patch back original code. (patcher_resolve_classref_to_vftbl): Likewise. (patcher_resolve_classref_to_flags): Likewise. * src/vm/jit/powerpc64/asmpart.S (DARWIN): Removed all darwin ifdefed code for readability. Needs to be ported carefully anyways. (asm_vm_call_method): When handling arguments treat address type as long. 2007-05-15 09:55 christian * src/vm/jit/codegen-common.c: (codegen_emit_phi_moves): Added. (Former codegen_insert_phi_moves from codegen.c) * src/vm/jit/codegen-common.h: Function prototype for codegen_emit_phi_moves added. * src/vm/jit/optimizing/lsra.c: Adapted to new instruction format and unified variables. * src/vm/jit/optimizing/lsra.h: Likewise. * src/vm/jit/optimizing/ssa.c: Likewise. * src/vm/jit/optimizing/ssa.h: Likewise. * src/vm/jit/optimizing/graph.c: Likewise. * src/vm/jit/optimizing/graph.h: Likewise. * src/vm/jit/optimizing/dominators.c: Likewise. * src/vm/jit/optimizing/lifetimes.c: Likewise and changed lifetime anaylsis to a worklist algorithmus. * src/vm/jit/optimizing/lifetimes.h: Likewise. * src/vm/jit/i386/codegen.c: (codegen_insert_phi_moves): Moved to src/vm/jit/codegen-common.c codegen_emit_phi_moves (codegen_emit): Necessary Adaptions for SSA. * src/toolbox/worklist.c: (wl_reset): Added. * src/toolbox/worklist.h: Function Prototype for wl_reset added. * src/vm/jit/stack.c: Removed old SSA specific code. 2007-05-15 09:25 tbfg * builtin.c (builtin_ldiv): Needed when DISABLE_GC. 2007-05-14 17:25 twisti * src/native/native.c (native_class_getdeclaredannotations): Removed. 2007-05-14 14:11 twisti * src/toolbox/list.c (list_add_first): Call list_add_first_unsynced. (list_add_first_unsynced): New function. * src/toolbox/list.h (list_add_first_unsynced): Added. 2007-05-14 13:29 twisti * src/threads/threads-common.c (threads_create_thread): Renamed to threads_thread_new. (threads_thread_free): New function. (threads_preinit): Renamed threads_create_thread to threads_thread_new. (threads_thread_start_internal): Likewise. (threads_thread_start): Likewise. * src/threads/threads-common.h (threads_create_thread): Renamed to threads_thread_new. (threads_thread_free): Added. (threads_init_threadobject): Renamed to threads_impl_thread_new. (threads_impl_thread_free): Added. * src/threads/native/threads.c (toolbox/avl.h): Removed. (threadattr): Likewise. (threads_init_threadobject): Renamed to threads_impl_thread_new. (threads_impl_thread_free): New function. (threads_init): Use local pthread_attr_t. (threads_impl_thread_start): Use pthread_attr_setdetachstate (fixes memory leak), check more return values of pthread-calls. (threads_attach_current_thread): Renamed threads_create_thread to threads_thread_new. (threads_detach_thread): Removed lock-record pools comment, call threads_thread_free. 2007-05-14 11:15 tbfg * src/vm/jit/dseg.h (dseg_adddata): Removed warning due to typo. * src/vm/jit/m68k/arch.h (SUPPORT_LONG) Defined. (SUPPORT_LONG_ADD): Defined. (SUPPORT_CONST_LOGICAL): Defined. * src/vm/jit/m68k/codegen.c (ICMD_LADD): Implemented. (ICMD_LADDCONST): Implemented. (ICMD_LSUB): Implemented. (ICMD_LSUBCONST): Implemented. (ICMD_LNEG): Implemented. * src/vm/jit/m68k/codegen.h (M_ISUBX): Added. (M_INEGX): Added. 2007-05-11 22:33 twisti * configure.ac (AC_CHECK_HEADERS): Added time.h. (AC_CHECK_FUNCS): Added localtime, localtime_r, time. * src/vmcore/statistics.c [HAVE_TIME_H] (time.h): Added. (statistics_print_date): New function. * src/vmcore/statistics.h (statistics_print_date): Added. * src/mm/memory.c (memory_thread) [ENABLE_STATISTICS]: Call statistics_print_date. 2007-05-11 21:18 twisti * src/vmcore/statistics.c (statistics_print_memory_usage): Use log_println instead of printf. 2007-05-11 20:35 twisti * src/vm/jit/arm/codegen.c (codegen_emit): Use CODEGEN_CRITICAL_SECTION_* macros. * src/vm/jit/arm/linux/md-os.c (thread_restartcriticalsection): Renamed to md_critical_section_restart. 2007-05-11 19:31 twisti * src/threads/threads-common.c (threads_create_thread): Removed lock_init_execution_env. * src/threads/lock-common.h (lock_init_execution_env): Removed. (lock_record_free_pools): Likewise. * src/threads/native/threads.h (threadobject): Removed ee. * src/threads/native/lock.c (vm/finalizer.h): Added. [ENABLE_GC_BOEHM] (mm/boehm-gc/include/gc.h): Likewise. (lock_global_pool): Removed. (lock_global_pool_lock): Likewise. (lock_init): Don't initialize lock_global_pool_lock. (lock_record_init): Removed. (lock_init_execution_env): Likewise. (lock_record_alloc_new_pool): Likewise. (lock_record_alloc_pool): Likewise. (lock_record_free_pools): Likewise. (lock_record_alloc): Likewise. (lock_record_recycle): Likewise. (lock_hashtable_get_lock_record): Renamed to lock_hashtable_get. (lock_record_new): New function. (lock_record_free): Likewise. (lock_hashtable_remove): Likewise. [ENABLE_GC_BOEHM] (lock_record_finalizer): Likewise. * src/threads/native/lock.h (lock_execution_env_t): Removed. (lock_record_pool_header_t): Likewise. (lock_record_pool_t): Likewise. (lock_record_t): Renamed obj to object, removed nextfree. [ENABLE_JVMTI] (lock_global_pool_lock, lock_global_pool): Removed. * src/vmcore/statistics.c (size_lock_record_pool): Renamed to size_lock_record. (statistics_print_memory_usage): Likewise. * src/vmcore/statistics.h: Likewise. 2007-05-11 18:58 tbfg * src/vm/jit/m68k/linux/md-abi.h (ADR_SAV_CNT): Increased by one (%fp). (ADR_RES_CNT): Decreased by one (%fp). * src/vm/jit/m68k/linux/md-abi.c (nregdescadr): Declared %fp a REG_SAV. * src/vm/jit/m68k/arch.h (SUPPORT_DIVISION): Defined. * src/vm/jit/m68k/asmpart.S (asm_handle_exception): Additional logic to restore %fp when unwinding the stack. 2007-05-11 18:23 twisti * src/threads/native/threads.h (threadobject): Removed next and prev. 2007-05-11 17:15 tbfg * src/vm/jit/m68k/codegen.c (codegen_emit): Fix stackframesize allocation in not synchronized methods which call a builtin returning a double. Merged with ENABLE_THREADS case. Added code to copy interface registers. * src/vm/jit/m68k/asmpart.S (asm_handle_exception): Save temporary registers, dunno if really needed, but its a slow path anyways. 2007-05-10 14:34 tbfg * src/vm/jit/m68k/emit.c (emit_verbosecall_enter): Make SOFTFLOAT clean. (emit_verbosecall_exit): Likewise. * src/vm/jit/m68k/asmpart.S (asm_vm_call_method): Mark comment about gcc abi wiredness. * src/vm/jit/m68k/codegen.h (M_D2F): Fixed. (M_F2D): Fixed. 2007-05-10 14:04 twisti * src/vmcore/options.c (opt_verbosethreads): Added. * src/vmcore/options.h (opt_verbosethreads): Likewise. * src/vm/vm.c (XXusage): Added -verbose:threads. (vm_create): Likewise. * src/threads/threads-common.c (threads_create_thread): Renamed variable thread to t. (threads_thread_print_info): New function. (threads_dump): Use threads_thread_print_info. * src/threads/threads-common.h (threads_thread_print_info): Added. * src/threads/native/threads.c (threads_init) [!NDEBUG]: Added -verbose:threads debug-output. (threads_startup_thread): Likewise. (threads_attach_current_thread): Likewise. (threads_detach_thread): Likewise. 2007-05-10 13:27 twisti * src/threads/threads-common.c (threads_thread_start_internal): Set thread-flags. (threads_thread_start): Likewise. * src/threads/native/threads.c (threads_startup_thread): Don't set thread-flags. 2007-05-10 12:50 tbfg * src/vm/jit/powerpc64/patcher.c (patcher_checkcast_interface): Fixed not flushing all bytes written. 2007-05-09 16:37 tbfg * src/vm/jit/powerpc64/codegen.c (ICMD_CHECKCAST): Use branch_label_* instead of harcoded jump offsets. (ICMD_INSTANCEOF): Likewise. 2007-05-09 16:05 twisti * src/lib/Makefile.am (VM_JAVA_FILES): Renamed vm/reference/ to gnu/. * src/lib/vm: Removed. * src/lib/gnu: Added. * src/lib/gnu/java: Likewise. * src/lib/gnu/gnu: Likewise. 2007-05-09 08:52 tbfg * src/vm/jit/m68k/linux/md-abi.h (LA_SIZE_IN_POINTERS): Defined 0. (PA_SIZE_IN_POINTERS): Removed. (PA_SIZE): Removed. (LA_LR_OFFSET): Removed. (LA_SIZE_ALIGNED): Removed. * src/vm/jit/m68k/emit.c (emit_verbosecall_enter): Removed linking instructions, save only used registers. (emit_verbosecall_exit): Likewise. * src/vm/jit/m68k/arch.h (SUPPORT_FLOAT): Depends on configure option ENABLE_SOFTFLOAT. * src/vm/jit/m68k/codegen.c (codegen_emit): Use M_FSTORE/M_FLOAT to save/restore float registers without converting any values. Fixed offset of IsSync. (codegen_emit_stub_native): Move floating point return values into floating point registers. * src/vm/jit/m68k/asmpart.S (asm_vm_call_method): Save/restore floating point registers. (asm_call_jit_compiler): Save/restore volatile floating point registers. (asm_patcher_wrapper): Likewise. (asm_handle_exception): Use fmovemd instructions to restore floatng point registers without converting. * src/vm/jit/m68k/codegen.h (M_FSTORE): Added. (M_FLOAT): Added. 2007-05-09 08:36 tbfg * src/vm/jit/powerpc64/linux/md-os.c (thread_restartcriticalsection): Renamed to md_critical_section_restart. * src/vm/jit/powerpc64/codegen.c (codegen_emit): Use CODEGEN_CRITICAL_SECTION_* macros. 2007-05-08 13:03 twisti * src/configure.ac (AC_CHECK_HEADERS): Added string.h. (AC_CHECK_FUNCS): Added strdup. * src/src/vmcore/options.c [HAVE_STRING_H] (string.h): Added #ifdef. (options_get) HAVE_STRDUP]: Added. 2007-05-07 21:34 twisti * src/vm/jit/alpha/codegen.c (codegen_emit): Use CODEGEN_CRITICAL_SECTION_* macros. * src/vm/jit/alpha/linux/md-os.c (thread_restartcriticalsection): Renamed to md_critical_section_restart. 2007-05-07 21:29 twisti * src/threads/native/threads.c (mainthreadobj): Removed. * src/threads/native/threads.h (mainthreadobj): Likewise. * src/vm/jit/optimizing/profile.c (threads/native/threads.h): Likewise. (profile_thread): Rewritten thread iteration. 2007-05-07 15:07 ajordan * src/vm/jit/sparc64/codegen.c (codegen_emit): Adapted to critical section renames. * src/vm/jit/sparc64/linux/md-os.c: Likewise. 2007-05-07 14:26 tbfg * src/vm/jit/m68k/codegen.c (ICMD_FNEG): Implemented. (ICMD_DNEG): Implemented. * src/vm/jit/m68k/asmpart.S (asm_call_jit_compiler): Store volatile floatregisters. (asm_patcher_wrapper): Likewise. (asm_handle_exception): Restore float registers. * src/vm/jit/m68k/codegen.h (M_FNEG): Added. (M_DNEG): Added. 2007-05-07 14:23 tbfg * tests/exception_restore_registers.java: New test, tests if variables get restored in case of exceptions. * tests/exception_restore_registers.output: New file, expected output. * tests/Makefile.am: Added exception_restore_registers target. 2007-05-07 14:16 twisti * configure.ac (AC_CONFIG_FILES): Added src/vm/jit/mips/uclinux/Makefile. * src/vm/jit/mips/uclinux: New directory. * src/vm/jit/mips/uclinux/md-os.c: New file. * src/vm/jit/mips/uclinux/Makefile.am: Likewise. 2007-05-07 14:13 twisti * src/vm/jit/mips/codegen.c (codegen_emit): Use CODEGEN_CRITICAL_SECTION_* macros. * src/vm/jit/mips/linux/md-os.c (thread_restartcriticalsection): Renamed to md_critical_section_restart. 2007-05-07 13:45 twisti * configure.ac (AC_CHECK_HEADERS): Added sys/mman.h, sys/resource.h. (AC_CHECK_FUNCS): Added getrusage, mprotect. * src/vmcore/statistics.c [HAVE_SYS_TIME_H] (sys/time.h): Include conditionally. [HAVE_SYS_RESOURCE_H] (sys/resource.h): Likewise. (getcputime) [!HAVE_GETRUSAGE]: Return 0. 2007-05-07 13:31 twisti * src/native/vm/java_lang_Thread.h (threads/native/threads.h): Removed. 2007-05-07 13:02 tbfg * src/vm/jit/m68k/arch.h (SUPPORT_FLOAT): Enabled. (SUPPORT_FLOAT_CMP): Enabled. (SUPPORT_DOUBLE): Enabled. (SUPPORT_DOUBLE_CMP): Enabled. * src/vm/jit/m68k/codegen.c (ICMD_FCMPL): Implemented. (ICMD_DCMPL): Likewise. (ICMD_FCMPG): Likewise. (ICMD_DCMPG): Likewise. (ICMD_FMUL): Likewise. (ICMD_DMUL): Likewise. (ICMD_FDIV): Likewise. (ICMD_DDIV): Likewise. (ICMD_FADD): Likewise. (ICMD_DADD): Likewise. (ICMD_FSUB): Likewise. (ICMD_DSUB): Likewise. (ICMD_F2D): Likewise. (ICMD_D2F): Likewise. (ICMD_BUILTIN): Handle float return values. (codegen_emit_stub_native): Handle float values. * src/vm/jit/m68k/codegen.h (M_FCMP): Added. (M_BFEQ): Added. (M_BFLT): Added. (M_BFGT): Added. (M_BFUN): Added. (M_FADD): Added. (M_DADD): Added. (M_FSUB): Added. (M_DSUB): Added. (M_FMUL): Added. (M_DMUL): Added. (M_FDIV): Added. (M_DDIV): Added. (M_D2F): Added. (M_F2D): Added. 2007-05-07 11:37 twisti * src/threads/threads-common.c (threads_dump): Typo. 2007-05-07 11:35 twisti * src/threads/threads-common.c (threads_table_get): Made static and removed table lock. (threads_dump): Lock threads table. * src/threads/threads-common.h (threads_table_get): Removed. * src/threads/native/threads.c (threads_cast_stopworld): Lock threads table. (threads_cast_startworld): Likewise. 2007-05-07 01:44 ajordan * src/vm/jit/sparc64/codegen.c (codegen_emit_stub_native): Fixed fp arg passing. * src/vm/jit/sparc64/md-abi.h: Likewise. * src/vm/jit/sparc64/asmpart.S (asm_vm_call_method): Likewise, but the other way around. * src/vm/jit/sparc64/md-asm.h: Likewise. 2007-05-06 22:20 tbfg * src/vm/jit/m68k/codegen.c (codegen_emit): Allocate 2 additional words in stackframe for long to double conversion. * src/vm/jit/m68k/asmpart.S (asm_handle_exception): Copy exception object into correct register. * src/vm/jit/m68k/codegen.h (M_FLD): Implemented. (M_DLD): Likewise. (M_FST): Likewise. (M_DST): Likewise. (M_FLTMOVE): Likewise. (M_INT2FLTMOVE): Likewise. (M_DBLMOVE): Likewise. (FCONST): Likewise. 2007-05-06 13:32 ajordan * src/vm/jit/sparc64/codegen.c: Implemented threads support. * src/vm/jit/sparc64/machine-instr.h: Likewise. * src/vm/jit/sparc64/linux/md-os.c: Likewise. 2007-05-05 13:48 tbfg * src/vm/jit/m68k/emit.c (emit_patcher_stubs): Add thread support. (emit_exception_check_areg): Removed dead code. * src/vm/jit/m68k/codegen.c (codegen_emit): Add thread support. * src/vm/jit/m68k/asmpart.S (asm_patcher_wrapper): Likewise. 2007-05-05 13:46 tbfg * linker.c (linker_compute_subclasses): threads_cast_[start|stop]world only available when using GC. 2007-05-05 08:08 pm * contrib/vmlog/Makefile.am (AM_CPPFLAGS): Add include directories for vmlog. * src/vm/Makefile.am: Likewise. 2007-05-04 10:13 tbfg * linker.c (linker_compute_subclasses): Only call threads_cast_[start|stop]world when ENABLE_THREADS. 2007-05-03 23:31 tbfg * src/vm/jit/m68k/md.c (md_stacktrace_get_returnaddress): Removed braindead address check and fixed the real bug. * src/vm/jit/m68k/asmpart.S (asm_vm_call_method): Added float argument handling. (asm_call_jit_compiler): Fixed stack offset bug. 2007-05-03 22:32 twisti * src/vm/jit/x86_64/codegen.c (codegen_emit): Use CODEGEN_CRITICAL_SECTION_* macros. * src/vm/jit/x86_64/linux/md-os.c (thread_restartcriticalsection): Renamed to md_critical_section_restart. 2007-05-03 21:29 twisti * src/vm/jit/i386/codegen.c (codegen_emit): Use CODEGEN_CRITICAL_SECTION_* macros. * src/vm/jit/i386/linux/md-os.c (thread_restartcriticalsection): Renamed to md_critical_section_restart. 2007-05-03 21:17 twisti * src/threads/critical.c (critical_compare): Renamed to critical_comparator. (critical_find): Removed. (critical_register_critical_section): Renamed to critical_section_register. (critical_find_restart_point): Call avl_find. (critical_register_asm_critical_sections): Call critical_section_register. * src/threads/critical.h (critical_section_node_t): Renamed members. (thread_restartcriticalsection): Renamed to md_critical_section_restart. * src/threads/native/threads.c (threads_cast_darwinstop): Call md_critical_section_restart. (threads_sigsuspend_handler): Likewise. * src/vmcore/linker.c (linker_compute_subclasses): Call threads_cast_{start,stop}world, removed LOCK_MONITOR_{ENTER,EXIT}. * src/cacaoh/dummy.c (threads_cast_stopworld): Added. (threads_cast_startworld): Likewise. * src/vm/jit/codegen-common.c (codegen_setup): Setup listcritical. (codegen_reset): Likewise. (codegen_critical_section_new): New function. (codegen_critical_section_start): Likewise. (codegen_critical_section_end): Likwise. (codegen_critical_section_finish): Likewise. (codegen_finish): Call codegen_critical_section_finish. (codegen_threadcritrestart): Removed. (codegen_threadcritstart): Likewise. (codegen_threadcritstop): Likewise. * src/vm/jit/codegen-common.h (codegen_critical_section_t): Renamed to critical_section_ref_t. (codegendata): Added listcritical, removed threadcrit, threadcritcurrent and threadcritcount. (CODEGEN_CRITICAL_SECTION_NEW, CODEGEN_CRITICAL_SECTION_START) (CODEGEN_CRITICAL_SECTION_END): Defined. * src/vm/jit/powerpc/codegen.c (codegen_emit): Use CODEGEN_CRITICAL_SECTION_* macros. * src/vm/jit/powerpc/linux/md-os.c (thread_restartcriticalsection): Renamed to md_critical_section_restart. 2007-05-03 20:58 twisti * src/mm/boehm-gc/include/gc.h (GC_HAVE_BUILTIN_BACKTRACE): Commented, we don't need it and uClibc doesn't have it. 2007-05-03 14:53 twisti * src/toolbox/avl.c (toolbox/logging.h): Added. (vm/global.h): Likewise. (vm/vm.h): Likewise. (avl_insert_intern): Use vm_abort instead of assert. (avl_insert): Removed debug code. (avl_dump): Use logging functions. 2007-05-03 13:49 twisti * src/vm/jit/codegen-common.c (codegen_start_native_call) [ENABLE_JAVASE]: This has to be ENABLE_JNI. (codegen_finish_native_call): Likewise. 2007-05-03 12:30 twisti * src/toolbox/avl.c (avl_insert_intern): Changed order of comparator-arguments. (avl_find): Likewise. * src/toolbox/avl.h (avl_comparator): Renamed arguments, to reflect the change. * src/vm/jit/codegen-common.c (methodtree_comparator): Likewise. 2007-05-03 08:29 twisti * src/toolbox/avl.h (avl_tree): Renamed to avl_tree_t. (avl_node): Renamed to avl_node_t. * src/toolbox/avl.c: Likewise. * src/threads/critical.c: Likewise. * src/vm/jit/codegen-common.c: Likewise. 2007-05-03 08:16 twisti * contrib/check_dangerous_printf.pl: Removed this file in favor of pscan. 2007-05-03 00:33 tbfg * src/vm/jit/m68k/codegen.c (ICMD_CALOAD): Fixed. * src/vm/jit/m68k/patcher.c (*): Removed patching back of old opcodes from patcher_wrapper, moved into each patcher. (patcher_patch_back): Added. 2007-05-02 22:28 tbfg * src/vm/jit/m68k/codegen.c (ICMD_IDIVPOW2): Fixed. (ICMD_IREM): Fixed. (ICMD_LASTORE): Use M_LST. (ICMD_DASTORE): Use M_LST. (ICMD_LALOAD): Use M_LLD. (ICMD_DALOAD): Use M_LLD. 2007-05-02 20:46 twisti * src/native/vm/cldc1.1/java_lang_Float.c (native/native.h): Removed. (native/include/java_lang_Float.h): Added. 2007-05-02 20:44 twisti * src/native/vm/cldc1.1/java_lang_Double.c (native/include/java_lang_Double.h): Added. (longBitsToDouble): Fixed return type. 2007-05-02 20:40 twisti * src/threads/threads-common.c (threads_table_get_threads): New function. * src/threads/threads-common.h (threads_table_get_threads): Added. * src/threads/native/threads.c (threads_cast_sendsignals): Rewritten. (threads_cast_stopworld): Likewise. 2007-05-02 20:36 tbfg * java_lang_Double.c (Java_java_lang_Double_doubleToLongBits): Added missing JNIEnv* argument to signature. 2007-05-02 19:57 twisti * src/vmcore/class.c (class_load_attributes): Disable annotation loading for the release. 2007-05-02 16:21 twisti * src/threads/threads-common.c (threads_preinit): Create and initialize the main-thread. (threads_table_init): Changed signature, insert main-thread and maintain a used list too. (threads_table_add): Use locking and maintain used list. (threads_table_remove): Likewise. (threads_table_get): New function. (threads_table_get_non_daemons): Likewise. (threads_table_first): Likewise. (threads_table_next): Likewise. [!NDEBUG] (threads_table_dump): Use log_* functions. (threads_dump): Use threads-table and functions. * src/threads/threads-common.h (threads_table_entry_t): Made a struct and renamed nextfree to next. (threads_table_get): Added (threads_table_get_non_daemons): Likewise. (threads_table_first): Likewise. (threads_table_next): Likewise. [!NDEBUG] (threads_table_dump): Likewise. (threads_impl_table_init): Likewise. (threads_table_lock): Likewise. (threads_table_unlock): Likewise. (threads_set_current_threadobject): Likewise. * src/threads/native/threads.c (threadlistlock): Removed. (threads_impl_preinit): Removed main-thread initialization code. (threads_impl_table_init): New function. (threads_table_lock): New function. (threads_table_unlock): Likewise. (threads_init): Get main-thread from threads-table and removed thread-list code. (threads_attach_current_thread): Likewise. (threads_detach_thread): Removed thread-list code. (threads_find_non_daemon_thread): Removed. (threads_join_all_threads): Use threads_table_get_non_daemons. 2007-05-02 09:57 twisti * src/vm/jit/powerpc/linux/md-os.c (md_signal_handler_sigsegv): Added uClibc support. (md_signal_handler_sigtrap): Likewise. (md_signal_handler_sigusr2): Likewise. (thread_restartcriticalsection): Likewise. 2007-05-01 21:40 pm * src/vm/jit/s390/md.c (md_dump_context): Added. Fatal signals now print the context and a stacktrace. * src/vm/jit/s390/emit.h (emit_restore_pv): Added. Fixes bug where REG_PV recalculation uses dseg value to recalculate REG_PV. * src/vm/jit/s390/emit.c: Likewise. * src/vm/jit/s390/codegen.h (N_RI, N_RI2): Test immediate operand for correct signedness. * src/vm/jit/s390/codegen.c (codegen_emit): Use emit_restore_pv for REG_PV recalculation/ * src/vm/jit/s390/disass.c (disass_pseudo_instr): Fix formating. * src/vm/jit/s390/tests/dacapo.status: Added. 2007-05-01 17:35 ajordan * src/vm/jit/sparc64/codegen.h: Removed unused var_to_reg_int define. * src/vm/jit/sparc64/codegen.c: Fixed JIT float argument passing via stack. * src/vm/jit/sparc64/asmpart.S (asm_vm_call): Fixed integer argument passing via stack args. 2007-05-01 16:14 pm * src/vm/jit/s390/codegen.h (gen_bound_check, gen_nullptr_check_intern, gen_bound_check, N_LONG_0): Remove because obsolete. 2007-05-01 16:05 pm * src/vm/jit/s390/codegen.c (codegen_emit): Use new emit_label and emit_label_* functions. * src/vm/jit/s390/disass.c (disass_pseudo_instr): Nicer formatting for ill pseudo instruction. 2007-05-01 15:46 pm * src/vm/jit/emit-common.h (BRANCH_LABEL_6): Added. 2007-05-01 13:00 tbfg * src/vm/jit/m68k/linux/md-os.c (md_signal_handler_sigill): Support EXCEPTION_HARDWARE_ARITHMETIC. * src/vm/jit/m68k/emit.c (emit_mov_imm_reg): Use corret opcode for word forms. * src/vm/jit/m68k/codegen.c (ICMD_IDIVPOW2): Implemented. (ICMD_IREMPOW2): Implemented. (ICMD_ISHLCONST): Fixed. (ICMD_ISHRCONST): Fixed. (ICMD_IUSHRCONST): Fixed. (ICMD_SALOAD): Signextension fix. (ICMD_LALOAD): Implemented. (ICMD_LASTORE): Fixed. (ICMD_IASTORE): Fixed. (ICMD_MULITANEWARRAY): Fixed. * src/vm/jit/m68k/codegen.h (M_IADDX): Added. (M_IXOR): Fixed. (M_BCS): Fixed. 2007-04-30 12:44 tbfg * src/vm/jit/m68k/asmpart.S (asm_handle_exception): Restore registers correctly. 2007-04-30 11:58 twisti * src/vm/jit/inline/Makefile.am (AM_CPPFLAGS): Added -I$(top_builddir)/src. 2007-04-30 10:53 tbfg * src/vm/jit/m68k/emit.c (emit_mov_imm_reg): Fixed. (emit_arithmetic_check): Implemented. * src/vm/jit/m68k/md.c (md_get_method_patch_address): Changed invoking register. (md_stacktrace_get_returnaddress): Fix for linking words on stack. * src/vm/jit/m68k/codegen.c (IUSHRCONST): Fix. (ICMD_IOR): Implemented. (ICMD_IORCONST): Likewise. (ICMD_IXOR): Likewise. (ICMD_IXORCONST): Likewise. (ICMD_INVOKEVIRTUAL): Changed invoking register. (ICMD_INVOKEINTERFACE): Likewise. * src/vm/jit/m68k/patcher.c (patcher_invokevirtual): Changed invoking register. * src/vm/jit/m68k/asmpart.S (asm_vm_call_method_exception_handler): Proper stack restauration. (L_asm_call_jit_compiler_exception): Implemented. (asm_patcher_wrapper): Fixses. (L_asm_patcher_wrapper_exception): Implemented. * src/vm/jit/m68k/codegen.h (M_IXOR): Added. (M_IOR_IMM): Added. (M_IXOR_IMM): Added. * src/vm/jit/stacktrace.c (stacktrace_create_extern_stackframe): Comment and further m68k stuff. 2007-04-29 22:46 pm * src/vm/jit/s390/emit.c, src/vm/jit/s390/md-abi.h, src/vm/jit/s390/md.c, src/vm/jit/s390/emit.h, src/vm/jit/s390/codegen.c, src/vm/jit/s390/machine-instr.h, src/vm/jit/s390/codegen.h, src/vm/jit/s390/arch.h, src/vm/jit/s390/md-asm.h, src/vm/jit/s390/disass.c, src/vm/jit/s390/patcher.c, src/vm/jit/s390/asmpart.S, src/vm/jit/s390/md-abi.c: Adapted S390 port to changes from branches/twisti (hardware exceptions, emit_branch, abi_registers_*), jctest works again. Cleaned up almost all dead x86_64 code. 2007-04-28 12:59 ajordan * src/vm/jit/sparc64/asmpart.S (asm_call_jit_compiler): Fixed stack alignement in first save. 2007-04-27 08:43 tbfg * src/vm/jit/m68k/emit.c (emit_arrayindexoutofbounds_check): Fixed. * src/vm/jit/m68k/linux/md-os.c (md_signal_handler_sigill): AIOOB fixed. Editor boiler plate added. * src/vm/jit/m68k/linux/md-os.h: Editor boiler plate. * src/vm/jit/m68k/linux/md-abi.c: Likewise. * src/vm/jit/m68k/md.c: Likewise. * src/vm/jit/m68k/machine-instr.h: Likewise. * src/vm/jit/m68k/patcher.c: Editor boiler plate. (patcher_invokeinterface): Implemented. (patcher_get_putfield): Implemented. (patcher_resolve_class): Implemented. (patcher_get_putstatic): Implemented. * src/vm/jit/m68k/codegen.c: Editor boiler plate. (ICMD_GETSTATIC): Added patcher. (ICMD_AASTORE): Fixed. * src/vm/jit/m68k/asmpart.S: Editor boiler plate. (asm_vm_call_method_exception_handler): Fixed used register. Return values in %d0 and %a0 as gcc sometimes expects pointers in %a0. 2007-04-27 01:37 ajordan * src/vm/jit/sparc64/emit.c: Keeping stack 16-byte aligned when calling C/native functions from the stack. (Solaris requires this) * src/vm/jit/sparc64/codegen.c: Likewise. * src/vm/jit/sparc64/codegen.h: Likewise. * src/vm/jit/sparc64/md-abi.c: Removed zero sized abi_register_* arrays. (not allowed in ISO C) * src/vm/jit/sparc64/solaris/md-os.c: Preliminary hardware exception handling. (untested) 2007-04-26 13:43 twisti * src/vm/jit/inline/inline.h (config.h): Added. (inline_inline): Likewise. * src/vm/jit/jit.c (threads/threads-common.h): Added. [ENABLE_INLINING] (vm/jit/inline/inline.h): Likewise. [ENABLE_THREADS] (threads/native/threads.h): Removed. 2007-04-26 13:32 twisti * src/vm/vm.c [ENABLE_THREADS] (threads/native/threads.h): Removed. (threads/threads-common.h): Added. 2007-04-26 13:07 twisti * src/native/vm/java_lang_Thread.c: Set Id keyword. 2007-04-26 13:06 twisti * src/native/vm/java_lang_Thread.c (start): Renamed threads_start_javathread to threads_thread_start. 2007-04-26 12:48 twisti * src/threads/threads-common.c (threads_thread_create_internal): Renamed to threads_thread_start_internal and start the thread. (threads_start_javathread): Renamed to threads_thread_start. * src/threads/threads-common.h: Likewise. * src/threads/native/threads.c (threads_start_thread): Renamed to threads_impl_thread_start. * src/mm/memory.c (thread_memory): Removed. (memory_start_thread): Call threads_thread_start_internal. * src/vm/finalizer.c (thread_finalizer): Removed. (finalizer_start_thread): Call threads_thread_start_internal. * src/vm/signal.c (thread_signal): Removed. (signal_start_thread): Call threads_thread_start_internal. * src/vm/jit/optimizing/profile.c (thread_profile): Removed. (profile_start_thread): Call threads_thread_start_internal. * src/vm/jit/optimizing/recompile.c (thread_recompile): Removed. (recompile_start_thread): Call threads_thread_start_internal. 2007-04-26 11:14 twisti * src/threads/threads-common.c (threads/critical.h): Added. (threads/native/threads.h): Removed. (threads_table): Added. (threads_preinit): New function. (threads_table_init): Moved from implementation file. (threads_table_add): Likewise. (threads_table_remove): Likewise. (threads_table_dump): Likewise. * src/threads/threads-common.h (threads_table_entry_t) (threads_table_t): Added. (threads_preinit): Likewise. (threads_table_add): Likewise. (threads_table_remove): Likewise. (threads_impl_preinit): Likewise. (threads_init_threadobject): Likewise. * src/threads/native/threads.c (threads_table): Removed. (threads_preinit): Renamed to threads_impl_preinit. (threads_table_init): Removed. (threads_table_add): Likewise. (threads_table_remove): Likewise. (threads_table_dump): Likewise. * src/threads/native/threads.h (threads_table_entry_t) (threads_table_t): Removed. (threads_preinit): Likewise. 2007-04-25 21:47 stefan * src/vm/jit/i386/darwin/md-os.c: added threads/threads-common.h, removed vm/jit/i386/md-abi.h 2007-04-25 21:23 stefan * src/vm/jit/i386/darwin/md-os.c: attempt at porting the exception changes (see r7596 & r7648). 2007-04-25 21:03 twisti * src/threads/lock-common.h (threads/threads-common.h): Removed that header again and added a comment about not including thread headers. * src/threads/threads-common.c (threads_start_javathread): Reverted. * src/threads/threads-common.h (threads_start_javathread): Likewise. 2007-04-25 20:56 twisti * src/threads/threads-common.c (threads_dump) [!SIZEOF_VOID_P == 8]: Fixed warning. 2007-04-25 20:31 twisti * src/threads/threads-common.c (threads_start_javathread): Changed signature. * src/threads/lock-common.h (threads/threads-common.h): Added. [ENABLE_THREADS]: Only define functions when threads are enabled. * src/threads/threads-common.h (native/include/java_lang_Thread.h): Removed. [ENABLE_THREADS]: Only define functions when threads are enabled. (threads_start_javathread): Changed signature. 2007-04-25 20:07 twisti * src/vm/jit/mips/codegen.c: Changed lock includes. * src/vm/jit/mips/emit.c: Likewise. 2007-04-25 20:03 twisti * src/vm/jit/arm/codegen.c: Changed lock include. * src/vm/jit/arm/emit.c: Likewise. 2007-04-25 20:02 twisti * src/vm/jit/arm/emit.c (emit_load): Use switch-case instead of if-else contruct. (emit_store): Likewise. (emit_copy): Likewise. 2007-04-25 19:56 twisti * src/vm/jit/alpha/emit.c: Set Id keyword. 2007-04-25 19:55 twisti * src/vm/jit/alpha/codegen.c: Changed lock include. * src/vm/jit/alpha/emit.c: Likewise. 2007-04-25 19:54 twisti * src/vm/jit/alpha/codegen.c (codegen_emit_stub_native): Use md->params to save and restore argument registers. 2007-04-25 19:47 twisti * src/vm/jit/i386/codegen.c: Changed lock include. * src/vm/jit/i386/emit.c: Likewise. 2007-04-25 19:42 twisti * src/vm/jit/powerpc64/codegen.c: Changed lock includes. * src/vm/jit/powerpc64/emit.c: Likewise. 2007-04-25 19:38 twisti * src/vm/jit/powerpc/emit.c: Set Id keyword. 2007-04-25 19:37 twisti * src/vm/jit/powerpc/codegen.c: Fixed lock include. * src/vm/jit/powerpc/emit.c: Likewise. 2007-04-25 19:36 twisti * src/vm/jit/powerpc/linux/md-abi.c (abi_registers_float_temporary): Fixed number of registers. 2007-04-25 19:20 twisti * src/threads/lock-common.h: New file. * src/threads/native/lock.h: Removed function prototypes. * src/threads/none/lock.h (LOCK_INIT_OBJECT_LOCK): Added. * src/mm/memory.c, src/native/jni.c, src/native/native.c, src/native/vm/java_lang_Object.c, src/native/vm/java_lang_Thread.c, src/threads/Makefile.am, src/threads/native/threads.c, src/threads/threads-common.c, src/toolbox/avl.c, src/toolbox/hashtable.c, src/toolbox/list.c, src/vm/builtin.c, src/vm/finalizer.c, src/vm/initialize.c, src/vm/jit/inline/inline.c, src/vm/jit/jit.c, src/vm/jit/optimizing/recompile.c, src/vm/jit/parse.c, src/vm/jit/patcher.h, src/vm/jit/show.c, src/vm/jit/x86_64/codegen.c, src/vm/jit/x86_64/emit.c, src/vm/string.c, src/vmcore/class.c, src/vmcore/classcache.c, src/vmcore/linker.c, src/vmcore/loader.c, src/vmcore/suck.c, src/vmcore/utf8.c: Updated headers. 2007-04-25 18:51 twisti * src/mm/memory.h: Updated copyright header. 2007-04-25 18:33 twisti * src/threads/threads-common.c (threads_create_thread): Renamed to threads_thread_create_internal and a new function. (threads_start_javathread): Use threads_create_thread. * src/threads/threads-common.h (threads_create_thread): Changed signature. (threads_thread_create_internal): Added. * src/threads/native/threads.c (threads_set_current_threadobject): Made non-static. (threads_init_threadobject): Likewise, use threads_create_thread. (threads_init): Cleanup. (threads_startup_thread): Likewise. (threads_attach_current_thread): Use threads_create_thread. * src/vm/jit/optimizing/profile.c (profile_start_thread): Replaced threads_create_thread with threads_thread_create_internal. * src/vm/jit/optimizing/recompile.c (recompile_start_thread): Likewise. * src/vm/signal.c (signal_start_thread): Likewise. * src/vm/finalizer.c (finalizer_start_thread): Likewise. * src/mm/memory.c (memory_start_thread): Likewise. 2007-04-25 16:39 stefan * src/vmcore/linker.c (linker_init): added missing lock_init_object_lock. 2007-04-25 15:14 twisti * src/threads/native/threads.c (threads_preinit): We always need variable t. 2007-04-25 15:12 twisti * src/native/native.c (native/include/java_lang_Object.h): Include always. [ENABLE_JAVAME_CLDC1_1] (native/include/com_sun_cldc_io_ResourceInputStream.h) (native/include/com_sun_cldc_io_j2me_socket_Protocol.h): Added. 2007-04-25 14:24 twisti * contrib: Ignore TAGS. * contrib/vmlog: Likewise. 2007-04-25 11:54 twisti * src/threads/native/threads.c (threads_init): Use variable t instead of mainthreadobj->object, makes code simpler. 2007-04-25 11:47 twisti * src/threads/threads-common.c (threads_create_thread) [ENABLE_GC_BOEHM]: Use GCNEW_UNCOLLECTABLE. (threads_start_javathread) [ENABLE_GC_BOEHM]: Likewise. * src/threads/native/threads.c (threads_preinit) [ENABLE_GC_BOEHM]: Likewise. (threads_init): Removed resizing-of-threadobject code, we don't need it anymore. (threads_attach_current_thread) [ENABLE_GC_BOEHM]: Use GCNEW_UNCOLLECTABLE. (threads_detach_thread) [ENABLE_GC_BOEHM]: Use GCFREE. 2007-04-24 14:29 twisti * src/threads/threads-common.c: Set Id keyword. * src/threads/threads-common.h: Likewise. 2007-04-24 14:23 twisti * src/threads/threads-common.c (threads_dump): Also print integer thread id, so it's easier to compare with the ones from gdb. 2007-04-24 10:20 tbfg * threads.m4: Fixed a typo 2007-04-23 23:51 twisti * contrib/.cvsignore, doc/.cvsignore, doc/handbook/.cvsignore, man/.cvsignore, src/.cvsignore, src/cacao/.cvsignore, src/cacaoh/.cvsignore, src/fdlibm/.cvsignore, src/lib/.cvsignore, src/mm/.cvsignore, src/mm/boehm-gc/.cvsignore, src/mm/boehm-gc/doc/.cvsignore, src/mm/boehm-gc/include/.cvsignore, src/mm/cacao-gc/.cvsignore, src/native/.cvsignore, src/native/include/.cvsignore, src/native/jvmti/.cvsignore, src/native/tools/.cvsignore, src/native/vm/.cvsignore, src/native/vm/cldc1.1/.cvsignore, src/native/vm/gnu/.cvsignore, src/scripts/.cvsignore, src/threads/.cvsignore, src/threads/none/.cvsignore, src/threads/posix/.cvsignore, src/toolbox/.cvsignore, src/vm/.cvsignore, src/vm/jit/.cvsignore, src/vm/jit/allocator/.cvsignore, src/vm/jit/alpha/.cvsignore, src/vm/jit/alpha/freebsd/.cvsignore, src/vm/jit/alpha/linux/.cvsignore, src/vm/jit/arm/.cvsignore, src/vm/jit/arm/linux/.cvsignore, src/vm/jit/i386/.cvsignore, src/vm/jit/i386/cygwin/.cvsignore, src/vm/jit/i386/darwin/.cvsignore, src/vm/jit/i386/freebsd/.cvsignore, src/vm/jit/i386/linux/.cvsignore, src/vm/jit/inline/.cvsignore, src/vm/jit/intrp/.cvsignore, src/vm/jit/loop/.cvsignore, src/vm/jit/m68k/.cvsignore, src/vm/jit/m68k/linux/.cvsignore, src/vm/jit/mips/.cvsignore, src/vm/jit/mips/irix/.cvsignore, src/vm/jit/mips/linux/.cvsignore, src/vm/jit/optimizing/.cvsignore, src/vm/jit/parisc/.cvsignore, src/vm/jit/parisc/linux/.cvsignore, src/vm/jit/powerpc/.cvsignore, src/vm/jit/powerpc/darwin/.cvsignore, src/vm/jit/powerpc/linux/.cvsignore, src/vm/jit/powerpc/netbsd/.cvsignore, src/vm/jit/powerpc64/.cvsignore, src/vm/jit/powerpc64/linux/.cvsignore, src/vm/jit/s390/.cvsignore, src/vm/jit/schedule/.cvsignore, src/vm/jit/sparc64/.cvsignore, src/vm/jit/sparc64/linux/.cvsignore, src/vm/jit/sparc64/solaris/.cvsignore, src/vm/jit/tools/.cvsignore, src/vm/jit/verify/.cvsignore, src/vm/jit/x86_64/.cvsignore, src/vm/jit/x86_64/freebsd/.cvsignore, src/vm/jit/x86_64/linux/.cvsignore, src/vmcore/.cvsignore, tests/.cvsignore, tests/regression/.cvsignore, tests/regression/codepatching/.cvsignore, tests/regression/jasmin/.cvsignore, tests/regression/native/.cvsignore, tests/stack/.cvsignore: Removed. 2007-04-23 23:39 twisti * .cvsignore: Removed. 2007-04-23 23:03 twisti * configure.ac: Removed --enable-threads checks and call instead AC_CHECK_ENABLE_THREADS. * m4/threads.m4: New file. 2007-04-23 20:04 twisti * configure.ac: Removed all classpath related checks and made functions for them. * m4/classpath.m4: New file. 2007-04-23 20:03 twisti * src/vm/builtin.h (md-abi.h): Added. 2007-04-23 14:29 twisti * src/vm/signal.c (signal_thread): Don't check for an error on sigwait (revisit this patch with the exact-GC). 2007-04-22 20:02 tbfg * src/vm/jit/m68k/linux/md-os.c (md_signal_handler_sigsegv): Implemented. (md_signal_handler_sigill): More exceptions handled. Some fixes. * src/vm/jit/m68k/linux/md-os.h (M68K_EXCEPTION_HARDWARE_NULLPOINTER): Used instead of EXCEPTION_HARDWARE_NULLPOINTER, because a trap with value #0 will not be taken. * src/vm/jit/m68k/emit.c (emit_load_[low|high]): Fixed assertion. (emit_arrayindexoutofbounds_check): Implemented. (emit_nullpointer_check): Implemented. (emit_exception_check_ireg): Renamed emit_exception_check. (emit_exception_check_areg): Disabled code. (emit_exception_check): Implemented. * src/vm/jit/m68k/codegen.c (ICMD_LALOAD): Implemented. (ICMD_FALOAD): Implemented. (ICMD_DALOAD): Implemented. (ICMD_LASTORE): Implemented. (ICMD_FASTORE): Implemented. (ICMD_DASTORE): Implemented. (ICMD_BUILTIN): Exception check enabled. (ICMD_MULTIANEWARRAY): Implemented. (codegen_emit_stub_native): Exception check implemented. * src/vm/jit/m68k/asmpart.S (asm_handle_nat_exception): Symbol exported and implemented. * src/vm/jit/stacktrace.c (stacktrace_create_extern_stackframe): More m68k fixes. 2007-04-22 15:55 ajordan * src/vm/jit/sparc64/arch.h: Properly activated all FP features SPARC64 supports in hardware. * src/vm/jit/sparc64/asmpart.S: Added functions to read/write the FP state register. * src/vm/jit/sparc64/md.c: Added prototypes here. * src/vm/jit/sparc64/codegen.h: Added 'branch on FP condition codes' macros. * src/vm/jit/sparc64/emit.c (emit_verbosecall_enter): Fixed FP argument passing. * src/vm/jit/sparc64/codegen.c (codegen_emit): Fixed FP conversion functions to (a) use unique slots in the data segment (doh!), (b) catch the case where NaN is converted to an integer value. (JVMS and SPARC do not inherently agree here). 2007-04-21 18:56 edwin * tests/regression/resolving/Makefile.am: Added "-classpath ." to javac options so the tests work with ecj out-of-the-box. 2007-04-21 16:42 edwin * configure.ac: Generate vmlog Makefiles. * contrib/Makefile.am: Added vmlog to SUBDIRS. * contrib/vmlog/Makefile.am, contrib/vmlog/t/Makefile.am: New files. 2007-04-21 16:26 edwin * contrib/vmlog/Makefile: Renamed to maintain.mk. 2007-04-21 12:48 edwin * contrib/vmlog/vmlog_cacao.patch: Removed. It is no longer needed. * contrib/vmlog/README: Updated for CACAO's --enable-vmlog. 2007-04-21 12:37 edwin * configure.ac (--enable-vmlog): New configure option. * src/vm/jit/Makefile.am, src/vm/Makefile.am, src/threads/native/Makefile.am (AM_CPPFLAGS): Added -I for vmlog includes. 2007-04-21 10:55 edwin * src/vm/jit/replace.c, src/vm/jit/intrp/asmpart.c, src/vm/jit/codegen-common.c, src/vm/builtin.c, src/vm/exceptions.c, src/vm/vm.c, src/threads/native/lock.c (ENABLE_VMLOG): Applied the vmlog patch and wrapped all inserted code with #if defined(ENABLE_VMLOG). 2007-04-20 13:51 twisti * src/toolbox/list.h (list_t): Added size. * src/toolbox/list.c (list_create): Initialize size. (list_create_dump): Likewise. (list_add_first): Increase size. (list_add_last_unsynced): Likewise. (list_add_before): Likewise. (list_remove_unsynced): Decrease size. 2007-04-20 13:28 twisti * src/toolbox/list.h (listnode): Renamed to listnode_t. (list): Renamed to list_t. * src/toolbox/list.c, src/vm/jit/codegen-common.c, src/vm/jit/codegen-common.h, src/vm/jit/emit-common.c, src/vm/jit/optimizing/profile.c, src/vm/jit/optimizing/recompile.c, src/vm/jit/optimizing/recompile.h, src/vm/properties.c, src/vmcore/class.c, src/vmcore/class.h, src/vmcore/suck.c, src/vmcore/suck.h: Likewise. 2007-04-20 13:09 twisti * src/vm/vm.c: Changed header order to prevent a warning. 2007-04-20 13:06 twisti * src/native/vm/cldc1.1/com_sun_cldchi_jvm_JVM.c (loadLibrary): Fixed string-internal warnings. * src/native/vm/cldc1.1/java_lang_System.c (getProperty0): Likewise. 2007-04-20 12:53 twisti * src/vm/vm.c (version): Print libjvm.so path. 2007-04-20 12:48 twisti * src/vm/vm.c (vm_create): Print unknown -verbose option. 2007-04-20 12:40 twisti * src/vm/jit/codegen-common.c (codegen_finish_native_call): #ifdef lrt and plrt. Don't set lrt, we don't need it. 2007-04-20 11:21 twisti * src/threads/threads-common.h (native/jni.h): Added. 2007-04-19 21:31 twisti * src/vm/signal.c (signal_thread): Check return value of sig* functions. 2007-04-19 19:59 twisti * tests/regression/resolving/Makefile.am (check): Added missing JAVAFLAGS. 2007-04-19 19:58 twisti * configure.ac (AC_INIT): Changed version to 0.98rc. 2007-04-19 19:44 twisti * src/vm/exceptions.h: Added a comment about the hardware-exception assert in signal_init. 2007-04-19 19:43 twisti * src/vm/signal.c (assert.h): Added. (vm/exceptions.h): Likewise. [ENABLE_STATISTICS] (vmcore/statistics.h): Likewise. (signal_init): Added hardware-exception assert. 2007-04-19 19:41 twisti * src/cacaoh/dummy.c (exceptions_print_current_exception): Added abort. (exceptions_throw_outofmemoryerror): Removed. (exceptions_throw_illegalaccessexception): Likewise. 2007-04-19 19:39 twisti * src/vm/jit/powerpc/darwin/md-abi.h (REG_FA0, REG_FA1): Added. (REG_A0_A1_PACKED, REG_A2_A3_PACKED): Likewise. * src/vm/jit/powerpc/darwin/md-os.c [ENABLE_THREADS] (threads/native/threads.h): Added. (md_signal_handler_sigsegv): Changed for hardware-exceptions. (md_signal_handler_sigtrap): New function. * src/vm/jit/powerpc/darwin/md-abi.c (vm/descriptor.h): Changed to vmcore/descriptor.h. (regs): Renamed to abi_registers_integer_name. (abi_registers_integer_argument): Added. (abi_registers_integer_saved): Likewise. (abi_registers_integer_temporary): Likewise. (abi_registers_float_argument): Likewise. (abi_registers_float_saved): Likewise. (abi_registers_float_temporary): Likewise. (md_param_alloc): Use new register arrays. (md_param_alloc_native): New function. 2007-04-19 15:01 tbfg * src/vm/jit/m68k/linux/md-abi.c (abi_registers_integer_saved): Fixed. (abi_registers_float_saved): Fixed. * src/vm/jit/m68k/emit.c (emit_classcast_check): Fixed. * src/vm/jit/m68k/codegen.c (codegen_emit): Temporary hacked a field for saved adr registers until real patch will be done. (ICMD_INSTANCEOF): Fixed. (ICMD_CHECKCAST): Fixed. (codegen_emit_stub_compiler): Removed useless code. * src/vm/jit/m68k/asmpart.S (L_asm_handle_exception_not_catched): Implemented. * src/vm/jit/m68k/codegen.h (M_BLS): Added. 2007-04-19 12:19 michi * src/vm/jit/arm/asmpart.S (asm_patcher_wrapper): Use long branch construct for exception handling here. This fixes a crash in the following jasmin regression testcase: jasmin/test_verify_fail_areturn_wrong_reftype. 2007-04-19 09:19 twisti * src/threads/threads-common.c (threads_start_javathread) [ENABLE_JAVASE]: Check for daemon thread and set the flag. 2007-04-19 09:18 twisti * src/threads/native/threads.c (threads_start_javathread): Removed. (threads_detach_thread): Added some comments. * src/threads/native/threads.h (threads_start_javathread): Removed. * src/threads/threads-common.c (assert.h): Added. [ENABLE_STATISTICS] (vmcore/options.h, vmcore/statistics.h): Added. (threads_start_javathread): Added. * src/threads/threads-common.h (vm/global.h): Added. (native/include/java_lang_Thread.h): Likewise. (threads_start_javathread): Likewise. 2007-04-18 21:04 ajordan * src/vm/jit/sparc64/emit.c: Migrated to abi_registers_{integer,float}_argument. * src/vm/jit/sparc64/codegen.c: Likewise. * src/vm/jit/sparc64/md-abi.c: Likewise. 2007-04-18 15:31 michi * src/vm/jit/powerpc64/linux/Makefile.am (AM_CPPFLAGS): Added -I$(top_builddir)/src. 2007-04-18 14:49 tbfg * src/vm/jit/powerpc64/codegen.c (sign_ext): Removed from ICMD_INEG, ICMD_IDIV, ICMD_IREM, ICMD_IMUL, ICMD_IAND and ICMD_IOR to save the if runtime costs. (ICMD_IUSHR): Needs sign extension for 0 bit shift case. 2007-04-18 14:11 twisti * src/threads/native/threads.c (mutex_join, cond_join): Added. (threads_init_threadobject): Don't initalize join-mutex and cond. (threads_preinit): Initialize mutex_join and cond_join. (threads_startup_thread): Added vm_abort. (threads_detach_thread): Don't reset thread id and use global mutex and condition. (threads_find_non_daemon_thread): Lock thread list. (threads_join_all_threads): Use global mutex and condition. * src/threads/native/threads.h (threadobject): Removed joinmutex and joincond. 2007-04-18 09:59 twisti * src/native/vm/java_lang_ClassLoader.c [ENABLE_STATISTICS] (vmcore/statistics.h): Added. 2007-04-17 23:18 twisti * src/vm/jit/emit-common.h (emit_copy): Changed signature. * src/vm/jit/alpha/codegen.c, src/vm/jit/alpha/emit.c, src/vm/jit/arm/codegen.c, src/vm/jit/arm/emit.c, src/vm/jit/i386/codegen.c, src/vm/jit/i386/emit.c, src/vm/jit/m68k/codegen.c, src/vm/jit/m68k/emit.c, src/vm/jit/mips/codegen.c, src/vm/jit/mips/emit.c, src/vm/jit/powerpc/codegen.c, src/vm/jit/powerpc/emit.c, src/vm/jit/powerpc64/codegen.c, src/vm/jit/powerpc64/emit.c, src/vm/jit/s390/codegen.c, src/vm/jit/s390/emit.c, src/vm/jit/sparc64/codegen.c, src/vm/jit/sparc64/emit.c, src/vm/jit/x86_64/codegen.c, src/vm/jit/x86_64/emit.c: Likewise. 2007-04-17 22:55 twisti * src/vm/jit/m68k/emit.c: boilerplate added. 2007-04-17 22:50 twisti * src/vm/jit/m68k/codegen.c: Boilerplate added. 2007-04-17 22:06 twisti * src/vm/jit/alpha/codegen.c (codegen_emit): Fixed bug in float-argument passing. 2007-04-17 21:37 twisti * tests/regression/resolving/Makefile.am (check): Use LD_LIBRARY_PATH for JAVA. 2007-04-17 21:30 edwin * src/vm/jit/stack.c (stack_init_javalocals): Use "type" as variable for the type. (stack_analyse): Likewise. 2007-04-17 21:25 edwin * src/vm/jit/stack.c (stack_analyse): Do not abuse poor "i" for types, use a separate variable for that. 2007-04-17 21:11 edwin * src/vm/jit/stack.c (stack_reanalyse_block, stack_analyse): Renamed variable "j" to a more obvious "varindex". 2007-04-17 21:01 edwin * src/vm/jit/verify/typecheck.c: More variable renaming for clarity. 2007-04-17 20:59 twisti * src/vm/builtintable.inc (builtintable_function) [ENABLE_JIT]: We need the entries only for JIT. 2007-04-17 20:54 twisti * tests/regression/jasmin/Makefile.am (check): Set LD_LIBRARY_PATH. 2007-04-17 20:53 edwin * src/vm/jit/stack.c, src/vm/jit/verify/typecheck-common.c, src/vm/jit/verify/typeinfo.c, src/vm/jit/inline/inline.c, src/vm/jit/allocator/simplereg.c: Clarification: Renamed variables that are indices into jd->var to "varindex". Renamed variables that are bytecode variable indices to "javaindex". 2007-04-17 20:37 edwin * src/vm/jit/stack.c, src/vm/jit/show.c, src/vm/jit/inline/inline.c, src/vm/jit/replace.c, src/vm/jit/jit.h: Fix and use the new macros for calculating javalocals values representing returnAddresses. 2007-04-17 20:30 edwin * src/vm/jit/jit.h (basicblock): Document the javalocal array. (JAVALOCAL_FROM_RETADDR): New macro. (RETADDR_FROM_JAVALOCAL): Likewise. 2007-04-17 20:25 twisti * src/threads/native/threads.c (threads_init): Fixed string-internal warnings. (threads_attach_current_thread): Likewise. 2007-04-17 20:17 twisti * src/threads/threads-common.c (threads_print_stacktrace): Renamed to threads_thread_print_stacktrace. (threads_print_stacktrace): New function. (threads_dump): Use threads_thread_print_stacktrace. * src/threads/threads-common.h: Likewise. * src/vm/jit/codegen-common.c (codegen_get_pv_from_pc): Use new threads_print_stacktrace. 2007-04-17 20:06 edwin * src/vm/jit/jit.h (jitdata): Cleaned up comments for local_map. 2007-04-17 19:57 edwin * src/vm/jit/stack.c (stack_javalocals_store): Added an assert. 2007-04-17 19:24 edwin * src/vm/jit/stack.c (stack_analyse): The javalocals array can have negative values != UNUSED (these values < UNUSED represent returnAddresses of local subroutines). Thus >= 0 must be used to check for normal indices. 2007-04-17 18:47 edwin * src/vm/jit/parse.c (parse): Small cleanup of local variable renaming. (No code changes.) 2007-04-17 11:15 twisti * src/vm/jit/x86_64/codegen.c (codegen_emit_stub_native): Use simpler code to save and restore argument registers. 2007-04-16 22:56 twisti * src/vm/jit/x86_64/codegen.c (codegen_emit): Made argument passing cleaner. 2007-04-16 22:24 twisti * src/vm/jit/codegen-common.c (codegen_setup): Removed maxstack stuff. * src/vm/jit/codegen-common.h (codegendata): Likewise. * src/vm/jit/inline/inline.c: Fixed includes. (inline_jit_compile): Removed maxstack stuff. (inline_transform): Removed basicblockindex. 2007-04-16 21:09 twisti * src/vm/jit/Makefile.am (DIST_SUBDIRS): Added m68k. * src/mm/cacao-gc/Makefile.am (libgc_la_SOURCES): Removed heap.c. 2007-04-16 21:07 twisti * src/vm/jit/powerpc64/linux/md-abi.c: Argument register changes ported (rev7713). * src/vm/jit/powerpc64/emit.c: Likewise. * src/vm/jit/powerpc64/codegen.c: Likewise. 2007-04-16 15:57 twisti * src/native/jni.c (_Jv_JNI_DefineClass): Fixed string-internal warnings. (_Jv_JNI_NewStringUTF): Likewise. (_Jv_JNI_GetStringUTFChars): Likewise. 2007-04-16 15:53 twisti * src/native/vm/java_lang_Class.c (forName): Fixed string-internal warnings. (getDeclaredFields): Likewise. (getDeclaredMethods): Likewise. (getEnclosingMethod): Likewise. (getClassSignature): Likewise. 2007-04-16 15:49 twisti * src/native/vm/java_lang_ClassLoader.c (defineClass): Fixed string-internal warnings. * src/native/vm/java_lang_Runtime.c (loadLibrary): Likewise. * src/native/vm/gnu/java_lang_reflect_Field.c (getSignature): Likewise. * src/native/vm/gnu/java_lang_reflect_Constructor.c (getSignature): Likewise. * src/native/vm/gnu/java_lang_VMThrowable.c (getStackTrace): Likewise. 2007-04-16 15:29 twisti * src/native/vm/gnu/java_lang_reflect_Method.c (getSignature): Fixed string-internal warnings. 2007-04-16 15:26 twisti * src/native/vm/gnu/java_lang_VMRuntime.c (mapLibraryName): Fixed string-internal warnings. 2007-04-16 15:23 twisti * src/native/vm/gnu/java_lang_VMClassLoader.c (loadClass): Fixed string-internal warnings. (nativeGetResources): Likewise. (findLoadedClass): Likewise. 2007-04-16 14:29 twisti * src/vmcore/utf8.c (utf_get_number_of_u2s): Return 0 instead of NULL. 2007-04-16 14:28 twisti * src/threads/threads-common.c (native/include/java_lang_String.h): Added. (threads_create_thread): Fixed string-internal warnings. (threads_dump): Likewise. 2007-04-16 14:11 twisti * src/vm/builtin.c (builtin_print_argument): Removed java_lang_String until we know what we do with strings internally (more patches to come). 2007-04-15 21:49 twisti * src/vm/jit/reg.c (reg_setup): Removed arg{int,flt}regs stuff. * src/vm/jit/reg.h (registerdata): Removed arg{int,flt}regs. * src/vm/jit/stack.c (stack_analyse): regoff now contains the register number instead of an offset. * src/vm/jit/allocator/simplereg.c: Use abi_registers_{integer,float}_argument instead of arg{int,flt}regs. * src/vm/jit/alpha/codegen.c, src/vm/jit/alpha/emit.c, src/vm/jit/alpha/md-abi.c, src/vm/jit/arm/codegen.c, src/vm/jit/arm/emit.c, src/vm/jit/arm/md-abi.c, src/vm/jit/arm/md-abi.h, src/vm/jit/i386/codegen.c, src/vm/jit/i386/md-abi.c, src/vm/jit/mips/codegen.c, src/vm/jit/mips/emit.c, src/vm/jit/mips/md-abi.c, src/vm/jit/powerpc/codegen.c, src/vm/jit/powerpc/emit.c, src/vm/jit/powerpc/linux/md-abi.c, src/vm/jit/powerpc/linux/md-abi.h, src/vm/jit/x86_64/codegen.c, src/vm/jit/x86_64/emit.c, src/vm/jit/x86_64/md-abi.c: A lot of changes like the ones above. 2007-04-15 21:13 twisti * src/vm/jit/mips/emit.c (emit_load): Bugfix: Added missing float instruction. (emit_store): Likewise. 2007-04-15 12:17 michi * src/vm/jit/i386/md-abi.c (abi_registers_integer_argument): Fixed. 2007-04-15 12:15 michi * src/vm/jit/i386/md-abi.c (abi_registers_integer_argument): Added. (abi_registers_integer_saved): Likewise. (abi_registers_integer_temporary): Likewise. 2007-04-15 11:55 michi * src/vm/jit/i386/codegen.c (codegen_emit_stub_native): Fixed calculation of stackframesize. 2007-04-15 11:37 twisti * tests/regression/resolving/Makefile.am: Added GNU header and fixed srcdir != builddir. * tests/regression/resolving/classes1/Makefile.am: Likewise. * tests/regression/resolving/classes2/Makefile.am: Likewise. * tests/regression/resolving/classes3/Makefile.am: Likewise. 2007-04-13 11:48 twisti * src/vm/jit/mips/codegen.c (codegen_emit): ICMD_LDIV, ICMD_LREM: Use REG_Ax_Ax_PACKED defines. 2007-04-13 10:42 twisti * src/vm/jit/mips/md-abi.c (md_param_alloc): Code beautified. 2007-04-13 10:12 twisti * src/cacao/cacao.c (main): Save the error message of the first lt_dlopenext and print it too when the second fails (thanks Dalibor). Although there's still a problem, when the first fails for some reason and the second picks up and old installed one silently. 2007-04-12 19:49 twisti * src/vm/jit/stack.c (stack_analyse): Removed USEBUILTINTABLE, always check for automatic-builtins (compile this is not affected). * src/vm/jit/alpha/arch.h, src/vm/jit/arm/arch.h, src/vm/jit/i386/arch.h, src/vm/jit/m68k/arch.h, src/vm/jit/mips/arch.h, src/vm/jit/powerpc/arch.h, src/vm/jit/powerpc64/arch.h, src/vm/jit/s390/arch.h, src/vm/jit/sparc64/arch.h, src/vm/jit/x86_64/arch.h (USEBUILTINTABLE): Removed. 2007-04-12 15:35 tbfg * src/vm/jit/powerpc64/emit.c (emit_patcher_stubs): Removed dead code. * src/vm/jit/powerpc64/codegen.c (ICMD_ISUB): Fixed evil bug. (ICMD_LSHR): Fixed a bug. (createnativestub): Use emit_patcher_stub. * src/vm/jit/powerpc64/patcher.c (patcher_resolve_native): Fixed. 2007-04-12 14:47 twisti * src/vm/jit/codegen-common.c (codegen_createnativestub): Renamed to codegen_generate_stub_native and call codegen_finish. * src/vm/jit/codegen-common.h (codegen_createnativestub): Removed. (codegen_generate_stub_native): Added. * src/vm/jit_interface.h: Likewise. * src/cacaoh/dummy.c: Likewise. * src/vmcore/loader.c (load_newly_created_array): Renamed codegen_createnativestub to codegen_generate_stub_native and changed signature. * src/vm/jit/jit.c (jit_compile_intern): Likewise. * src/vm/jit/arm/codegen.c, src/vm/jit/powerpc/codegen.c, src/vm/jit/sparc64/codegen.c, src/vm/jit/alpha/codegen.c, src/vm/jit/s390/codegen.c, src/vm/jit/mips/codegen.c, src/vm/jit/m68k/codegen.c, src/vm/jit/powerpc64/codegen.c, src/vm/jit/i386/codegen.c, src/vm/jit/x86_64/codegen.c (createnativestub): Renamed to codegen_emit_stub_native and changed signature, don't call codegen_finish. 2007-04-12 12:45 twisti * src/vm/jit/codegen-common.c (codegen_generate_stub_compiler): New function. * src/vm/jit/codegen-common.h (createcompilerstub): Removed. (codegen_generate_stub_compiler): Added. * src/vm/jit_interface.h: Likewise. * src/cacaoh/dummy.c: Likewise. * src/vmcore/linker.c (link_class_intern): Replaced createcompilerstub with codegen_generate_stub_compiler. * src/vm/jit/alpha/codegen.c, src/vm/jit/arm/codegen.c, src/vm/jit/i386/codegen.c, src/vm/jit/m68k/codegen.c, src/vm/jit/mips/codegen.c, src/vm/jit/powerpc/codegen.c, src/vm/jit/powerpc64/codegen.c, src/vm/jit/s390/codegen.c, src/vm/jit/sparc64/codegen.c, src/vm/jit/x86_64/codegen.c (COMPILERSTUB_DATASIZE) (COMPILERSTUB_SIZE): Removed. (createcompilerstub): Renamed to codegen_emit_stub_compiler and changed signature. * src/vm/jit/alpha/codegen.h, src/vm/jit/arm/codegen.h, src/vm/jit/i386/codegen.h, src/vm/jit/m68k/codegen.h, src/vm/jit/mips/codegen.h, src/vm/jit/powerpc/codegen.h, src/vm/jit/powerpc64/codegen.h, src/vm/jit/s390/codegen.h, src/vm/jit/sparc64/codegen.h, src/vm/jit/x86_64/codegen.h (COMPILERSTUB_CODESIZE): Added. 2007-04-12 11:56 twisti * src/vm/jit/arm/linux/md-os.c (mm/memory.h): Removed. [ENABLE_THREADS] (threads/native/threads.h): Added. 2007-04-11 16:39 tbfg * src/vm/jit/powerpc64/arch.h (SUPPORT_LONG_SHIFT): Enabled. * src/vm/jit/powerpc64/codegen.c (ICMD_LSHLCONST): Implemented. (ICMD_LSHRCONST): Likewise. (ICMD_LUSHRCONST): Likewise. (ICMD_LSHL): Likewise. (ICMD_LSHR): Likewise. (ICMD_LUSHR): Likewise. (ICMD_IUSHR): Fixed. (ICMD_IUSHRCONST): Fixed. * src/vm/jit/powerpc64/codegen.h (M_SRL): Use 64bit opcode. (M_SRA): Likewise. (M_SRA_IMM): Likewise. (M_SRL_IMM): Likewise. (M_SSL_IMM): Likewise. (M_SSL): Likewise. (M_CLR_HIGH): Added. 2007-04-11 08:21 twisti * src/toolbox/logging.c (log_finish): Also print a \n in the log-file. 2007-04-11 08:11 twisti * src/vm/jit/codegen-common.c (codegen_generate): Added re-generating debug message. 2007-04-10 21:37 twisti * src/vm/jit/mips/linux/md-os.c (md_signal_handler_sigsegv): We only need to check the cause for pre glibc-2.5. 2007-04-10 21:24 twisti * src/vm/jit/mips/codegen.c (codegen_emit): Fixed ICMD_IF_Lxx instructions for 64-bit. 2007-04-10 12:22 twisti * src/vm/jit/mips/linux/md-os.c (md_signal_handler_sigsegv): Set val accordingly. 2007-04-10 05:02 pm * src/vm/jit/s390/emit.c, src/vm/jit/s390/md-abi.h, src/vm/jit/s390/codegen.c, src/vm/jit/s390/codegen.h, src/vm/jit/s390/arch.h, src/vm/jit/s390/asmpart.S, src/vm/jit/s390/tests/tests.java.pp: Changed very much. 2007-04-09 21:17 twisti * src/vm/jit/alpha/emit.c (emit_copy): Check src-type, not dst-type. 2007-04-09 17:23 twisti * src/vm/jit/alpha/asmpart.S: Use % instead of @ for progbits as ARM's assembler uses @ as comment character. * src/vm/jit/arm/asmpart.S: Likewise. * src/vm/jit/i386/asmpart.S: Likewise. * src/vm/jit/mips/asmpart.S: Likewise. * src/vm/jit/powerpc/asmpart.S: Likewise. * src/vm/jit/powerpc64/asmpart.S: Likewise. * src/vm/jit/s390/asmpart.S: Likewise. * src/vm/jit/sparc64/asmpart.S: Likewise. * src/vm/jit/x86_64/asmpart.S: Likewise. 2007-04-09 11:51 twisti * src/vm/jit/mips/codegen.h (BRANCH_NOPS): Added long-branches case. * src/vm/jit/mips/emit.c (emit_load): Use switch-case instead of if-else contruct. (emit_store): Likewise. (emit_copy): Likewise. (emit_branch): Implemented conditional long-branches. 2007-04-08 21:14 twisti * src/native/vm/cldc1.1/java_lang_Object.c (notifyAll): Implemented. * src/native/vm/cldc1.1/java_lang_String.c (lastIndexOf__I): Likewise. 2007-04-05 14:23 michi * src/vm/global.h (compiler_lock, compiler_unlock): Removed. * src/cacaoh/dummy.c (compiler_lock, compiler_unlock): Removed. * src/threads/native/threads.c (compiler_lock, compiler_unlock): Removed. * src/vmcore/linker.h (linker_classrenumber_lock): Added. * src/vmcore/linker.c (linker_classrenumber_lock): Added. (linker_compute_subclasses): Uses above lock object instead of compiler_lock. * src/vm/jit/intrp/asmpart.c (intrp_asm_getclassvalues_atomic): Likewise. 2007-04-05 13:22 michi * src/vm/jit/codegen-common.c (codegen_get_pv_from_pc): Inserted ifdef to fix compiler error with disabled threads. 2007-04-05 12:06 twisti * src/vm/exceptions.c (exceptions_throw_nosuchmethoderror) [!ENABLE_JAVASE]: Throw an error. 2007-04-05 11:57 twisti * src/threads/threads-common.c (threads_get_state): Renamed to threads_thread_get_state. (threads_thread_is_alive): New function. * src/threads/threads-common.h: Likewise. * src/native/vm/java_lang_Thread.c (isAlive): New function. (getState): Renamed threads_get_state to threads_thread_get_state. * src/native/vm/java_lang_Thread.h (isAlive): Added. * src/native/vm/cldc1.1/java_lang_Thread.c (isAlive): New function. 2007-04-05 11:39 twisti * src/native/vm/java_lang_Thread.c [ENABLE_THREADS] (threads/native/threads.h): Removed. (threads/threads-common.h): Added. (vm/stringlocal.h): Likewise. (vm/vm.h): Removed. (getState): Implemented. * src/threads/threads-common.c (vm/vm.h): Added. (threads_get_state): New function. (threads_dump): Print thread state. * src/threads/threads-common.h (THREAD_STATE_NEW) (THREAD_STATE_RUNNABLE, THREAD_STATE_BLOCKED, THREAD_STATE_WAITING) (THREAD_STATE_TIMED_WAITING, THREAD_STATE_TERMINATED): Defined. (threads_get_state): Added. * src/threads/native/threads.c (threads_init): Set thread-state. (threads_startup_thread): Likewise. (threads_attach_current_thread): Likewise. (threads_detach_thread): Likewise. (threads_wait_with_timeout): Likewise. * src/threads/native/threads.h (threadobject): Added state field. * src/native/native.c (dummynativetable) [ENABLE_JAVASE]: Added Java_java_lang_VMThread_getState. 2007-04-05 00:14 twisti * src/threads/threads-common.c (threads_print_stacktrace): Removed !ENABLE_THREADS code, since this file is only compiled with ENABLE_THREADS. 2007-04-04 22:29 twisti * src/vm/jit/verify/typecheck-stackbased.c: Use block directly instead of insindex. * src/vm/jit/verify/typecheck-stackbased-gen.inc: Newly generated. 2007-04-04 22:14 twisti * src/vm/jit/parse.c (BYTECODEINDEX_TO_BASICBLOCK): Added. (parsedata_t): Removed instructionstart, added bytecodestart, basicblockstart, bytecodemap, instructionmap. (parse_setup): Allocate new arrays. (parse_bytecodeindex_to_basicblock): New function. (parse_mark_exception_boundaries): Pass parsedata_t. (parse_resolve_exception_table): Likewise. (parse): Completely rewritten so we are able to have basic block boundaries on IR instruction level. We now also resolve basic block pointers in this pass. * src/vm/jit/parse.h (MARK_BASICBLOCK): Pass parsedata_t. (BLOCK_OF): Removed. * src/vm/jit/jit.h (jitdata): Removed basicblockindex. * src/vm/jit/show.c (SHOW_TARGET): Print block instead of insindex. (show_icmd): Likewise. * src/vm/jit/stack.c (BRANCH_TARGET): Directly use block. (stack_analyse): Likewise. * src/vm/jit/verify/icmds.c: Likewise. * src/vm/jit/verify/typecheck-stackbased.c: Likewise. 2007-04-04 14:16 twisti * src/native/vm/gnu/sun_misc_Unsafe.c: Header changes. * src/native/native.c [ENABLE_JAVASE] (native/include/sun_misc_Unsafe.h): Added. [ENABLE_JAVASE] (dummynativetable): Added Java_sun_misc_Unsafe_objectFieldOffset and Java_sun_misc_Unsafe_compareAndSwapInt. 2007-04-03 22:29 twisti * src/vm/jit/alpha/asmpart.S: Replaced __GNU__ with __linux__ for exec-stacks. * src/vm/jit/arm/asmpart.S: Likewise. * src/vm/jit/i386/asmpart.S: Likewise. * src/vm/jit/mips/asmpart.S: Likewise. * src/vm/jit/powerpc/asmpart.S: Likewise. * src/vm/jit/powerpc64/asmpart.S: Likewise. * src/vm/jit/s390/asmpart.S: Likewise. * src/vm/jit/sparc64/asmpart.S: Likewise. * src/vm/jit/x86_64/asmpart.S: Likewise. 2007-04-03 21:30 twisti * src/vm/jit/i386/linux/md-os.c (threads/threads-common.h): Added. 2007-04-03 18:02 twisti * src/vm/jit/mips/md-abi.h (REG_FA0, REG_FA1, REG_FA2): Defined. 2007-04-03 16:06 twisti * src/threads/threads-common.c (threads_print_stacktrace): Pass stackframeinfo to stacktrace_create. * src/vm/jit/codegen-common.c (threads/native/threads.h): Removed. (threads/threads-common.h): Added. (codegen_get_pv_from_pc): Replaced stacktrace_dump_trace with threads_print_stacktrace. * src/vm/jit/stacktrace.h (stacktrace_print_trace_from_buffer): Added. 2007-04-03 15:51 twisti * src/vm/jit/stacktrace.c (stacktrace_create): Changed signature. (stacktrace_fillInStackTrace): Pass stackframeinfo to stacktrace_create. (stacktrace_getClassContext): Likewise. (stacktrace_getCurrentClass): Likewise. (stacktrace_getStack): Likewise. (stacktrace_dump_trace): Removed. * src/vm/jit/stacktrace.h (threads/native/threads.h) (threads/none/threads.h): Removed. (stacktrace_create): Added. (stacktrace_dump_trace): Removed. * src/threads/native/threads.c (threads_dump): Removed. * src/threads/native/threads.h (threads_dump): Likewise. * src/threads/threads-common.c (vm/jit/stacktrace.h): Added. (threads_dump): Added. (threads_print_stacktrace): Likewise. * src/threads/threads-common.h (threads_dump): Added. (threads_print_stacktrace): Likewise. 2007-04-03 15:29 twisti * src/vm/jit/replace.c (threads/threads-common.h): Added. * src/vm/jit/replace.h: Moved empty defines to the top of the file to see what's happening when !defined(ENABLE_REPLACEMENT). 2007-04-03 15:22 twisti * src/vm/jit/x86_64/linux/md-os.c (md_signal_handler_sigfpe): Use exceptions_new_hardware_exception. * src/vm/exceptions.c (exceptions_fillinstacktrace) [ENABLE_JAVAME_CLDC1_1]: fillInStackTrace has another signature in CLDC-1.1. 2007-04-03 14:34 twisti * src/vm/jit/arm/emit.c (emit_exception_stubs): Removed. * src/vm/jit/arm/md.c (md_codegen_patch_branch): Likewise. (md_stacktrace_get_returnaddress): Removed debug code. 2007-04-03 14:23 twisti * src/threads/native/threads.h (STACKFRAMEINFO): Return stackframeinfo instead of a pointer to it. * src/threads/none/threads.h (STACKFRAMEINFO): Likewise. * src/vm/jit/codegen-common.c (codegen_finish_native_call): STACKFRAMEINFO changes. * src/vm/jit/replace.c (replace_recover_source_state): Likewise. * src/vm/jit/stacktrace.c (stacktrace_create_stackframeinfo): Likewise. (stacktrace_create_extern_stackframeinfo): Likewise. (stacktrace_create_native_stackframeinfo): Likewise. (stacktrace_remove_stackframeinfo): Likewise. 2007-04-03 14:00 twisti * src/vm/jit/stacktrace.c (stacktrace_create_inline_stackframeinfo): Removed. (stacktrace_inline_arithmeticexception): Likewise. (stacktrace_inline_arrayindexoutofboundsexception): Likewise. (stacktrace_inline_arraystoreexception): Likewise. (stacktrace_inline_classcastexception): Likewise. (stacktrace_inline_nullpointerexception): Likewise. (stacktrace_inline_fillInStackTrace): Likewise. (stacktrace_hardware_arithmeticexception): Likewise. (stacktrace_hardware_nullpointerexception): Likewise. * src/vm/jit/stacktrace.h: Likewise. 2007-04-03 13:48 twisti * configure.ac: Added armv4 architecture. 2007-04-03 13:47 twisti * src/vm/jit/arm/linux/md-os.c (md_signal_handler_sigsegv): Use exceptions_new_hardware_exception. [ENABLE_THREADS] (md_signal_handler_sigusr2): New function. 2007-04-03 13:14 twisti * src/vm/jit/i386/linux/md-os.c (md_signal_handler_sigfpe): Use exceptions_new_hardware_exception. 2007-04-03 12:10 twisti * src/vm/jit/jit.h: Includes alpha-sorted. 2007-04-03 11:56 twisti * src/vm/jit/replace.c (native/include/java_lang_String.h): Removed. (java_value_print): Don't cast to java_lang_String. 2007-04-03 11:46 twisti * src/vm/jit/allocator/simplereg.c (simplereg_make_statistics): Fixed compiler warning. 2007-04-03 11:37 twisti * src/vm/jit/x86_64/emit.c (emit_replacement_stubs): Removed unused variable disp. 2007-04-03 11:35 twisti * src/vmcore/statistics.c (statistics_print_memory_usage): Prevent compiler warning on 64-bit machines. 2007-04-02 23:13 michi * src/vm/jit/replace.c: Added include to fix crash on x86_64. 2007-04-02 21:24 twisti * src/vm/jit/alpha/linux/md-os.c [ENABLE_THREADS] (threads/native/threads.h): Added. [ENABLE_THREADS] (md_signal_handler_sigusr2): Added #ifdef. 2007-04-02 20:58 twisti * src/vm/jit/alpha/md-abi.c (abi_registers_integer_argument): Added. (abi_registers_integer_saved): Likewise. (abi_registers_integer_temporary): Likewise. 2007-04-02 20:04 michi * src/vm/jit/stacktrace.c (stacktrace_create): Returns NULL if there is no stacktrace available for the given thread. Fixed comments. 2007-04-02 19:56 twisti * src/vm/jit/x86_64/md-abi.c (abi_registers_integer_argument): Added. (abi_registers_integer_saved): Likewise. (abi_registers_integer_temporary): Likewise. 2007-04-02 19:45 twisti * src/vm/jit/parse.c (parse): JAVA_GOTO_W must be converted to a ICMD_GOTO. 2007-04-02 18:56 twisti * src/vm/jit/jit.h (INS_FLAG_BASICBLOCK): Defined. (INS_FLAG_ID_SHIFT): Changed to 5. (INSTRUCTION_STARTS_BASICBLOCK): Added. * src/vm/jit/parse.c (parse): Changed basic block determination. Now basic blocks can start at IR instruction level. This is required for slow-fast path builtins. 2007-04-02 16:09 twisti * src/vm/jit/stack.c (stack_reach_next_block): Reformatted comments. (stack_analyse): Likewise. 2007-04-02 13:45 twisti * src/vm/jit/stack.c (stack_mark_reached): Added assert on b. (stack_mark_reached_from_outvars): Likewise. (stack_reach_next_block): Use NULL instead of !. (stack_analyse): Indent. 2007-04-01 22:53 ajordan * src/vm/jit/sparc64/codegen.c: Implemented float argument passing for builtin calls. * src/vm/jit/sparc64/codegen.h: Likewise. 2007-04-01 16:18 stefan * src/vm/jit/powerpc/darwin/md-asm.h, src/vm/jit/i386/darwin/md-asm.h: added missing symbol asm_vm_call_method_end. 2007-04-01 10:50 edwin * contrib/vmlog: Committed vmlog 0.0.5. * THIRDPARTY: Added copyright notice for vmlog. 2007-03-30 11:41 twisti * src/vm/jit/parse.c (parse_realloc_instructions): Renamed ipc to icount. (parse): Renamed ipc to icount, set method variables at the very end and use local variables before. * src/vm/jit/parse.h (INSTRUCTIONS_CHECK): Renamed ipc to icount. (PINC): Likewise. (OP_PREPARE_FLAGS): Likewise. 2007-03-29 23:22 twisti * src/vm/jit/powerpc/linux/md-os.c (md_signal_handler_sigsegv): Fixed address check (thanks Michi). 2007-03-29 23:01 ajordan * src/vm/jit/sparc64/codegen.c (codegen_emit): Fixed ICMD_IREMPOW2. Added ICMD_L2F and ICMD_L2D. Fixed constant creation in IF_L* compares. 2007-03-29 21:56 michi * src/mm/nogc.c: Fixed merging conflict which was commited to that file. 2007-03-29 21:37 ajordan * src/vm/jit/sparc64/md.c (md_get_pv_from_pc): Implemented sethi hanlding. * src/vm/jit/sparc64/codegen.c (createnativestub): Fixed window/stack handling in case of exception. * src/vm/jit/sparc64/asmpart.S (asm_call_jit_compiler): Likewise. 2007-03-29 11:04 twisti * src/vm/jit/powerpc/linux/md-os.c (md_signal_handler_sigsegv): Check for addr == NULL in NPE case. 2007-03-29 06:52 pm * src/vm/jit/s390/md-abi.h, src/vm/jit/s390/emit.c, src/vm/jit/s390/emit.h, src/vm/jit/s390/codegen.c, src/vm/jit/s390/codegen.h, src/vm/jit/s390/arch.h: Changed a lot. 2007-03-28 22:59 twisti * src/vm/exceptions.h (exceptionptr): Removed. (_no_threads_exceptionptr): Likewise. 2007-03-28 22:32 twisti * svnmerge uninit. 2007-03-28 22:25 michi * AUTHORS: Added myself to the list of authors (finally). 2007-03-28 21:05 twisti * Merged in twisti-branch. 2007-03-28 20:50 twisti Initialized merge tracking via "svnmerge" with revisions "1-6085" from file:///ahome/cacao/svn/cacao/branches/twisti 2007-03-28 20:28 twisti Initialized merge tracking via "svnmerge" with revisions "1-6086" from svn+ssh://c1.complang.tuwien.ac.at/ahome/cacao/svn/cacao/branches/twisti 2007-03-28 20:22 twisti Initialized merge tracking via "svnmerge" with revisions "1-7592" from svn+ssh://c1.complang.tuwien.ac.at/ahome/cacao/svn/cacao/branches/twisti 2007-03-28 13:29 twisti * src/vm/exceptions.c (throw_exception_exit_intern): Removed. (throw_exception): Likewise. (throw_exception_exit): Likewise. (throw_main_exception): Likewise. (throw_main_exception_exit): Likewise. (throw_cacao_exception_exit): Likewise. (exceptions_print_stacktrace): New function. * src/vm/exceptions.h: Likewise. * src/vm/vm.c (vm_create): Use vm_abort or exceptions_print_stacktrace instead of throw_main_exception_exit. (vm_run): Likewise. (vm_exit): Likewise. (vm_get_mainclass_from_jar): Likewise. * src/threads/native/threads.c (threads_init): Use return instead of throw_exception_exit. (threads_startup_thread): Use vm_abort. 2007-03-26 07:23 pm * src/vm/jit/s390/emit.c, src/vm/jit/s390/md-abi.h, src/vm/jit/s390/md.c, src/vm/jit/s390/emit.h, src/vm/jit/s390/codegen.c, src/vm/jit/s390/codegen.h, src/vm/jit/s390/tests/tests.java.pp, src/vm/jit/s390/patcher.c, src/vm/jit/s390/md-abi.c: Chaned a lot. 2007-03-25 20:30 twisti Reverted patch 7268. * src/vm/jit/code.c: Reverted. * src/vm/jit/code.h: Likewise. * src/vm/jit/jit.c: Likewise. * src/vm/jit/jit.h: Likewise. * src/vmcore/loader.c: Likewise. * src/vmcore/method.h: Likewise. 2007-03-25 18:55 twisti * src/native/native.c (native_get_parametertypes): Removed. (native_get_exceptiontypes): Likewise. * src/native/native.h: Likewise. * src/vmcore/method.c (vm/builtin.h): Added. (vm/resolve.h): Likewise. (method_get_parametertypearray): New function. (method_get_exceptionarray): Likewise. * src/vmcore/method.h (method_get_parametertypearray): Added. (method_get_exceptionarray): Likewise. * src/cacaoh/dummy.c (builtin_anewarray): Added. (resolve_class_from_typedesc): Likewise. * src/native/vm/gnu/java_lang_reflect_Method.c (getParameterTypes): Use method function. (getExceptionTypes): Likewise. * src/native/vm/gnu/java_lang_reflect_Constructor.c (getParameterTypes): Likewise. (getExceptionTypes): Likewise. 2007-03-23 21:33 twisti * src/vm/builtin.c (builtin_isanysubclass): Removed. (builtin_instanceof): Replaced builtin_isanysubclass with class_isanysubclass. (builtin_descriptorscompatible): Likewise. * src/vm/builtin.h (builtin_isanysubclass): Removed. * src/vm/access.c (access_is_accessible_member): Replaced builtin_isanysubclass with class_isanysubclass. * src/native/vm/java_lang_Class.c (isAssignableFrom): Likewise. * src/vm/jit/asmpart.h (castinfo): Removed. * src/vmcore/class.c (vm/jit/asmpart.h): Added. (class_isanysubclass): New function. * src/vmcore/class.h (castinfo): Added. (class_isanysubclass): Likewise. * src/cacaoh/dummy.c (asm_getclassvalues_atomic): New function. (intrp_asm_getclassvalues_atomic): Likewise. 2007-03-23 20:38 twisti * src/vm/builtin.c (builtin_isanysubclass_vftbl): Removed. (builtin_descriptorscompatible): Use builtin_isanysubclass instead of builtin_isanysubclass_vftbl. 2007-03-23 19:10 twisti * src/vm/global.h (ACC_CLASS_PRIMITIVE): Defined. * src/vm/builtin.c (builtin_isanysubclass): Check for primitive classes. * src/vmcore/linker.c (link_primitivetype_table): Set primitive flag. 2007-03-23 18:51 twisti * src/vmcore/classcache.c (classcache_add_constraint) [CLASSCACHE_VERBOSE]: Started to use log-functions. (classcache_debug_dump): Likewise. 2007-03-23 11:56 twisti * src/vm/jit/powerpc/emit.c (emit_load): Use switch-case instead of if-else contruct. (emit_store): Likewise. (emit_copy): Likewise. 2007-03-22 13:55 michi * src/vm/jit/arm/codegen.c (codegen) [!ENABLE_SOFTFLOAT]: Fixed position of soft null pointer checks in PUTFIELD and GETFIELD. 2007-03-21 14:26 twisti * src/vmcore/statistics.c (size_lock_record_pool): Added. (statistics_print_memory_usage): Print new variable. * src/vmcore/statistics.h (size_lock_record_pool): Added. * src/threads/native/lock.c (lock_record_alloc_new_pool): Added statistics. 2007-03-21 13:27 twisti * src/vmcore/statistics.c (size_threadobject, size_lock_hashtable) (size_lock_waiter): Added. (statistics_print_memory_usage): Print new variables. * src/vmcore/statistics.h (size_threadobject, size_lock_hashtable) (size_lock_waiter): Added. * src/threads/native/lock.c (vmcore/options.h): Added. [ENABLE_STATISTICS] (vmcore/statistics.h): Added. (lock_hashtable_init): Added statistics. (lock_hashtable_grow): Likewise. (lock_record_add_waiter): Likewise. (lock_record_remove_waiter): Likewise. * src/threads/native/threads.c [ENABLE_STATISTICS] (vmcore/statistics.h): Added. (threads_preinit): Added statistics. (threads_init): Likewise. (threads_start_javathread): Likewise. (threads_attach_current_thread): Likewise. (threads_detach_thread): Likewise. 2007-03-21 13:19 twisti * src/vmcore/zip.c (zip_get): Don't assign in if-statement, this makes debugging a bit easier. 2007-03-21 13:18 twisti * src/vmcore/linker.c (link_primitivetype_table): Set super class explicitly to NULL. (linker_compute_subclasses): Indent. 2007-03-20 00:25 ajordan * src/vm/jit/sparc64/md-abi.c (md_param_alloc_native): using this for native param allocation. No need for my own version of this anymore. * src/vm/jit/sparc64/codegen.c: Likewise. 2007-03-17 13:12 twisti * src/vm/builtin.h (builtin_isanysubclass_vftbl): Removed, made static. 2007-03-17 13:11 twisti * src/vm/builtin.c (builtin_isanysubclass): Code cleanup. (builtin_isanysubclass_vftbl): Likewise. 2007-03-17 13:10 twisti * src/native/vm/gnu/java_lang_reflect_Method.c (vm/resolve.h): Added. 2007-03-17 12:57 twisti * src/vm/builtin.c (builtin_isanysubclass): Cleanup and comments. 2007-03-16 23:00 pm * src/vm/exceptions.c (exceptions_handle_exception): 31 bit address comparison for S390. These address comparison macros need to be moved to some header. * src/vm/jit/s390/emit.c, src/vm/jit/s390/md.c, src/vm/jit/s390/codegen.c, src/vm/jit/s390/codegen.h, src/vm/jit/s390/arch.h, src/vm/jit/s390/patcher.c, src/vm/jit/s390/md-abi.c, src/vm/jit/s390/tests/tests.java.pp, src/vm/jit/s390/tests/Makefile: Changed a lot. 2007-03-15 09:28 twisti * src/native/jni.c (_Jv_jni_invokeNative): Release memory in exception case. 2007-03-15 08:23 pm * src/vm/jit/s390/tests/tests.java.pp: added INT2CHAR test testing negative values. 2007-03-15 07:07 pm * src/vm/jit/s390/codegen.c, src/vm/jit/s390/codegen.h: Changed a lot. * src/vm/jit/s390/tests, src/vm/jit/s390/tests/tests.java.pp, src/vm/jit/s390/tests/Makefile: Added opcode tests in java. 2007-03-14 21:54 twisti * src/vmcore/statistics.c (size_string): Added. (statistics_print_memory_usage): Likewise. * src/vmcore/statistics.h (size_string): Likewise. * src/vm/string.c (vmcore/statistics.h): Added. (literalstring_u2): Added statistics. 2007-03-14 21:18 twisti * src/vm/jit/alpha/emit.c (emit_load): Use switch-case instead of if-else contruct. (emit_store): Likewise. (emit_copy): Likewise. 2007-03-14 21:16 twisti * src/vm/jit/alpha/md.c (vm/jit/codegen-common.h): Added temporarily. 2007-03-14 17:31 michi * src/vm/jit/arm/codegen.c (codegen): All the long compares have a different implementation now. 2007-03-14 16:44 michi * src/vm/jit/arm/emit.c (emit_verbosecall_enter): Fixed bug with inmemory arguments, which caused some crashes with verbose-calls. 2007-03-14 12:00 michi * src/mm/nogc.c: Fixed includes and exceptions. 2007-03-13 20:31 twisti * src/vm/jit/i386/emit.c (emit_load): Use switch-case instead of if-else contruct. (emit_store): Likewise. (emit_copy): Likewise. * src/vm/jit/i386/codegen.c (codegen): Fixed compiler warning. 2007-03-13 16:32 michi * src/vm/jit/arm/codegen.c (codegen): Long branches are implemented differently now. * src/vm/jit/arm/codegen.h (M_COMPARE): Easier macros without overjumps. (M_MOVEQ_IMM, M_MOVGT_IMM, M_ADDHI_IMM, M_SUBLO_IMM, M_CMPEQ_IMM): New macro. 2007-03-13 13:19 michi * src/vm/jit/arm/linux/Makefile.am: Fixed include path to care about builddir. 2007-03-12 13:34 twisti * src/vm/jit/codegen.c (codegen): Change the operand direction of some macros. Started to implement long-compares differently. * src/vm/jit/codegen.h (M_AND, M_ORR, M_EOR, M_AND_IMM, M_MOVEQ) (M_MOVVS_IMM, M_MOVNE_IMM, M_MOVLT_IMM, M_MOVLS_IMM): Changed operand direction. (M_ORR_S, M_CMPEQ, M_CMPLE): New macro. 2007-03-12 13:17 twisti * src/vm/jit/arm/md.c (vm/jit/codegen-common.h): Added. 2007-03-12 10:11 twisti * src/native/vm/cldc1.1/com_sun_cldc_io_ResourceInputStream.c (vm/vm.h): Added. (open): Call vm_abort. * src/native/vm/cldc1.1/com_sun_cldc_io_j2me_socket_Protocol.c (unistd.h): Added. (readByte): New function. (writeBuf): Likewise. (available0): Likewise. (close0): Likewise. 2007-03-09 21:26 twisti * tests/regression/resolving (svn:ignore): Added. * tests/regression/resolving/classes1: Likewise. * tests/regression/resolving/classes2: Likewise. * tests/regression/resolving/classes3: Likewise. 2007-03-08 02:59 michi * src/threads/native/threads.c (threads_init) [!ENABLE_GC_CACAO]: Fixed bug for lost java.lang.Thread object of mainthread with BoehmGC. * src/native/vm/java_lang_Thread.c: Fixed includes to prevend compiler warnings. 2007-03-07 14:05 twisti * src/vm/jit/mips/md.c (vm/jit/codegen-common.h): Temporarily added. 2007-03-07 13:12 twisti * src/vm/jit/x86_64/emit.c (emit_call_reg): Call emit_rex with size 0. 2007-03-07 12:37 twisti * src/vm/jit/x86_64/asmpart.S (asm_compare_and_swap): New function. (asm_memory_barrier): Likewise. 2007-03-07 11:47 michi * src/threads/native/threads.h (threadobject): This structure is no longer an instance of java.lang.Thread, but contains a reference to it. * src/threads/native/threads.c (threads_start_javathread): Added. * src/threads/threads-common.c: Adapted to above changes. * src/threads/native/threads.c: See above. * src/native/vm/java_lang_Thread.c: See above. 2007-03-07 00:32 ajordan * src/vm/jit/sparc64/md-abi.h: increased number of JIT float argument registers to 5. * src/vm/jit/sparc64/md-asm.h: likewise. * src/vm/jit/sparc64/md-abi.c: likewise. * src/vm/jit/sparc64/asmpart.S: added floating point argument handling in asm_vm_call. 2007-03-06 18:55 ajordan * src/vm/jit/sparc64/emit.c: emit_{load,store,copy} changed to switch/case for handling different types. * src/vm/jit/sparc64/codegen.h: fixed f2d and d2f conversion. * src/vm/jit/sparc64/md-abi.c: removed md_native_reg_setup(), not needed any longer. * src/vm/jit/sparc64/codegen.c: implemented ICMD_MULTIANEWARRAY. fixed FRETURN, DRETURN. repaired native float arg passing. 2007-03-06 17:01 twisti * src/vm/signal.c (arch.h): Added. * src/vm/vm.c (vm_create): Reenabled signal-thread. This only works on NPTL-threads and NOT with linuxthreads! * src/vm/signal.c (signal_init): Reenabled blocking for SIGINT and SIGQUIT. 2007-03-06 11:12 twisti * src/vmcore/statistics.c (vm/jit/code.h): Added for codeinfo. (vmcore/class.h): Added. (vmcore/field.h): Likewise. (vmcore/method.h): Likewise. * src/vm/jit/optimizing/recompile.c (vm/jit/code.h): Likewise. (vm/jit/jit.h): Likewise. * src/vm/jit/x86_64/md.c (vm/jit/codegen-common.h): Likewise. * src/vm/jit/x86_64/md-abi.c (vm/jit/jit.h): Likewise. 2007-03-06 00:27 edwin * src/vm/jit_interface.h: Added Id keyword. 2007-03-06 00:26 edwin * src/vmcore/resolve.c: Moved back to src/vm/resolve.c. * src/vmcore/resolve.h: Moved back to src/vm/resolve.h. * src/vm/jit/code.h (codeinfo): Moved typedef to method.h. (code_get_methodinfo_for_pv): Added prototype. * src/vmcore/method.h (codeinfo): Moved typedef here. * src/vm/jit_interface.h: New file. * src/vm/Makefile.am: Added resolve.[ch] and jit_interface.h. * src/vmcore/Makefile.am: Removed resolve.[ch]. * src/vmcore/class.c: Include "arch.h", but don't include "resolve.h". * src/vmcore/method.c (method_vftbl_lookup): Use code_get_methodinfo_for_pv. * src/vmcore/linker.c (resolve_classref_or_classinfo_eager): Added copy of prototype to avoid bootstrapping issues. * src/cacaoh/dummy.c (code_get_methodinfo_for_pv): New dummy. (resolve_classref_or_classinfo_eager): Simple implementation that does not use resolve.c code. (typeinfo_init_class): Removed dummy. (typeinfo_init_classinfo): Likewise. (typeinfo_is_assignable_to_class): Likewise. (typeinfo_print): Likewise. * many other files: Changed #include "vmcore/resolve.h" to "vm/resolve.h". 2007-03-06 00:02 edwin * src/vmcore/linker.c (link_class_intern): Use resolve_classref_or_classinfo_eager. 2007-03-05 23:56 edwin * src/cacaoh/headers.c: Don't include asmpart.h. 2007-03-05 23:50 edwin * src/native/native.c (native_get_exceptiontypes): Use resolve_classref_or_classinfo_eager. 2007-03-05 17:44 edwin * src/native/vm/java_lang_Class.c (_Jv_java_lang_Class_getSuperclass), (_Jv_java_lang_Class_getDeclaringClass) (_Jv_java_lang_Class_getDeclaredClasses): Use resolve_classref_or_classinfo_eager. 2007-03-05 17:34 edwin * src/vm/builtin.h (builtintable_replace_function): Don't use instruction * to avoid bootstrapping problems. * src/vm/builtin.c (builtintable_replace_function): Likewise. 2007-03-05 17:32 edwin * src/vm/jit/code.c (code_get_methodinfo_from_pv): New function. 2007-03-05 16:53 edwin * src/vmcore/resolve.h, src/vmcore/resolve.c (resolve_classref_or_classinfo_eager): New function. 2007-03-05 08:38 pm * src/vm/jit/s390/md-abi.h, src/vm/jit/s390/emit.c, src/vm/jit/s390/emit.h, src/vm/jit/s390/codegen.c, src/vm/jit/s390/codegen.h, src/vm/jit/s390/patcher.c: Changed a lot. 2007-03-04 20:10 edwin * src/vm/jit/replace.c: Handle countdown traps. Request optimization of hot methods and their callers. * src/vm/jit/jit.c (jit_compile): Set JITDATA_FLAG_COUNTDOWN for inlining. (jit_recompile): Set JITDATA_FLAG_INLINE for inlining. 2007-03-04 19:13 edwin * src/vmcore/options.h, src/vmcore/options.c, src/vmcore/method.c, src/vmcore/linker.c: Replayed lost parts of commit 7228. * src/vm/jit/intrp/intrp.h: Added missing #include to make it compile. * src/vm/jit/inline/inline.c: Fixed names of vmcore/ #include files. 2007-03-04 18:07 twisti * src/vm/jit/x86_64/emit.c (emit_load): Use switch-case instead of if-else contruct. (emit_store): Likewise. (emit_copy): Likewise. 2007-03-04 14:46 edwin * src/vm/jit/i386/codegen.c (codegen): Emit code for countdown traps. * src/vm/jit/i386/emit.c (emit_replacement_stubs): Add jump reference for countdown traps. 2007-03-04 14:22 edwin * src/vmcore/method.h (methodinfo): Added hitcountdown field. (Only if ENABLE_REPLACEMENT). * src/vmcore/loader.c (loader_load_method): Initialize hitcountdown field. 2007-03-04 14:02 edwin * src/vm/jit/inline/inline.c: Committed breadth-first inlining code. 2007-03-04 12:32 edwin * tests/regression/resolving/test_return_subtype_ok.java: New test. * tests/regression/resolving/Makefile.am: Added new test. 2007-03-04 12:28 edwin * tests/regression/resolving/test_return_subtype_violated.java: New test. * tests/regression/resolving/Makefile.am: Added new test. 2007-03-02 23:28 pm * src/vm/jit/s390/emit.c, src/vm/jit/s390/codegen.c, src/vm/jit/s390/codegen.h, src/vm/jit/s390/md-asm.h, src/vm/jit/s390/patcher.c, src/vm/jit/s390/asmpart.S: Changed a lot in S390 codegen. 2007-03-02 19:45 edwin * src/vmcore/classcache.c: Print debug messages to stdout. 2007-03-02 19:44 edwin * configure.ac: Added Makefiles of resolving test suite. 2007-03-02 19:42 edwin * tests/regression/resolving: Added resolving test suite. These tests check lazy loading, classloader handling, loading & subtype constraints. 2007-03-01 13:49 edwin * src/vmcore/resolve.h, src/vmcore/resolve.c (resolve_class_eager_no_access_check): New function. * src/vm/jit/powerpc/patcher.c: Use resolve_class_eager_no_access_check. * src/vm/jit/arm/patcher.c: Likewise. * src/vm/jit/sparc64/patcher.c: Likewise. * src/vm/jit/alpha/patcher.c: Likewise. * src/vm/jit/s390/patcher.c: Likewise. * src/vm/jit/mips/patcher.c: Likewise. * src/vm/jit/powerpc64/patcher.c: Likewise. * src/vm/jit/i386/patcher.c: Likewise. * src/vm/jit/x86_64/patcher.c: Likewise. 2007-03-01 12:39 twisti * src/native/vm/Makefile.am [ENABLE_JAVASE] (CLASSLOADER_SOURCES): Added. (libnativevm_la_SOURCES): Use CLASSLOADER_SOURCES. * src/native/vm/java_lang_ClassLoader.c (native/jni.h): Added. 2007-03-01 12:32 edwin * src/vmcore/resolve.c (resolve_classref_or_classinfo): Always use refmethod->class as the referring class, if it is available. 2007-02-28 23:57 twisti * src/vmcore/classcache.c (toolbox/logging.h): Added. (classcache_merge_class_entries): Replace log_text with log_println. (classcache_store): Likewise. (classcache_store_defined): Likewise. 2007-02-28 23:39 twisti * src/cacaoh/dummy.c (typeinfo_print): Added. 2007-02-28 23:27 edwin * src/vm/jit/verify/typecheck.c (handle_basic_block): Move the printing of the block to a point where jd->var is already valid. 2007-02-28 23:20 edwin * src/vm/jit/stack.c (stack_analyse): Minor STACK_VERBOSE improvements. 2007-02-28 22:50 edwin * tests/regression/jasmin/test_verify_ok_local_as_retaddr_and_reference.j: New test. * tests/regression/jasmin/Makefile.am: Added new test. 2007-02-28 22:31 twisti * src/vm/vm.c (vm_create): Changed initialization order. Call properties_postinit later, since it puts a pointer to _Jv_bootclasspath into the properties list. 2007-02-28 22:30 edwin * src/vm/jit/stack.c (stack_analyse): Fix: reset TYPE_VOID to TYPE_ADR at the end of stack_analyse. 2007-02-28 22:00 twisti * src/vm/access.h (access_check_caller): Renamed to access_check_member. 2007-02-28 20:07 twisti * src/vm/access.c (access_check_caller): Renamed to access_check_member. Don't call access_is_accessible_class, this is wrong. * src/native/vm/gnu/java_lang_reflect_Constructor.c (constructNative): Use access_check_member. * src/native/vm/gnu/java_lang_reflect_Field.c (CHECKFIELDACCESS): Removed. (cacao_get_field_address): Use access_check_member. * src/native/vm/gnu/java_lang_reflect_Method.c (invokeNative): Likewise. 2007-02-28 13:25 twisti * src/native/vm/java_lang_ClassLoader.c (vm/stringlocal.h): Added. 2007-02-28 13:23 twisti * src/native/vm/java_lang_ClassLoader.c (defineClass): Added loader-variable for convenience. 2007-02-28 07:22 pm * src/vm/jit/s390/codegen.c (codegen): Added ICMD_AASTORE. * src/vm/jit/s390/asmpart.S (asm_patcher_wrapper): Added exception handler. * src/vm/jit/s390/asmpart.S (asm_call_jit_compiler): Likewise. 2007-02-27 21:13 twisti * src/vm/jit/sparc64/solaris: Set ignore-properties. 2007-02-27 02:07 ajordan * configure.ac: added solaris specific stuff: arch defines, libintl dependency and solaris subdir makefile. * src/vm/jit/stacktrace.h: declared SPARC specific functions. * src/vm/jit/sparc64/emit.c: fixed call to builtin_verbosecall_exit. * src/vm/jit/sparc64/solaris/md-os.c: signal handling disabled, can't test right now. 2007-02-26 22:11 twisti * src/native/vm/java_lang_ClassLoader.c: New file. * src/native/vm/java_lang_ClassLoader.h: Likewise. * src/native/vm/gnu/java_lang_VMClassLoader.c (native/vm/java_lang_ClassLoader.h): Added. (defineClass): Removed code and call _Jv_java_lang_ClassLoader_defineClass. * src/native/vm/Makefile.am (libnativevm_la_SOURCES): Added java_lang_ClassLoader.[ch]. * src/native/jni.c [ENABLE_JAVASE] (native/vm/java_lang_ClassLoader.h): Added. (_Jv_JNI_DefineClass): Removed env and NULL arguments. 2007-02-25 22:34 pm * src/vm/jit/s390/codegen.c (codegen): Fixed ICMD_IF_ACMPNE * src/vm/jit/s390/asmpart.S (asm_call_jit_compiler): Handling NULL return value of jit_asm_compile. 2007-02-25 22:02 pm * src/vm/jit/s390/asmpart.S (asm_getclassvalues_atomic, asm_criticalsections): Added. 2007-02-25 21:31 pm * src/vm/jit/codegen-common.c (methodtree_comparator): Fixed S390 related comment. * src/vm/jit/s390/codegen.h: Fixed M_JSR macro, did not store RA. * src/vm/jit/s390/md-asm.h: Added (LOAD|STORE)_TEMPORARY_REGISTERS and (LOAD|STORE)_ARGUMENT_REGISTERS macros. * src/vm/jit/s390/asmpart.S: Implemented asm_handle_exception and asm_vm_call_method_exception_handler. * src/vm/jit/s390/md-abi.c (abi_registers_integer_temporary): did not contain %r0, added. 2007-02-24 14:47 twisti * src/vmcore/zip.c (errno.h): Added. (vm/vm.h): Likewise. (zip_get): Replaced asserts with vm_abort. 2007-02-23 22:57 michi * src/vm/jit/replace.c: Renamed regs to abi_registers_integer_name. 2007-02-21 23:26 twisti * src/vm/global.h (ACC_CLASS_SOFT_REFERENCE, ACC_CLASS_WEAK_REFERENCE) (ACC_CLASS_PHANTOM_REFERENCE): Added. * src/vmcore/class.c (class_create_classinfo) [ENABLE_JAVASE]: Check if the class is a reference class and flag it. * src/vmcore/loader.c (load_class_from_classbuffer): OR the flags loaded. * src/vmcore/utf8.c (utf_java_lang_ref_SoftReference) (utf_java_lang_ref_WeakReference, utf_java_lang_ref_PhantomReference): Added. (utf8_init): Initialize added variables. * src/vmcore/utf8.h: Likewise. 2007-02-21 23:23 twisti * src/vm/exceptions.c (exceptions_throw_noclassdeffounderror): Abort when VM is initializing. 2007-02-21 23:12 pm * src/vm/jit/s390/codegen.c (codegen): allocate register save area required by C abi for builtin calls * src/vm/jit/s390/codegen.c (createnativestub): fix errornous code generated for return, fix datasp argument to codegen_finish_native_call 2007-02-21 22:17 twisti * m4/jni.m4: Added ENABLE_JNI AM_CONDITIONAL. * src/vm/vm.c (vm_createjvm): Replaced some ENABLE_JAVASE with ENABLE_JNI. (vm_create): Likewise. * src/native/Makefile.am: Likewise. * src/native/jni.c (jni_init) [ENABLE_JAVASE]: ifdef'ed Java SE stuff. (_Jv_JNI_DefineClass) [!ENABLE_JAVASE]: Abort. (_Jv_JNI_FindClass): Likewise. (_Jv_JNI_FromReflectedMethod): Likewise. (_Jv_JNI_FromReflectedField): Likewise. (_Jv_JNI_NewDirectByteBuffer): Likewise. (_Jv_JNI_GetDirectBufferAddress): Likewise. (_Jv_JNI_GetDirectBufferCapacity): Likewise. (_Jv_JNI_IsAssignableFrom): Call _Jv_java_lang_Class_isAssignableFrom. (_Jv_JNI_IsInstanceOf): Call _Jv_java_lang_Class_isInstance. (_Jv_JNI_EnsureLocalCapacity): Removed debug output. 2007-02-21 20:24 twisti * src/vm/jit/Makefile.am [!WITH_BINUTILS_DISASSEMBLER] (DISASS_SOURCES): Removed. * src/vm/jit/disass-common.c: Removed WITH_BINUTILS_DISASSEMBLER ifdefs, since it's compiled conditionally. 2007-02-21 18:20 twisti * src/vm/jit/x86_64/md-abi.c (regs): Renamed to abi_registers_integer_name. (md_param_alloc): Made code more clear. (md_param_alloc_native): New function. 2007-02-21 18:19 twisti * src/vm/jit/abi-asm.h: Cosmetic changes. 2007-02-20 01:23 twisti * src/native/vm/cldc1.1/com_sun_cldchi_jvm_JVM.c (vm/exceptions.h): Added. (vm/stringlocal.h): Likewise. (loadLibrary): Throw error in case. 2007-02-20 00:42 twisti * src/native/vm/java_lang_Runtime.c (loadLibrary): Different signature for _Jv_java_lang_Runtime_loadLibrary depending on ENABLE_JNI. * src/native/vm/java_lang_Runtime.h: Likewise. * src/native/vm/cldc1.1/com_sun_cldchi_jvm_JVM.c: Likewise. * src/native/vm/gnu/java_lang_VMRuntime.c: Likewise. 2007-02-20 00:38 twisti * configure.ac (AC_CHECK_ENABLE_JAVA): Added. (AC_CHECK_ENABLE_JIT): Likewise. (AC_CHECK_ENABLE_JNI): Likewise. * m4/jni.m4: New file. * m4/java.m4: Likewise. * m4/jit.m4: Likewise. 2007-02-19 23:47 twisti * src/native/vm/cldc1.1/com_sun_cldchi_jvm_JVM.c: New file. * src/native/vm/cldc1.1/Makefile.am (libnativevmcore_la_SOURCES): Added com_sun_cldchi_jvm_JVM.c. * src/native/vm/java_lang_Runtime.c [!WITH_STATIC_CLASSPATH] (ltdl.h): Added. (native/jni.h): Likewise. (native/native.h): Likewise. (native/include/java_lang_String.h): Likewise. (toolbox/logging.h): Likewise. (vm/exceptions.h): Likewise. (vm/stringlocal.h): Likewise. (vmcore/options.h): Likewise. (loadLibrary): New function. * src/native/vm/java_lang_Runtime.h (native/jni.h): Added. (native/include/java_lang_String.h): Likewise. * src/native/vm/gnu/java_lang_VMRuntime.c [!WITH_STATIC_CLASSPATH] (ltdl.h): Removed. (native/native.h): Likewise. (toolbox/logging.h): Likewise. (vmcore/options.h): Likewise. (nativeLoad): Call _Jv_java_lang_Runtime_loadLibrary. * src/native/include/Makefile.am (JAVAME_CLDC1_1_HEADER_FILES): Added com_sun_cldchi_jvm_JVM.h. 2007-02-18 20:16 pm * src/vm/jit/s390/patcher.c (patcher_wrapper): Formatting changes. * src/vm/jit/s390/asmpart.S (asm_patcher_wrapper): Did not remove stack frame created by patcher stubs. 2007-02-16 17:56 twisti * src/vmcore/statistics.c (mm/gc-common.h): Added. (statistics_print_gc_memory_usage): New function. * src/vmcore/statistics.h (statistics_print_gc_memory_usage): Likewise. * src/cacaoh/dummy.c (gc_get_heap_size): New stub. (gc_get_free_bytes): Likewise. (gc_get_total_bytes): Likewise. (gc_get_max_heap_size): Likewise. * src/mm/memory.c (memory_thread): Call statistics_print_gc_memory_usage. 2007-02-16 07:17 pm * src/vm/jit/s390/md.c, src/vm/jit/s390/codegen.c, src/vm/jit/s390/codegen.h, src/vm/jit/s390/patcher.c, src/vm/jit/s390/asmpart.S, src/vm/jit/s390/md-abi.c: Changed a lot. Mostly adapted to changes in the tree. 2007-02-15 19:48 twisti * src/cacaoh/dummy.c (intrp_asm_abstractmethoderror): New stub. (print_dynamic_super_statistics): Likewise. * src/vm/jit/intrp/engine.c (mm/memory.h): Added. * src/vm/jit/intrp/dynamic-super.c [!ENABLE_THREADS] (threads/none/lock.h): Likewise. 2007-02-15 19:42 twisti * src/Makefile.am [ENABLE_THREADS] (THREADS_DIR): Added. (SUBDIRS): Added THREADS_DIR. * src/threads/Makefile.am (SUBDIRS): Set always to native. * src/threads/threads-common.c (threads/none/threads.h): Removed. [ENABLE_THREADS] (threads_create_thread): Removed ifdef. (threads_get_current_tid) [ENABLE_THREADS]: Removed. 2007-02-15 11:43 pm * src/threads/threads-common.c (threads_get_current_tid): Return 0 if compiled with --enable-threads=none 2007-02-14 11:35 twisti * src/vm/jit/intrp/peephole.c: Updated to current codebase. * src/vm/jit/intrp/intrp.h: Likewise. * src/vm/jit/intrp/codegen.c: Likewise. * src/vm/jit/intrp/engine.c: Likewise. * src/vm/jit/intrp/asmpart.c: Likewise. * src/vm/jit/intrp/dynamic-super.c: Likewise. * src/vm/jit/intrp/patcher.c: Likewise. * src/vm/jit/intrp/java.vmg: Likewise. 2007-02-13 23:14 twisti * src/vm/jit/arm/codegen.c (createnativestub) [!__ARM_EABI__]: #ifdef'ed split-stuff. * src/vm/jit/arm/md-abi.c (md_param_alloc_native) [!__ARM_EABI__]: Added GNU EABI stuff. 2007-02-13 22:11 ajordan * configure.ac: Added support for compiling on Solaris. * src/vm/jit/sparc64/*: Added os subdir, changes for compiling on Solaris. 2007-02-13 21:32 twisti * src/vm/jit/mips/md-abi.c (regs): Renamed to abi_registers_integer_name. (md_param_alloc_native): New function. * src/vm/jit/mips/disass.c (disassinstr): Replaced regs with abi_registers_integer_name. 2007-02-13 21:30 twisti * src/vm/jit/mips/emit.c (emit_verbosecall_exit): Fixed argument passing, but I think there's still something left to fix. * src/vm/jit/mips/md-abi.h (REG_A2_A3_PACKED): Added. 2007-02-13 15:15 twisti * src/threads/native/lock.c (vm/vm.h): Added. (lock_record_add_waiter): New function. (lock_record_remove_waiter): Free the waiter data structure. (lock_record_wait): Use lock_record_add_waiter. * src/threads/native/lock.h: Cosmetic changes. 2007-02-13 14:15 twisti * src/cacaoh/dummy.c (mem_alloc): Arghhhh, fixed arguments. 2007-02-13 14:13 twisti * src/cacaoh/dummy.c (mem_alloc): Use calloc instead of malloc. 2007-02-13 13:23 twisti * src/threads/threads-common.c (threads_get_current_tid): Check if thread is NULL and return 0. 2007-02-13 13:04 twisti * src/threads/threads-common.c (threads_get_current_tid): New function. * src/threads/threads-common.h (threads_get_current_tid): Added. * src/toolbox/logging.c (log_start): Use threads_get_current_tid. * src/cacaoh/dummy.c (threads_get_current_threadobject): Removed. (threads_get_current_tid): Added. 2007-02-13 12:23 ajordan * src/vm/jit/Makefile.am: Reverted duplicate changes. * src/vm/signal.c: Reverted one duplicate header include. 2007-02-13 02:36 ajordan * src/vm/jit/stacktrace.c (stacktrace_create_extern_stackframeinfo): SPARC specific retrieval of the PV. (stacktrace_create): SPARC specific stack walking. * src/vm/jit/Makefile.am: Not compiling verifier source when disabled. * src/vm/jit/codegen-common.c (codegen_add_patch_ref): Included __SPARC_64__ in ifdef to add patcher NOPs from here. * src/vm/signal.c: Added include statements and/or ifdefs to fix compiling without threads. * src/vm/exceptions.c: Likewise. * src/vm/finalizer.c: Likewise. * src/native/jni.c: Likewise. * src/threads/none/threads.h: Likewise. * src/threads/threads-common.c: Likewise. * src/threads/critical.c: Likewise. 2007-02-13 02:12 ajordan * src/vm/jit/sparc64/md-abi.h: set TRACE_ARGS_NUM to 6. * src/vm/jit/sparc64/emit.c: using the 6 available integer argument regs for call tracing. * src/vm/jit/sparc64/md-abi.c: added abi register names. Added md_param_alloc_native(), but still using the existing workaround. 2007-02-13 00:51 twisti * src/mm/memory.c (memory_thread) [ENABLE_STATISTICS]: #ifdef'ed statistics_print_memory_usage call. 2007-02-13 00:40 twisti * src/vm/vm.c (vm_create) [ENABLE_STATISTICS]: #ifdef opt_stat. 2007-02-13 00:37 twisti * src/vm/vm.c (vm_create): Set opt_stat also true for -verbose:memory. * src/mm/memory.c [ENABLE_THREADS] (threads/threads-common.h): Added. (memory_thread): Call statistics_print_memory_usage. 2007-02-13 00:17 twisti * src/vm/jit/optimizing/profile.c (native/jni.h): Removed. (native/include/java_lang_Thread.h): Likewise. (native/include/java_lang_VMThread.h): Likewise. (threads/threads-common.h): Added. (thread_profile): Changed type to threadobject. (profile_start_thread): Use threads_create_thread. * src/vm/jit/optimizing/recompile.c: Likewise. * src/vm/signal.c: Likewise. * src/vm/finalizer.c: Likewise. * src/vm/jit/asmpart.h (threads/native/critical.h): Removed. (threads/critical.h): Added. * src/vmcore/options.c (opt_verbosememory): Added. * src/vmcore/options.h: Likewise. * src/vm/vm.c (XXusage): Added -verbose:memory. (vm_create): Likewise. Start memory thread. * src/cacao/Makefile.am (THREAD_LIB): Changed to $(top_builddir)/src/threads/libthreads.la. * src/mm/memory.c [ENABLE_THREADS] (thread_memory): Added. [ENABLE_THREADS] (memory_thread): New function. [ENABLE_THREADS] (memory_start_thread): Likewise. * src/mm/memory.h [ENABLE_THREADS] (memory_start_thread): Added. * src/threads/native/critical.c: Removed. * src/threads/native/critical.h: Likewise. * src/threads/critical.c: Added. * src/threads/critical.h: Likewise. * src/threads/threads-common.c: New file. * src/threads/threads-common.h: Likewise. * src/threads/Makefile.am (AM_CPPFLAGS): Added. (LIB): Likewise. [ENABLE_THREADS] (THREAD_LIB): Likewise. (noinst_LTLIBRARIES): Likewise. (libthreads_la_SOURCES): Likewise. (libthreads_la_LIBADD): Likewise. * src/threads/.cvsignore: New file. * src/threads/native/threads.c (include "threads/threads-common.h): Added. * src/threads/native/threads.h (MIN_PRIORITY, NORM_PRIORITY) (MAX_PRIORITY): Removed. * src/threads/native/Makefile.am (noinst_LTLIBRARIES): Changed to libthreadsposix.la. 2007-02-13 00:05 twisti * src/vmcore/annotation.c (annotation_load_attribute_runtimevisibleannotations): Renamed aa to annotations. 2007-02-12 13:28 twisti * src/vm/jit/emit-common.h (_EMIT_H): Renamed to _EMIT_COMMON_H. (config.h): Added. (vm/jit/codegen-common.h): Likewise. [SIZEOF_VOID_P == 4] (IS_IMM16): Added. 2007-02-12 10:43 twisti * src/vm/jit/alpha/md-abi.c (regs): Renamed to abi_registers_integer_name. (md_param_alloc_native): New function. * src/vm/jit/alpha/disass.c (vm/jit/abi.h): Added. (disassinstr): Replaced regs with abi_registers_integer_name. 2007-02-12 00:34 twisti * src/vm/jit/i386/md-abi.c (regs): Renamed to abi_registers_integer_name. (md_param_alloc_native): New function. 2007-02-11 22:17 twisti * src/vm/jit/arm/disass.c (stdio.h): Added. (regs): Removed. * src/vm/jit/arm/md-abi.c (abi_registers_integer_name): Added. (md_param_alloc_native): Likewise. 2007-02-11 21:44 twisti * src/vm/jit/codegen-common.c (vm/jit/abi.h): Added. 2007-02-11 21:41 twisti * src/vm/jit/disass.h (regs): Removed. * src/vm/jit/show.c (vm/jit/abi.h): Added. (show_allocation): Renamed regs to abi_registers_integer_name. 2007-02-11 21:39 twisti * src/vm/jit/codegen-common.c (codegen_createnativestub): Call md_param_alloc_native instead of md_param_alloc. * src/vm/jit/powerpc/linux/md-abi.c (assert.h): Added. (regs): Renamed to abi_registers_integer_name. (abi_registers_integer_argument, abi_registers_integer_saved) (abi_registers_integer_temporary, abi_registers_float_name) (abi_registers_float_argument, abi_registers_float_saved) (abi_registers_float_temporary): Added. (md_param_alloc): Reformatted. (md_param_alloc_native): New function. 2007-02-11 21:24 twisti * src/vmcore/descriptor.c (vm/jit/abi.h): Added. * src/vmcore/descriptor.h (md_param_alloc): Removed. * src/vm/jit/abi.h (abi_registers_integer_name) (abi_registers_integer_argument, abi_registers_integer_saved) (abi_registers_integer_temporary, abi_registers_float_name) (abi_registers_float_argument, abi_registers_float_saved) (abi_registers_float_temporary): Added. (md_param_alloc): Likewise. (md_param_alloc_native): Likewise. 2007-02-11 21:22 twisti * src/native/native.c (native_get_returntype): Removed. * src/native/native.h: Likewise. * src/native/vm/gnu/java_lang_reflect_Method.c (getReturnType): Moved code from native_get_returntype. 2007-02-11 20:16 twisti * src/vm/jit/codegen-common.c (vm/jit/md.h): Added. 2007-02-11 20:10 twisti * src/vm/jit/arm/emit.c (emit_verbosecall_enter): Keep stack 8-byte aligned. (emit_verbosecall_exit): Added comment. * src/vm/jit/arm/asmpart.S (asm_call_jit_compiler): Keep stack 8-byte aligned. 2007-02-11 17:52 pm * src/vm/jit/stacktrace.c (stacktrace_create_extern_stackframeinfo): On s390 get return address from stack also in leaf methods. * src/vm/jit/codegen-common.c (methodtree_comparator): On s390 compare addresses as 31 bit integers. * src/vm/jit/s390/md.c, src/vm/jit/s390/codegen.c, src/vm/jit/s390/codegen.h, src/vm/jit/s390/patcher.c, src/vm/jit/s390/asmpart.S: Changed a lot, working on s390 port. 2007-02-11 10:15 michi * src/vm/jit/replace.c: Fixed includes for options.h and classcache.h headers. * src/vm/jit/replace.h: Added forward typedef for rplalloc. 2007-02-11 09:21 michi * src/vm/jit/replace.h: Fixed include for method.h header. 2007-02-11 00:02 twisti * src/vm/jit/x86_64/emit.c (emit_verbosecall_enter): Renamed builtin_trace_args to builtin_verbosecall_enter. (builtin_verbosecall_exit): Renamed builtin_displaymethodstop to builtin_verbosecall_exit and changed signature. * src/vm/jit/x86_64/md-abi.h (REG_FA0, REG_FA1): Added. 2007-02-10 19:06 twisti * src/vm/builtin.c (builtin_trace_args): Renamed to builtin_verbosecall_enter. (builtin_trace_args): Renamed to builtin_verbosecall_enter. (builtin_displaymethodstop): Renamed to builtin_verbosecall_exit and changed signature. * src/vm/builtin.h: Likewise. * src/vm/jit/arm/emit.c (emit_verbosecall_enter): Likewise. (builtin_verbosecall_exit): Likewise. * src/vm/jit/alpha/emit.c: Likewise. * src/vm/jit/i386/emit.c: Likewise. * src/vm/jit/mips/emit.c: Likewise. * src/vm/jit/powerpc/emit.c: Likewise. * src/vm/jit/alpha/md-abi.h (REG_FA0, REG_FA1, REG_FA2): Added. * src/vm/jit/mips/md-abi.h: Removed multiple defines. * src/vm/jit/powerpc/linux/md-abi.h (REG_FA0, REG_FA1): Added. (REG_A0_A1_PACKED): Likewise. * src/vm/jit/mips/linux/Makefile.am (AM_CPPFLAGS): Added -I$(top_builddir)/src. * src/vm/jit/mips/irix/Makefile.am: Likewise. 2007-02-10 15:11 ajordan * src/vm/jit/sparc64/codegen.c (createnativestub): Fixed stack argument passing. * src/vm/jit/sparc64/*: Adapted includes to new cacao structure. 2007-02-10 14:31 pm * s390/codegen.c: fix: ICMD_FCMPL generated wrong branch offset * s390/codegen.h: likewise * s390/asmpart.S: fix: asm_call_jit_compiler did not remove stack frame 2007-02-10 00:49 pm Continued work on S390 codegen. Affected files: * s390/codegen.c * s390/codegen.h * s390/arch.h * s390/patcher.c * s390/asmpart.S 2007-02-09 13:20 twisti * src/vm/jit/powerpc64/linux/md-os.c: Fixed includes. * src/vm/jit/powerpc64/linux/md-abi.c: Likewise. * src/vm/jit/powerpc64/md.c: Likewise. * src/vm/jit/powerpc64/codegen.c: Likewise. * src/vm/jit/powerpc64/patcher.c: Likewise. 2007-02-09 13:00 twisti * src/vm/jit/i386/asmpart.S (asm_compare_and_swap): Added ; after lock, Darwin's assembler requires that. (asm_compare_and_swap): Likewise. 2007-02-09 12:51 twisti * src/mm/boehm.c [ENABLE_THREADS] (threads/native/threads.h): Removed. 2007-02-09 12:49 twisti * src/vm/jit/powerpc/linux/Makefile.am (AM_CPPFLAGS): Added -I$(top_builddir)/src. * src/vm/jit/powerpc/darwin/Makefile.am: Likewise. * src/vm/jit/powerpc/netbsd/Makefile.am: Likewise. 2007-02-09 12:47 twisti * src/vmcore/class.h (dummy_java_lang_Class): Added. (classinfo): Use dummy_java_lang_Class. * src/vm/vm.c (vm_create): Check dummy_java_lang_Class size. 2007-02-09 11:25 twisti * src/native/vm/java_lang_Runtime.c [ENABLE_JAVASE] (runFinalizersOnExit): Added. * src/native/vm/java_lang_Runtime.h: Likewise. * src/native/vm/gnu/java_lang_VMRuntime.c (exit): Renamed argument par1 to status. (runFinalizersOnExit): Call _Jv_java_lang_Runtime_runFinalizersOnExit. 2007-02-09 11:08 twisti * src/vm/exceptions.c (exceptions_throw_unsatisfiedlinkerror) [!ENABLE_JAVASE]: Generate a java.lang.Error. * src/native/vm/cldc1.1/java_lang_Class.c (isInstance): Added. (isAssignableFrom): Likewise. (isInterface): Likewise. (isArray): Likewise. * src/native/vm/cldc1.1/java_lang_Object.c (hashCode): Likewise. (notify): Likewise. (wait): Likewise. * src/native/vm/cldc1.1/java_lang_String.c (hashCode): Smaller implementation changes. (indexOf__II): Likewise. (lastIndexOf__II): Likewise. (indexOf__I): Added. * src/native/vm/cldc1.1/java_lang_Thread.c: Header updated. * src/native/vm/cldc1.1/java_lang_Runtime.c (exitInternal): Fixed signature. (freeMemory): Added. (totalMemory): Likewise. (gc): Likewise. * src/native/vm/cldc1.1/com_sun_cldc_io_ResourceInputStream.c: New file. * src/native/vm/cldc1.1/com_sun_cldc_io_j2me_socket_Protocol.c: Likewise. * src/native/vm/cldc1.1/Makefile.am (libnativevmcore_la_SOURCES): Added com_sun_cldc_io_ResourceInputStream.c and com_sun_cldc_io_j2me_socket_Protocol.c. * src/native/vm/java_lang_Runtime.c: New file. * src/native/vm/java_lang_Runtime.h: Likewise. * src/native/vm/Makefile.am (libnativevm_la_SOURCES): Added java_lang_Runtime.c and java_lang_Runtime.h. * src/native/vm/java_lang_Class.c: Un-ifdef some functions for CLDC. * src/native/vm/java_lang_Class.h: Likewise. * src/native/vm/gnu/java_lang_VMRuntime.c (native/vm/java_lang_Runtime.h): Added. (exit): Call _Jv_java_lang_Runtime function. (freeMemory): Likewise. (totalMemory): Likewise. (gc): Likewise. * src/native/vm/java_lang_Object.h [ENABLE_JAVASE] (native/include/java_lang_Cloneable.h): Only available for JavaSE configurations. * src/native/include/Makefile.am (JAVAME_CLDC1_1_HEADER_FILES): Added com_sun_cldc_io_ResourceInputStream.h and com_sun_cldc_io_j2me_socket_Protocol.h. * src/native/native.c (dummynativetable) [ENABLE_JAVAME_CLDC1_1]: Added new functions. 2007-02-09 10:35 twisti * src/vm/jit/alpha/md.c (vm/options.h): Changed to vmcore/options.h. * src/vm/jit/alpha/linux/Makefile.am (AM_CPPFLAGS): Added -I$(top_builddir)/src. * src/vm/jit/alpha/freebsd/Makefile.am: Likewise. 2007-02-08 12:29 michi * src/vm/jit/i386/cygwin/Makefile.am: Changed to unix fileformat. * src/vm/jit/i386/cygwin/ucontext.h, src/vm/jit/i386/cygwin/ucontext.c, src/vm/jit/i386/cygwin/md-os.c, src/vm/jit/i386/cygwin/md-asm.h: Likewise. 2007-02-08 12:14 twisti * src/vm/jit/i386/linux/Makefile.am (AM_CPPFLAGS) Added -I$(top_builddir)/src. * src/vm/jit/i386/cygwin/Makefile.am: Likewise. * src/vm/jit/i386/freebsd/Makefile.am: Likewise. 2007-02-07 22:06 pm Continued work on S390 port. java.lang.ClassLoader.getSystemClassLoader is now compiled, patched, called and the patcher trigger compilation of another method. * jit/s390/emit.c: Likiwise. * jit/s390/codegen.c: Likewise. * jit/s390/codegen.h: Likewise. * jit/s390/md-asm.h: Likewise. * jit/s390/patcher.c: Likewise. * jit/s390/asmpart.S: Likewise. * jit/codegen-common.c: Likewise. 2007-02-06 12:17 twisti * src/native/vm/cldc1.1/Makefile.am: Updated header. 2007-02-06 10:25 twisti * src/native/vm/cldc1.1/java_lang_String.c (hashCode): Implemented. (indexOf__II): Likewise. (lastIndexOf__II): Likewise. 2007-02-06 09:11 twisti * src/threads/native/Makefile.am (AM_CPPFLAGS): Added -I$(top_builddir)/src. * src/vm/jit/x86_64/Makefile.am: Likewise. * src/vm/jit/x86_64/linux/Makefile.am: Likewise. * src/vm/jit/x86_64/freebsd/Makefile.am: Likewise. 2007-02-06 08:58 twisti * src/vm/jit/powerpc/codegen.c (codegen) [ENABLE_PROFILING]: #ifdef profiling code. 2007-02-06 08:50 twisti * src/native/vm/Makefile.am (DIST_SUBDIRS): Added missing \. 2007-02-06 08:49 twisti * src/vm/jit/tools/genoffsets.c (vm/jit/stacktrace.h): Not required, removed. 2007-02-06 08:48 twisti * src/vm/jit/tools/Makefile.am: Cosmetic changes. 2007-02-06 08:47 twisti * src/vm/jit/optimizing/Makefile.am (AM_CPPFLAGS): Added -I$(top_builddir)/src. * src/vm/jit/Makefile.am: Likewise. * src/vm/Makefile.am: Likewise. * src/mm/Makefile.am: Likewise. 2007-02-06 06:37 twisti * src/vm/jit/linux/md-os.c (thread_restartcriticalsection): Added missing cast and pass pc to critical_find_restart_point. * src/vm/jit/freebsd/md-os.c (thread_restartcriticalsection): Likewise. 2007-02-05 02:04 twisti * src/cacaoh/dummy.c (builtin_clone, builtin_isanysubclass) (builtin_new): Keep compiler happy and return a value. 2007-02-05 01:07 twisti * src/vm/signallocal.h (vm/types.h): Added. (vm/global.h): Likewise. 2007-02-05 01:06 twisti * configure.ac (AC_CONFIG_FILES): Added src/vm/jit/x86_64/freebsd/Makefile. * src/vm/jit/x86_64/Makefile.am (DIST_SUBDIRS): Added freebsd. * src/vm/jit/x86_64/freebsd/md-os.c: New file. * src/vm/jit/x86_64/freebsd/Makefile.am: Likewise. * src/vm/jit/x86_64/freebsd/.cvsignore: Likewise. 2007-02-05 00:52 twisti * configure.ac (AC_CONFIG_FILES): Added src/vm/jit/x86_64/linux/Makefile. * src/vm/jit/x86_64/Makefile.am (DIST_SUBDIRS): Added. (SUBDIRS): Likewise. (libarch_la_LIBADD): Likewise. * src/vm/jit/x86_64/md.c (md_signal_handler_sigsegv) (md_signal_handler_sigfpe, md_signal_handler_sigusr2) (thread_restartcriticalsection): Removed. * src/vm/jit/x86_64/linux/md-os.c: New file. * src/vm/jit/x86_64/linux/Makefile.am: Likewise. * src/vm/jit/x86_64/linux/.cvsignore: Likewise. 2007-02-04 19:41 pm * jit/codegen-common.h: Enabled dseg_adddata for s390. * jit/dseg.c: Likewise. * jit/s390/md-abi.h: Continued work on s390 port. * jit/s390/emit.c: Likewise. * jit/s390/md.c: Likewise. * jit/s390/codegen.c: Likewise. * jit/s390/codegen.h: Likewise. * jit/s390/md-asm.h: Likewise. * jit/s390/asmpart.S: Likewise. * jit/s390/md-abi.c: Likewise. 2007-02-04 16:08 twisti * src/native/jni.c (_Jv_JNI_ExceptionDescribe): Fixed typo. 2007-02-03 19:51 twisti * src/vm/jit/x86_64/codegen.c (codegen) [ENABLE_PROFILING]: #ifdef instrumentation code. (createnativestub) [ENABLE_PROFILING]: Likewise. * src/vm/jit/x86_64/codegen.h [ENABLE_PROFILING] (PROFILE_CYCLE_START) (PROFILE_CYCLE_STOP): Added #ifdef. 2007-02-03 19:34 twisti * src/vm/builtin.c [ENABLE_THREADS] (threads/native/threads.h): Removed. [ENABLE_THREADS] (threads/native/lock.h): Added. (builtin_throw_exception): Use exceptions_set_exception. * src/vm/finalizer.c (finalizer_run): Likewise. * src/vm/signal.c (signal_start_thread): Use #warning instead of #error (temporarily). * src/native/jni.c (_Jv_jni_invokeNative): Use exceptions_get_exception, and exceptions_clear_exception. (_Jv_JNI_ExceptionDescribe): Likewise. (_Jv_JNI_IsAssignableFrom): Use exceptions_set_exception. (_Jv_JNI_ExceptionOccurred): Use exceptions_get_exception. (_Jv_JNI_ExceptionCheck): Likewise. (_Jv_JNI_ExceptionClear): Use exceptions_clear_exception. 2007-02-02 12:53 twisti * src/vm/jit/i386/codegen.c (codegen) [ENABLE_PROFILING]: Profiling code. (createnativestub): Likewise. 2007-02-02 12:39 twisti * src/native/vm/java_lang_Object.c [ENABLE_JAVAME_CLDC1_1] (native/include/java_lang_String.h): Added. 2007-02-02 12:28 twisti * src/native/vm/java_lang_Class.h (native/include/java_lang_String.h): Required by java_lang_Class.h for Java ME. 2007-02-02 11:58 michi * src/vm/jit/arm/md-abi.h: Renamed REG_IP to REG_PV (special favor for twisti). * src/vm/jit/arm/emit.c, src/vm/jit/arm/codegen.c, src/vm/jit/arm/codegen.h: Adapted to the above change. 2007-02-02 00:20 twisti * src/vm/jit/jit.c (jit_compile_intern) [ENABLE_PROFILING]: Call reorder only when profiling. 2007-02-02 00:10 twisti * src/vm/jit/code.h (codeinfo) [ENABLE_PROFILING]: Made frequency, bbfrequency, and cycles conditional. * src/vm/jit/jit.c (jit_compile) [ENABLE_PROFILING]: Likewise. (jit_compile_intern) [ENABLE_PROFILING]: Likewise. 2007-02-02 00:06 twisti * src/vm/jit/optimizing/Makefile.am [ENABLE_PROFILING] (REORDER_SOURCES): Moved here till we have something better. 2007-02-01 15:35 twisti * src/vmcore/suck.c (assert.h): Added. (suck_float): Use assert instead of an exception. (suck_double): Likewise. 2007-02-01 15:27 twisti * src/vmcore/linker.c (link_class_intern): Also align double and s8 fields to 4-bytes for ARM. 2007-02-01 12:58 twisti * src/vmcore/utf8.c (utf_java_lang_InvocationTargetException): Is actually called utf_java_lang_reflect_InvocationTargetException. (utf8_init): Likewise. * src/vmcore/utf8.h (utf_java_lang_InvocationTargetException): Likewise. * src/vm/exceptions.c (exceptions_throw_invocationtargetexception): Likewise. 2007-02-01 12:29 twisti * src/vm/jit/code.c [ENABLE_THREADS] (threads/native/lock.h): Added. 2007-02-01 12:02 twisti * src/vmcore/method.h (methodinfo): Removed member object. * src/vm/jit/code.h (codeinfo): Added member object. * src/vmcore/loader.c (loader_load_method): Removed lock_init_object_lock. (load_newly_created_array): Likewise. * src/vm/jit/code.c (code_codeinfo_new): Added lock_init_object_lock. * src/vm/jit/jit.c (jit_jitdata_new): Changed signature. (jit_compile): Use codeinfo lock object instead of methodinfo. (jit_recompile): Changed signature. * src/vm/jit/jit.h (jit_jitdata_new): Likewise. 2007-01-31 17:45 twisti * src/cacaoh/dummy.c (pthread.h): Added. 2007-01-31 17:02 twisti * src/toolbox/logging.c (log_start): Uncommented thread pointer stuff. * src/cacaoh/dummy.c (threads_get_current_threadobject): Added. 2007-01-31 17:00 twisti * src/native/jni.c (_Jv_JNI_ThrowNew): Fixed warnings. 2007-01-31 14:05 twisti * src/native/vm/gnu/gnu_classpath_VMSystemProperties.c: Updated year. 2007-01-31 14:04 twisti * src/native/vm/gnu/gnu_classpath_VMSystemProperties.c (string.h): Added. (mm/memory.h): Likewise. 2007-01-31 10:59 twisti * src/vmcore/loader.c (load_newly_created_array) [ENABLE_JAVASE]: Fixed interfacescount. 2007-01-31 10:00 twisti * src/vm/exceptions.c [ENABLE_JAVAME_CLDC1_1](exceptions_new_error): New function. (exceptions_asm_new_abstractmethoderror) [!ENABLE_JAVASE]: Use exceptions_new_error. (exceptions_throw_virtualmachineerror): Removed. * src/vm/exceptions.h (exceptions_throw_virtualmachineerror): Likewise. 2007-01-31 09:51 twisti * src/vm/jit/Makefile.am: Fixed !ENABLE_VERIFER build. 2007-01-30 13:58 twisti * src/vm/jit/arm/emit.c (mm/memory.h): Added. (vm/global.h): Likewise. (emit_patcher_stubs): Align stack to 8-byte. (emit_verbosecall_exit): Smaller optimizations. * src/vm/jit/arm/md-abi.h (config.h): Added. (REG_A1_A2_PACKED): Defined. * src/vm/jit/arm/md.c: Fixed includes. (md_codegen_get_pv_from_pc): Use vm_abort. * src/vm/jit/arm/codegen.c: Fixed includes. (codegen): Align stack to 8-byte. (createnativestub): Likewise. * src/vm/jit/arm/codegen.h (M_ADD_IMM_EXT_MUL4): Added do-while. (M_SUB_IMM_EXT_MUL4): Likewise. * src/vm/jit/arm/patcher.c: Fixed includes. (patcher_wrapper): Align stack to 8-byte. * src/vm/jit/arm/asmpart.S (asm_patcher_wrapper): Likewise. * src/vm/jit/arm/md-abi.c: Fixed includes. 2007-01-30 13:53 twisti * src/vm/signal.c (signal_init): Disable signal-thread handling temporarily. * src/vm/vm.c (vm_create): Likewise. 2007-01-29 23:07 twisti * src/vm/string.c (native/jni.h): Added. * src/vm/properties.c (native/jni.h): Likewise. * src/native/vm/cldc1.1/java_lang_Runtime.c: Includes fixed for cacaoh-changes. * src/native/vm/cldc1.1/java_lang_Class.c: Likewise. * src/native/vm/java_lang_Class.c [ENABLE_JAVAME_CLDC1_1] (native/include/java_lang_String.h): Added. (forName): #ifdef'd loader variable. * src/vmcore/class.c (class_resolveclassmethod): Removed Java ME exception handling, we do that in the exception function itself. (class_resolveinterfacemethod): Likewise. * src/vmcore/resolve.c (resolve_method_invokespecial): Likewise. * src/vmcore/utf8.c [ENABLE_JAVASE] (utf_java_lang_AbstractMethodError, utf_java_lang_NoSuchFieldError) (utf_java_lang_NoSuchMethodError): Removed ifdef. * src/vmcore/utf8.h: Likewise. 2007-01-29 21:47 ajordan * src/vm/jit/sparc64/codegen.h: Fixed double register number packing and fp compare instruction macros. * src/vm/jit/sparc64/codegen.c: Fixed fp compares. Fixed INT2CHAR. Fixed fp argument saving in createnativestub(). * src/vm/jit/sparc64/patcher.c: Implemented get/put field patcher. * src/vm/jit/sparc64/md.c: Removed printf. 2007-01-29 21:39 twisti * src/vm/jit/i386/emit.c: Includes fixed for cacaoh-changes. * src/vm/jit/i386/md.c: Likewise. * src/vm/jit/i386/codegen.c: Likewise. * src/vm/jit/i386/patcher.c: Likewise. * src/vm/jit/i386/md-abi.c: Likewise. 2007-01-29 21:38 twisti * src/vm/jit/i386/asmpart.S (asm_compare_and_swap): New function. (asm_memory_barrier): Likewise. 2007-01-29 21:37 twisti * src/vm/jit/alpha/asmpart.S (asm_compare_and_swap): Changed comment. 2007-01-29 21:09 twisti * src/vm/jit/mips/emit.c: Include fixes for cacaoh-changes. * src/vm/jit/mips/md.c: Likewise. * src/vm/jit/mips/codegen.c: Likewise * src/vm/jit/mips/linux/md-os.c: Likewise * src/vm/jit/mips/disass.c: Likewise * src/vm/jit/mips/patcher.c: Likewise * src/vm/jit/mips/md-abi.c: Likewise 2007-01-29 20:24 twisti * src/vm/jit/alpha/emit.c: Fixed includes for cacaoh-changes. * src/vm/jit/alpha/codegen.c: Likewise. * src/vm/jit/alpha/linux/md-os.c: Likewise. * src/vm/jit/alpha/patcher.c: Likewise. * src/vm/jit/alpha/md-abi.c: Likewise. 2007-01-29 19:34 twisti * src/native/include/.cvsignore: Ignore all *.h files. 2007-01-29 19:32 twisti * src/vm/jit/x86_64/md.c: Fixed includes for cacaoh-changes. 2007-01-29 19:28 twisti * src/vm/jit/x86_64/emit.c: Fixed includes for cacaoh-changes. * src/vm/jit/x86_64/codegen.c: Likewise. * src/vm/jit/x86_64/patcher.c: Likewise. * src/vm/jit/x86_64/md-abi.c: Likewise. 2007-01-29 19:15 twisti * src/vmcore/stackmap.c [ENABLE_STATISTICS] (vmcore/statistics.h): Removed ifdef. * src/vm/jit/jit.c: Likewise. * src/vm/jit/emit-common.c: Likewise. 2007-01-29 18:49 twisti * This is a rather huge commit, which changes the build order of various parts to be able to bootstrap cacaoh without any dependencies on a generated header file. I include the file list from SVN, so we can see what happened to the files. Here we go (D-files were mostly moved to src/vmcore): D src/vm/hashtable.h D src/vm/options.h M src/vm/properties.h D src/vm/zip.c D src/vm/class.c D src/vm/suck.c D src/vm/loader.c M src/vm/builtin.c M src/vm/string.c D src/vm/zip.h D src/vm/class.h D src/vm/rt-timing.c D src/vm/suck.h D src/vm/annotation.c M src/vm/builtin.h D src/vm/loader.h D src/vm/descriptor.c D src/vm/annotation.h D src/vm/rt-timing.h D src/vm/resolve.c D src/vm/method.c D src/vm/descriptor.h M src/vm/finalizer.c D src/vm/resolve.h D src/vm/method.h D src/vm/references.h D src/vm/classcache.c D src/vm/statistics.c D src/vm/classcache.h D src/vm/statistics.h M src/vm/initialize.c M src/vm/access.c D src/vm/stackmap.c M src/vm/jit/powerpc/linux/md-abi.c M src/vm/jit/powerpc/emit.c M src/vm/jit/powerpc/md.c M src/vm/jit/powerpc/codegen.c M src/vm/jit/powerpc/patcher.c M src/vm/jit/codegen-common.h M src/vm/jit/abi.h M src/vm/jit/stack.c M src/vm/jit/optimizing/profile.c M src/vm/jit/optimizing/recompile.c M src/vm/jit/optimizing/ifconv.c M src/vm/jit/optimizing/ifconv.h M src/vm/jit/code.c M src/vm/jit/tools/genoffsets.c M src/vm/jit/code.h M src/vm/jit/show.c M src/vm/jit/dseg.c M src/vm/jit/verify/typeinfo.h M src/vm/jit/verify/typecheck-typeinferer.c M src/vm/jit/verify/typecheck.c M src/vm/jit/verify/typecheck-stackbased.c M src/vm/jit/verify/typeinfo.c M src/vm/jit/dseg.h M src/vm/jit/loop/loop.h M src/vm/jit/loop/graph.h M src/vm/jit/allocator/simplereg.c M src/vm/jit/parse.c M src/vm/jit/asmpart.h M src/vm/jit/stacktrace.c M src/vm/jit/emit-common.c M src/vm/jit/jit.c M src/vm/jit/stacktrace.h M src/vm/jit/codegen-common.c M src/vm/jit/jit.h M src/vm/initialize.h M src/vm/access.h D src/vm/stackmap.h M src/vm/signal.c M src/vm/exceptions.c M src/vm/vm.c D src/vm/field.c D src/vm/linker.c M src/vm/exceptions.h M src/vm/stringlocal.h D src/vm/utf8.c D src/vm/field.h M src/vm/Makefile.am D src/vm/linker.h D src/vm/hashtable.c D src/vm/options.c D src/vm/utf8.h M src/vm/properties.c M src/vm/signallocal.h M src/cacao/Makefile.am M src/native/jni.c M src/native/vm/java_lang_Class.c M src/native/vm/gnu/gnu_java_lang_management_VMThreadMXBeanImpl.c M src/native/vm/gnu/gnu_java_lang_management_VMMemoryMXBeanImpl.c M src/native/vm/gnu/java_security_VMAccessController.c M src/native/vm/gnu/java_lang_VMClassLoader.c M src/native/vm/gnu/java_lang_management_VMManagementFactory.c M src/native/vm/gnu/gnu_java_lang_management_VMRuntimeMXBeanImpl.c M src/native/vm/gnu/java_lang_VMClass.c M src/native/vm/gnu/java_lang_VMThread.c M src/native/vm/gnu/gnu_classpath_VMSystemProperties.c M src/native/vm/gnu/java_lang_reflect_Method.c M src/native/vm/gnu/java_lang_VMRuntime.c M src/native/vm/gnu/java_lang_reflect_Field.c M src/native/vm/gnu/gnu_classpath_VMStackWalker.c M src/native/vm/gnu/gnu_java_lang_management_VMClassLoadingMXBeanImpl.c M src/native/vm/gnu/java_lang_reflect_Constructor.c M src/native/vm/gnu/java_lang_VMThrowable.c M src/native/vm/java_lang_Object.c M src/native/vm/java_lang_Thread.c D src/native/include/java_lang_Thread.h D src/native/include/java_lang_Throwable.h D src/native/include/java_util_Properties.h D src/native/include/java_lang_VMThread.h D src/native/include/java_lang_VMThrowable.h D src/native/include/java_lang_ClassLoader.h M src/native/include/Makefile.am D src/native/include/java_lang_Cloneable.h D src/native/include/java_lang_ThreadGroup.h D src/native/include/java_lang_Class.h D src/native/include/java_lang_Object.h D src/native/include/java_lang_String.h M src/native/jni.h M src/native/native.c M src/native/native.h A src/toolbox/hashtable.h M src/toolbox/list.c M src/toolbox/avl.c M src/toolbox/logging.c M src/toolbox/Makefile.am M src/toolbox/logging.h A src/toolbox/hashtable.c M src/mm/gc-common.h M src/mm/Makefile.am M src/mm/memory.c M src/mm/boehm.c M src/Makefile.am M src/threads/none/threads.h M src/threads/none/lock.h M src/threads/native/threads.h M src/threads/native/lock.c M src/threads/native/threads.c AM src/vmcore A src/vmcore/options.h A src/vmcore/zip.c A src/vmcore/suck.c A src/vmcore/class.c A src/vmcore/loader.c A src/vmcore/zip.h A src/vmcore/annotation.c A src/vmcore/suck.h A src/vmcore/class.h A src/vmcore/rt-timing.c A src/vmcore/loader.h A src/vmcore/descriptor.c A src/vmcore/resolve.c A src/vmcore/annotation.h A src/vmcore/rt-timing.h A src/vmcore/method.c A src/vmcore/descriptor.h A src/vmcore/resolve.h A src/vmcore/method.h A src/vmcore/references.h A src/vmcore/classcache.c A src/vmcore/statistics.c A src/vmcore/.cvsignore A src/vmcore/classcache.h A src/vmcore/statistics.h A src/vmcore/stackmap.c A src/vmcore/stackmap.h A src/vmcore/field.c A src/vmcore/linker.c A src/vmcore/utf8.c A src/vmcore/field.h A src/vmcore/Makefile.am A src/vmcore/linker.h A src/vmcore/options.c A src/vmcore/utf8.h M src/cacaoh/cacaoh.c M src/cacaoh/headers.h M src/cacaoh/Makefile.am M src/cacaoh/headers.c A src/cacaoh/dummy.c M configure.ac 2007-01-29 11:52 twisti * src/vm/jit/arm/emit.c [ENABLE_SOFTFLOAT] (emit_load): Implemented. (emit_store): Changed implementation to be more clear. (emit_copy): Likewise. 2007-01-29 10:19 twisti * src/vm/jit/arm/codegen.c (codegen): ICMD_DASTORE: bugfix for softfloat. 2007-01-28 23:35 twisti * src/vm/jit/mips/codegen.c (createcompilerstub): Don't generate a codeinfo. 2007-01-28 22:57 twisti * src/vm/jit/arm/codegen.c (createcompilerstub): Don't generate a codeinfo. 2007-01-27 15:52 twisti * configure.ac: Use AC_CHECK_SOFTFLOAT, AC_CHECK_SOFT_FLOAT_CMP and AC_CHECK_SOFT_DOUBLE_CMP. * m4/soft.m4: New file. * src/vm/builtin.c [!SUPPORT_FLOAT_CMP] (builtin_fcmpl): Added conditional. [!SUPPORT_DOUBLE_CMP] (builtin_dcmpl): Likewise. * src/vm/builtintable.inc (builtintable_automatic): [!SUPPORT_FLOAT_CMP] (BUILTIN_fcmpl): Added. [!SUPPORT_DOUBLE_CMP] (BUILTIN_dcmpl): Likewise. (builtintable_function): [__MIPS__ && SIZEOF_VOID_P != 4] (BUILTIN_arraycopy): Added. * src/vm/jit/mips/codegen.c (codegen): Added SUPPORT_FLOAT_CMP for ICMD_FCMPx, and SUPPORT_DOUBLE_CMP for ICMD_DCMPx. * src/vm/jit/arm/arch.h (SUPPORT_FLOAT_CMP, SUPPORT_DOUBLE_CMP): Added. * src/vm/jit/powerpc/arch.h: Likewise. * src/vm/jit/sparc64/arch.h: Likewise. * src/vm/jit/alpha/arch.h: Likewise. * src/vm/jit/s390/arch.h: Likewise. * src/vm/jit/mips/arch.h: Likewise. * src/vm/jit/parisc/arch.h: Likewise. * src/vm/jit/m68k/arch.h: Likewise. * src/vm/jit/i386/arch.h: Likewise. * src/vm/jit/powerpc64/arch.h: Likewise. * src/vm/jit/x86_64/arch.h: Likewise. * src/vm/jit/mips/patcher.c (vm/jit/md.h): Added. 2007-01-27 13:01 twisti * src/vm/loader.c (load_newly_created_array): c->interfacescount was always set to 0, fixed. 2007-01-27 00:58 ajordan * src/vm/jit/sparc64/emit.c: Moved exception check generation to emit functions. * src/vm/jit/sparc64/codegen.h: Likewise. * src/vm/jit/sparc64/codegen.c: Likewise. * src/vm/jit/sparc64/md.c: Added SPARC specific functions for getting JIT information from the stack frame. * src/vm/jit/sparc64/linux/md-os.c: Fixed icache flushing when start address is not doubleword aligned. 2007-01-23 13:05 twisti * src/vm/jit/mips/emit.c (emit_patcher_stubs): Use dseg_add_functionptr instead of dseg_add_address. 2007-01-22 20:16 twisti * src/native/vm/gnu/gnu_classpath_VMSystemProperties.c (postInit): Added missing file://. 2007-01-22 17:25 twisti * src/cacao/cacao.c (main): Fixed typo. 2007-01-22 17:22 twisti * src/lib/vm/reference/gnu/classpath/VMSystemProperties.java: New file. * src/lib/Makefile.am (VM_JAVA_FILES): Added gnu/classpath/VMSystemProperties.java. (VM_CLASS_FILES): Likewise. * src/native/include/Makefile.am (VM_ZIP): Added. (DO_HEADER_FILES): Depend on VM_ZIP. 2007-01-22 17:03 twisti * src/vm/properties.c (properties_get): Search list forward, as we don't have duplicate entries anymore. (properties_system_add): New function. * src/vm/properties.h (properties_system_add): Added. * src/native/vm/gnu/gnu_classpath_VMSystemProperties.c (postInit): New function. 2007-01-22 15:59 twisti * src/vm/jit/mips/md.c (md_get_method_patch_address): Fixed compiler warning. 2007-01-22 14:02 twisti * src/cacao/cacao.c (main): Fixed compiler warning. 2007-01-22 11:45 twisti * src/vm/jit/arm/codegen.c (vm/jit/md.h): Added. * src/vm/jit/arm/patcher.c (vm/jit/md.h): Likewise. 2007-01-22 01:43 ajordan * src/vm/jit/sparc64/codegen.h: Fixed big disp handling. * src/vm/jit/sparc64/codegen.c: Likewise. 2007-01-22 00:58 twisti * src/vm/jit/jit.h (md_init, md_get_method_patch_address,) (md_cacheflush, md_icacheflush, md_dcacheflush, intrp_md_init): Removed. * src/vm/jit/md.h: New file. * src/vm/jit/Makefile.am (noinst_HEADERS): Added md.h. * src/vm/jit/jit.c (vm/jit/md.h): Added. * src/vm/jit/codegen-common.c (vm/jit/md.h): Likewise. * src/vm/vm.c (vm/jit/md.h): Likewise. 2007-01-19 01:13 edwin * src/vm/options.h, src/vm/method.c, src/vm/jit/inline/inline.c, src/vm/jit/jit.c, src/vm/vm.c, src/vm/linker.c, src/vm/options.c, src/cacaoh/headers.c: Cleaned up inlining options. * src/vm/exceptions.c: Removed a left-over use of "useinlining". * configure.ac: New configure flag --enable-inlining-debug. 2007-01-18 13:21 twisti * src/vm/jit/arm/md-asm.h: Renamed argument defines to start with 0. * src/vm/jit/arm/asmpart.S: Likewise. 2007-01-18 13:11 twisti * src/vm/vm.c (usage): Removed CACAO options. (XXusage): New function. (vm_create): Handle OPT_XX. 2007-01-18 12:55 twisti * src/vm/jit/powerpc/asmpart.S (asm_compare_and_swap): New function. (asm_memory_barrier): Likewise. 2007-01-18 11:43 twisti * src/vm/jit/mips/md-asm.h (RESTORE_ARGUMENT_REGISTERS) (RESTORE_ARGUMENT_REGISTERS, SAVE_TEMPORARY_REGISTERS) (RESTORE_TEMPORARY_REGISTERS): Added missing float registers. * src/vm/jit/mips/asmpart.S (asm_patcher_wrapper): Changed stack size for float registers. 2007-01-16 22:18 pm Initial import of s390 codegen, codebase is copyed from x86_64. 2007-01-16 12:59 twisti * src/cacaoh/headers.c (asm_compare_and_swap): Added. (asm_memory_barrier): Likewise. 2007-01-16 12:52 twisti * src/vm/jit/x86_64/asmpart.S (asm_patcher_wrapper): Removed unused sizestackframeinfo. 2007-01-16 09:54 twisti * src/vm/jit/asmpart.h (asm_compare_and_swap): Added. (asm_memory_barrier): Likewise. * src/vm/jit/alpha/asmpart.S (asm_compare_and_swap): New function. (asm_memory_barrier): Likewise. 2007-01-15 10:28 twisti * src/vm/jit/powerpc64/codegen.c (codegen): Ported replacement. 2007-01-13 22:54 edwin * src/vm/jit/verify/typecheck-typeinferer.c: Check basic types in debug mode. 2007-01-13 22:44 edwin * src/vm/jit/verify/generate.pl: Further changes for the type inferer. * src/vm/jit/verify/typecheck-typeinferer-gen.inc: Regenerated. 2007-01-13 22:39 edwin * src/vm/rt-timing.h: Fixed position of #include "config.h". (rt_timing_diff_usec): Export. * src/vm/rt-timing.c (rt_timing_diff_usec): Export. 2007-01-13 22:37 edwin * src/vm/jit/jit.c (jit_compile_intern): Removed unused code and fixed instrumentation. 2007-01-13 22:30 edwin * src/vm/jit/inline/inline.c: Better inlining decisions. Implemented knapsack heuristics. More statistics. Refactoring and fixes. * src/vm/jit/inline/inline_debug.inc: Fixed to make it compile. 2007-01-13 16:52 ajordan * src/vm/jit/sparc64/md-abi.h: The JIT stackframes now also includes the 6 parameter slots required when doing a ABI compliant C call. * src/vm/jit/sparc64/emit.c: Likewise. * src/vm/jit/sparc64/codegen.c: Likewise. * src/vm/jit/sparc64/patcher.c: Likewise. * src/vm/jit/sparc64/asmpart.S: Likewise. * src/vm/jit/sparc64/codegen.h: Added include. * src/vm/jit/sparc64/md.c: Added method, to get framepointer from saved register window. (for temporary fix in JIT stack walking) 2007-01-12 17:13 twisti * src/vm/jit/arm/linux/md-os.c (md_signal_handler_sigsegv): Use codegen_get_pv_from_pc. 2007-01-11 22:39 twisti * src/vm/jit/mips/md-abi.h: Merged MIPS32 code. * src/vm/jit/mips/emit.c: Likewise. * src/vm/jit/mips/codegen.c: Likewise. * src/vm/jit/mips/codegen.h: Likewise. * src/vm/jit/mips/linux/md-os.c: Likewise. * src/vm/jit/mips/asmpart.S: Likewise. * src/vm/jit/mips/md-abi.c: Likewise. 2007-01-11 22:36 twisti * src/mm/memory.c (mem_realloc): Fixed compiler warning. 2007-01-11 14:59 twisti * file:///ahome/cacao/svn/cacao-m68k/trunk: Moved to... * file:///ahome/cacao/svn/cacao/trunk/src/vm/jit/m68k: ...here. 2007-01-11 14:28 twisti * src/vm/exceptions.c (exceptions_throw_internalerror): Don't return a value. (exceptions_throw_outofmemoryerror): Likewise. 2007-01-11 14:22 twisti * src/vm/jit/arm/emit.c (emit_exception_stubs): Renamed eref to er, use md_codegen_patch_branch. * src/vm/jit/arm/codegen.c (codegen): Use codegen_resolve_branchrefs, use exceptions_throw_internalerror. * src/vm/jit/arm/codegen.h (M_STACK_LOAD_FLT_TYPED): Removed. (M_STACK_STORE_FLT_TYPED): Likewise. 2007-01-11 14:19 twisti * configure.ac [ENABLE_STATICVM] (AC_CHECK_LIB(dl)): Only perform the check if we want a static VM. (AC_CONFIG_FILES): Added src/vm/jit/arm/Makefile and src/vm/jit/arm/linux/Makefile. * src/vm/jit/Makefile.am (DIST_SUBDIRS): Added arm. 2007-01-11 13:58 twisti * Moved loaded arm files. 2007-01-10 10:08 twisti * src/vm/builtin.c (builtin_newarray): Removed debug output. 2007-01-10 10:03 twisti * src/vm/suck.c (suck_add): Use vm_abort instead of throw_cacao_exception_exit. (suck_float, suck_double): Use exceptions_throw_internalerror. * src/vm/loader.c (load_class_bootstrap): Use vm_abort instead of throw_cacao_exception_exit. * src/vm/jit/sparc64/emit.c (emit_patcher_stubs): Likewise. * src/vm/jit/mips/md.c (md_patch_replacement_point): Likewise. * src/vm/vm.c (vm_create): Likewise. * src/vm/builtin.c (builtin_newarray): Use exceptions_throw_outofmemoryerror. * src/vm/descriptor.c (descriptor_pool_lookup_classref): Use exceptions_throw_internalerror. * src/vm/classcache.c (classcache_store_unique): Likewise. * src/vm/jit/powerpc/codegen.c (codegen): Likewise. * src/vm/jit/sparc64/codegen.c (codegen): Likewise. * src/vm/jit/alpha/codegen.c (codegen): Likewise. * src/vm/jit/mips/codegen.c (codegen): Likewise. * src/vm/jit/i386/codegen.c (codegen): Likewise. * src/vm/jit/powerpc64/codegen.c (codegen): Likewise. * src/vm/jit/intrp/codegen.c (codegen): Likewise. * src/vm/jit/x86_64/codegen.c (codegen): Likewise. * src/vm/jit/stack.c (stack_reanalyse_block): Likewise. (stack_analyse): Likewise. * src/vm/jit/verify/typeinfo.c (typeinfos_init_from_methoddesc): Likewise. (typeinfo_init_component): Likewise. * src/vm/jit/verify/typecheck-builtins.inc: Likewise. * src/vm/jit/allocator/lsra.c (lsra_scan_registers_canditates): Likewise. * src/vm/jit/allocator/simplereg.c (simplereg_allocate_temporaries): Likewise. * src/vm/jit/allocator/liveness.c (liveness_scan_registers_canditates): Likewise. * src/vm/exceptions.c (exceptions_throw_outofmemory_exit): Removed. (new_internalerror): Removed. (exceptions_throw_internalerror): Rewritten. (exceptions_throw_outofmemoryerror): Added. * src/vm/exceptions.h: Likewise. * src/vm/utf8.c (utf_get_number_of_u2s): Use exceptions_throw_internalerror instead of throw_cacao_exception_exit. * src/native/native.c (native_init): Changed debug output. * src/mm/memory.c (memory_checked_alloc): Use vm_abort instead of exceptions_throw_outofmemory_exit. (mem_realloc): Changed debug output. * src/mm/boehm.c (gc_out_of_memory): Use vm_abort and exceptions_throw_outofmemoryerror. * src/cacaoh/cacaoh.c (cacaoh_abort): Added. (main): Use cacaoh_abort. * src/cacaoh/headers.c (throw_cacao_exception_exit): Removed. (exceptions_throw_outofmemory_exit): Likewise. (new_internalerror): Renamed to exceptions_throw_internalerror. (exceptions_throw_outofmemoryerror): Added. * src/vm/jit/tools/genoffsets.c (main): Don't print sizestackframeinfo. 2007-01-10 09:28 twisti * src/vm/jit/parisc/linux/Makefile.am (libmd_la_SOURCES): Commented. 2007-01-08 23:49 twisti * configure.ac: Added GPL header. 2007-01-08 23:48 twisti * src/vm/vm.c (vm_create): Fixed off-by-one bug. 2007-01-08 16:56 ajordan * src/vm/jit/sparc64/codegen.c: Fixed argument passing via the stack (for JIT methods). 2007-01-07 20:56 ajordan * src/vm/jit/sparc64/codegen.c: Implemented INSTANCEOF and CHECKCAST ICMDs * src/vm/jit/sparc64/patcher.c: and their respective patchers. * src/vm/jit/sparc64/codegen.h: Added comparison instructions. * src/vm/jit/sparc64/linux/md-os.c: Implemented instruction cache flush for linux. * src/vm/jit/sparc64/md.c: Likewise. 2007-01-06 14:29 twisti * configure.ac: Check for libdl. 2007-01-06 14:27 twisti * src/cacao/cacao.c (main): Print function name in error output. 2007-01-06 01:27 edwin * src/vm/jit/inline/inline.c: Many refactorings and comments. 2007-01-04 21:48 twisti * src/mm/memory.c (mem_realloc): Use vm_abort. 2007-01-03 22:39 edwin * src/vm/jit/verify/typecheck-typeinferer.c: New type inference pass. * src/vm/jit/verify/typecheck-typeinferer.h: Likewise. * src/vm/jit/verify/typecheck-common.c: Moved code from typecheck.c that can be shared between the variables-based verifier and the type inference pass to this file. * src/vm/jit/verify/typecheck-common.h: Likewise. * src/vm/jit/verify/typecheck-multianewarray.inc: Moved code for type checking/infering MULTIANEWARRAY to this file. * src/vm/jit/verify/icmds.c: Adapted for generating the type infererence pass. * src/vm/jit/verify/typecheck-invoke.inc: Likewise. * src/vm/jit/verify/typecheck-fields.inc: Likewise. * src/vm/jit/verify/typecheck.c: Likewise. * src/vm/jit/verify/Makefile.am: Likewise. * src/vm/jit/verify/typecheck-builtins.inc: Likewise. * src/vm/jit/verify/typecheck-typeinferer-gen.inc: Generated. * src/vm/jit/verify/typecheck-stackbased-gen.inc: Regenerated. * src/vm/jit/verify/typecheck-variablesbased-gen.inc: Regenerated. 2007-01-03 22:22 edwin * src/vm/jit/verify/icmds.c: Added comments. * src/vm/jit/verify/typecheck-stackbased-gen.inc, src/vm/jit/verify/typecheck-variablesbased-gen.inc: Regenerated. 2007-01-03 22:20 edwin * src/vm/method.c, src/vm/method.h (method_count_implementations): New function. 2007-01-03 22:08 edwin * src/vm/jit/verify/generate.pl: Added options --typeinferer and --debug. Prepared for generating the type inference pass. 2007-01-02 21:52 twisti * configure.ac (AC_CONFIG_FILES): Added src/vm/jit/parisc/linux/Makefile. * src/vm/jit/parisc/Makefile.am (SUBDIRS): Set to $(OS_DIR). * src/vm/jit/parisc/linux/Makefile.am: New file. 2007-01-02 21:12 edwin * src/vm/jit/emit-common.h (emit_replacement_stubs): Only declare prototype if ENABLE_REPLACEMENT. 2007-01-02 21:11 edwin * src/vm/jit/mips/codegen.c (codegen): Use REPLACEMENT_ macros. 2007-01-02 20:50 edwin * src/vm/jit/jit.c (jit_invalidate_code): Require ENABLE_REPLACEMENT. 2007-01-02 20:40 edwin * configure.ac: Added option --enable-replacement. * src/vm/jit/Makefile.am: Compile replace.c only for ENABLE_REPLACEMENT. * src/vm/jit/replace.h: Define empty macros unless ENABLE_REPLACEMENT. * src/vm/jit/powerpc/emit.c: Enclosed replacement-specific code in #if ENABLE_REPLACEMENT. * src/vm/jit/powerpc/md.c: Likewise. * src/vm/jit/powerpc/asmpart.S: Likewise. * src/vm/jit/codegen-common.h: Likewise. * src/vm/jit/sparc64/emit.c: Likewise. * src/vm/jit/sparc64/md.c: Likewise. * src/vm/jit/alpha/emit.c: Likewise. * src/vm/jit/alpha/md.c: Likewise. * src/vm/jit/alpha/asmpart.S: Likewise. * src/vm/jit/code.c: Likewise. * src/vm/jit/code.h: Likewise. * src/vm/jit/tools/genoffsets.c: Likewise. * src/vm/jit/show.c: Likewise. * src/vm/jit/mips/emit.c: Likewise. * src/vm/jit/mips/md.c: Likewise. * src/vm/jit/mips/asmpart.S: Likewise. * src/vm/jit/powerpc64/md.c: Likewise. * src/vm/jit/powerpc64/asmpart.S: Likewise. * src/vm/jit/i386/emit.c: Likewise. * src/vm/jit/i386/md.c: Likewise. * src/vm/jit/i386/asmpart.S: Likewise. * src/vm/jit/asmpart.h: Likewise. * src/vm/jit/x86_64/emit.c: Likewise. * src/vm/jit/x86_64/md.c: Likewise. * src/vm/jit/x86_64/asmpart.S: Likewise. * src/vm/jit/codegen-common.c: Likewise. * src/vm/jit/jit.h: Likewise. 2007-01-02 19:40 edwin * src/vm/jit/i386/codegen.c (codegen): Cleaned up to use REPLACEMENT_ macros. 2007-01-02 16:20 twisti * tests/regression/jctest.java: Print hex numbers too. * tests/regression/jctest.output: Updated.