* ChangeLog: Updated.
[cacao.git] / ChangeLog-2006
diff --git a/ChangeLog-2006 b/ChangeLog-2006
new file mode 100644 (file)
index 0000000..179abc0
--- /dev/null
@@ -0,0 +1,17620 @@
+2006-12-31 17:57  edwin
+
+       * src/vm/jit/inline/inline.c (test_inlining): Deactivated typechecking
+       of inlined result.
+
+2006-12-28 21:21  twisti
+
+       * src/vm/jit/alpha/disass.c (regs): Removed.
+       * src/vm/jit/alpha/md-abi.c (regs): Added.
+
+2006-12-28 20:56  twisti
+
+       * src/vm/jit/i386/disass.c (regs): Removed.
+       * src/vm/jit/i386/md-abi.c (regs): Added.
+
+2006-12-28 20:50  twisti
+
+       * src/vm/jit/x86_64/disass.c (regs): Removed.
+       * src/vm/jit/x86_64/md-abi.c (regs): Added.
+
+2006-12-28 15:38  twisti
+
+       * src/native/include/Makefile.am (NO_GEN_JAVASE_HEADER_FILES): Removed
+       java_lang_Object.h.
+       (JAVASE_HEADER_FILES): Added java_lang_Object.h.
+       * src/native/include/.cvsignore: Likewise.
+       * src/native/include/java_lang_VMObject.h: Removed.
+
+2006-12-28 13:43  twisti
+
+       * tests/regression/Makefile.am,
+       tests/regression/codepatching/Makefile.am,
+       tests/regression/jasmin/Makefile.am,
+       tests/regression/native/Makefile.am (JAVAFLAGS) [WITH_CLASSPATH_GNU]:
+       Set differently for GNU Classpath.
+
+2006-12-28 12:30  twisti
+
+       * src/mm/memory.c (memory_mmap_anon): Fixed indentation and a debug
+       typo.
+       * src/vm/signal.c (signal_init): Removed unused variable.
+
+2006-12-28 11:57  twisti
+
+       * src/fdlibm/fdlibm.h (exception): Commented since it was already
+       defined on
+       IRIX (don't know where).
+
+2006-12-28 00:19  twisti
+
+       * src/threads/native/threads.c (threads_attach_current_thread): Fixed
+       compiler warning.
+       (threads_detach_thread): Likewise.
+       (threads_find_non_daemon_thread): Fixed bug, we returned the wrong
+       threads.
+
+2006-12-27 23:54  twisti
+
+       * src/threads/native/threads.c (threads_init): Fixed another typo.
+
+2006-12-27 23:42  twisti
+
+       * src/threads/native/threads.c (threads_init): Fixed typo.
+       
+       * src/native/jni.c (native/include/java_lang_ClassLoader.h): Added.
+       * src/native/vm/gnu/java_lang_VMRuntime.c: Likewise.
+
+2006-12-27 23:15  twisti
+
+       * src/vm/class.c [ENABLE_JAVASE] (arrayclass_java_lang_Object): Added
+       #ifdef.
+       * src/vm/class.h: Likewise.
+       
+       * src/vm/loader.c: Java ME changes.
+       
+       * src/vm/finalizer.c (finalizer_start_thread): Set flags.
+       * src/vm/jit/optimizing/recompile.c (recompile_start_thread):
+       Likewise.
+       
+       * src/vm/jit/stacktrace.c [ENABLE_JAVASE] (stacktrace_getStack): Added
+       #ifdef.
+       
+       * src/vm/jit/codegen-common.c (codegen_start_native_call)
+       [ENABLE_JAVASE]: #ifdef'ed the local references table stuff (maybe we
+       need to change that for cacao-gc).
+       (codegen_finish_native_call): Likewise.
+       
+       * src/vm/exceptions.c (exceptions_asm_new_abstractmethoderror)
+       [!ENABLE_JAVASE]: In the meantime we throw a VirtualMachineError.
+       * src/vm/exceptions.h: Likewise.
+       
+       * src/vm/linker.c: Java ME changes.
+       
+       * src/native/native.c: Likewise.
+       * src/native/native.h: Likewise.
+       
+       * src/threads/native/threads.h (THREAD_FLAG_DAEMON): Added.
+       (threadobject): Changed flags to u4.
+       * src/threads/native/threads.c: A lot of Java ME changes.
+
+2006-12-27 23:05  twisti
+
+       * src/vm/jit/powerpc/emit.c (emit_verbosecall_enter) [!NDEBUG]: We
+       also define the function with NDEBUG, but empty.
+       (emit_verbosecall_exit): Likewise.
+       * src/vm/jit/powerpc/codegen.c (codegen): Removed
+       JITDATA_HAS_FLAG_VERBOSECALL from emit_verbosecall calls.
+
+2006-12-27 23:00  twisti
+
+       * src/vm/properties.c (properties_init) [ENABLE_JAVAME_CLDC1_1]: Set
+       values as Sun's JVM does.
+
+2006-12-27 22:39  twisti
+
+       * src/vm/jit/stacktrace.c: Java ME changes.
+       * src/vm/jit/stacktrace.h: Likewise.
+
+2006-12-27 22:31  twisti
+
+       * tests/regression/Makefile.am: Renamed CLASSPATH_GLIBJ_ZIP to
+       CLASSPATH_CLASSES.
+       * tests/regression/codepatching/Makefile.am: Likewise.
+       * tests/regression/jasmin/Makefile.am: Likewise.
+       * tests/regression/native/Makefile.am: Likewise.
+
+2006-12-27 21:13  ajordan
+
+       * src/vm/jit/sparc64/asmpart.S: Some fixes for exception handling.
+       * src/vm/jit/sparc64/codegen.c: Likewise.
+
+2006-12-27 15:22  twisti
+
+       * contrib/setenvinstalled.in: Renamed CLASSPATH_GLIBJ_ZIP to
+       CLASSPATH_CLASSES.
+       * contrib/setenvsource.in: Likewise.
+
+2006-12-27 15:15  twisti
+
+       * src/vm/class.c: Java ME changes.
+       * src/vm/class.h: Likewise.
+       * src/vm/exceptions.c: Likewise.
+       (exceptions_new_virtualmachineerror): New function.
+       (exceptions_throw_virtualmachineerror):
+       * src/vm/exceptions.h: Likewise.
+       * src/vm/resolve.c: Likewise.
+       * src/vm/utf8.c: Likewise.
+       * src/vm/utf8.h: Likewise.
+       * src/cacaoh/headers.c: Likewise.
+
+2006-12-27 13:56  twisti
+
+       * configure.ac (--with-classpath-glibj-zip): Renamed to
+       --with-classpath-classes.
+       
+       * m4/ac_prog_javac.m4 (AC_PROG_JAVAC): Renamed CLASSPATH_GLIBJ_ZIP to
+       CLASSPATH_CLASSES.
+       
+       * src/Makefile.am (VM_DIR): Added.
+       (SUBDIRS): Use VM_DIR.
+       
+       * src/native/include/Makefile.am [WITH_CLASSPATH_GNU] (CLASSPATH): Set
+       differently for non-gnu classpaths.
+       
+       * src/cacaoh/cacaoh.c (main) [WITH_CLASSPATH_GNU]: Likewise.
+       * src/vm/vm.c (vm_create): Likewise.
+
+2006-12-27 00:08  twisti
+
+       * src/fdlibm/fdlibm.h [!MAXFLOAT] (MAXFLOAT): Only define if not
+       already defined.
+       * src/fdlibm/k_tan.c: Commented pragma.
+
+2006-12-26 23:42  twisti
+
+       * src/vm/resolve.h (vm/class.h): Added.
+       (vm/method.h): Likewise.
+
+2006-12-26 23:41  twisti
+
+       * src/vm/exceptions.c (native/jni.h): Added.
+       (exceptions_init): Java ME changes.
+       (exceptions_print_exception): Likewise.
+       * src/vm/exceptions.h (native/jni.h): Added.
+
+2006-12-26 23:39  twisti
+
+       * src/vm/properties.c [ENABLE_JAVASE]
+       (native/include/java_util_Properties.h): Include conditionally.
+       * src/vm/properties.h: Likewise.
+
+2006-12-26 23:34  twisti
+
+       * src/native/include/Makefile.am (CLEANFILES): Added
+       JAVASE_HEADER_FILES and JAVAME_CLDC1_1_HEADER_FILES.
+       (cleanall): New target to clean all header files.
+
+2006-12-26 23:26  twisti
+
+       * src/native/include/Makefile.am: Java ME changes.
+       * src/native/include/.cvsignore: Likewise.
+
+2006-12-26 23:21  twisti
+
+       * src/native/Makefile.am [ENABLE_JAVASE] (JNI_SOURCES): Added.
+       (libnative_la_SOURCES): Added JNI_SOURCES.
+
+2006-12-26 23:16  twisti
+
+       * configure.ac (--with-classpath): Added cldc1.1 target.
+       (AC_CONFIG_FILES): Added src/native/vm/cldc1.1/Makefile.
+
+2006-12-26 23:14  twisti
+
+       * src/native/vm/java_lang_Thread.h,
+       src/native/vm/java_lang_Class.c,
+       src/native/vm/java_lang_Object.c,
+       src/native/vm/java_lang_Thread.c,
+       src/native/vm/java_lang_Class.h,
+       src/native/vm/java_lang_Object.h: Java ME changes.
+
+2006-12-26 23:13  twisti
+
+       * src/native/vm/Makefile.am (DIST_SUBDIRS): Added cldc1.1.
+       (NATIVEVM_LIB): Renamed to libnativevmcore.
+       * src/native/vm/gnu/Makefile.am (noinst_LTLIBRARIES): Likewise.
+       (libnativevmgnu_la_SOURCES): Renamed to libnativevmcore_la_SOURCES.
+
+2006-12-26 23:09  twisti
+
+       * src/native/vm/cldc1.1/.cvsignore: Added.
+       * src/native/vm/cldc1.1/com_sun_cldchi_io_ConsoleOutputStream.c,
+       src/native/vm/cldc1.1/java_lang_Runtime.c,
+       src/native/vm/cldc1.1/java_lang_System.c,
+       src/native/vm/cldc1.1/java_lang_Class.c,
+       src/native/vm/cldc1.1/java_lang_Float.c,
+       src/native/vm/cldc1.1/java_lang_Object.c,
+       src/native/vm/cldc1.1/java_lang_String.c,
+       src/native/vm/cldc1.1/Makefile.am,
+       src/native/vm/cldc1.1/java_lang_Thread.c,
+       src/native/vm/cldc1.1/java_lang_Throwable.c,
+       src/native/vm/cldc1.1/java_lang_Math.c,
+       src/native/vm/cldc1.1/java_lang_Double.c: New file.
+
+2006-12-26 23:05  twisti
+
+       * src/fdlibm/Makefile.am [ENABLE_JAVAME_CLDC1_1]
+       (libfdlibm_la_SOURCES): Added the following files.
+       
+       * src/fdlibm/k_cos.c,
+       src/fdlibm/s_ceil.c,
+       src/fdlibm/k_sin.c,
+       src/fdlibm/s_floor.c,
+       src/fdlibm/s_tan.c,
+       src/fdlibm/s_cos.c,
+       src/fdlibm/s_sin.c,
+       src/fdlibm/w_sqrt.c,
+       src/fdlibm/e_rem_pio2.c,
+       src/fdlibm/k_rem_pio2.c,
+       src/fdlibm/k_tan.c,
+       src/fdlibm/e_sqrt.c: New file.
+
+2006-12-26 22:33  twisti
+
+       * src/fdlibm/s_finite.c,
+       src/fdlibm/fdlibm.h,
+       src/fdlibm/ieeefp.h,
+       src/fdlibm/e_fmod.c,
+       src/fdlibm/mprec.h,
+       src/fdlibm/w_fmod.c,
+       src/fdlibm/s_copysign.c: Updated from GNU Classpath.
+
+2006-12-26 19:56  twisti
+
+       * src/threads/native/threads.c: Rewritten such that threadobject
+       extends a java.lang.Thread object instead of java.lang.VMThread.
+       * src/threads/native/threads.h: Likewise.
+       
+       * src/vm/finalizer.c (finalizer_vmthread): Renamed to thread_finalizer
+       and changed type to threadobject*.
+       (lock_finalizer_thread): Renamed to lock_thread_finalizer.
+       (finalizer_init): Changed variable names.
+       (finalizer_start_thread): Thread-code changes.
+       
+       * src/vm/jit/optimizing/recompile.c (recompile_vmthread): Renamed to
+       thread_recompile and changed type to threadobject*.
+       (lock_recompile_thread): Renamed to lock_thread_recompile.
+       (recompile_init): Changed variable names.
+       (recompile_thread): Likewise.
+       (recompile_queue_method): Likewise.
+       (recompile_start_thread): Thread-code changes.
+       
+       * src/vm/utf8.c (utf_addThread): Added.
+       * src/vm/utf8.h: Likewise.
+       
+       * src/lib/vm/reference/java/lang/VMThread.java (create): Set vmThread
+       before calling start.
+       
+       * src/native/vm/gnu/java_lang_VMThread.c: Call _Jv_java_lang_Thread
+       functions.
+       
+       * src/native/vm/Makefile.am (libnativevm_la_SOURCES): Added
+       java_lang_Thread.[ch].
+       * src/native/vm/java_lang_Thread.c: New file.
+       * src/native/vm/java_lang_Thread.h: Likewise.
+
+2006-12-26 19:41  twisti
+
+       * src/vm/annotation.c
+       (annotation_load_attribute_runtimevisibleannotations): Renamed aev to
+       element_value.
+
+2006-12-26 19:40  twisti
+
+       * src/native/include/java_lang_Thread.h: Updated to current GNU
+       Classpath head.
+       * src/native/include/java_lang_VMThread.h: Likewise.
+
+2006-12-26 19:30  twisti
+
+       * src/threads/native/lock.c (lock_wait_for_object): Renamed t to
+       thread.
+       (lock_notify_object): Likewise.
+       (lock_notify_all_object): Likewise.
+
+2006-12-23 23:52  twisti
+
+       * configure.ac (--with-classpath): Added.
+
+2006-12-21 15:59  twisti
+
+       * src/native/vm/java_lang_Object.c (wait): Removed debugging output.
+
+2006-12-21 15:56  twisti
+
+       * src/native/vm/Makefile.am (libnativevm_la_SOURCES): Added
+       java_lang_Class.h and java_lang_Object.[ch].
+       
+       * src/native/vm/java_lang_Object.c: New file.
+       * src/native/vm/java_lang_Object.h: Likewise.
+       
+       * src/native/vm/gnu/java_lang_VMObject.c: Call _Jv_java_lang_Object
+       functions.
+
+2006-12-19 19:20  twisti
+
+       * src/mm/memory.c (memory_mmap_anon): New function.
+       (memory_cnew): Use memory_mmap_anon.
+       * src/mm/memory.h (memory_mmap_anon): Added.
+       * src/vm/signal.c (signal_init): Use memory_mmap_anon.
+
+2006-12-19 19:12  twisti
+
+       * src/native/vm/java_lang_Class.h
+       (_Jv_java_lang_Class_getEnclosingConstructor): Removed #if 0.
+
+2006-12-18 18:21  twisti
+
+       * src/vm/class.c (vm/suck.h): Added.
+       (class_load_attribute_sourcefile): New function.
+       (class_load_attribute_enclosingmethod): Likewise.
+       (class_load_attributes): Likewise.
+       
+       * src/vm/loader.c [ENABLE_JAVASE] (vm/annotation.h, vm/stackmap.h):
+       Added.
+       (skipattributebody): Renamed to loader_skip_attribute_body, made
+       non-static.
+       (skipattributes): Removed.
+       (loader_load_attribute_signature): New function.
+       (load_field): Use loader_load_attribute_signature.
+       (load_method): Renamed to loader_load_method, call
+       stackmap_load_attribute_stackmaptable and
+       loader_load_attribute_signature.
+       (load_attributes): Removed.
+       (load_class_from_classbuffer): Renamed load_method to
+       loader_load_method and load_attributes to class_load_attributes.
+       * src/vm/loader.h (loader_skip_attribute_body): Added.
+       [ENABLE_JAVASE] (loader_load_attribute_signature): Likewise.
+       
+       * src/vm/method.h [ENABLE_JAVASE] (vm/stackmap.h): Added.
+       (methodinfo) [ENABLE_JAVASE]: Added signature and stack_map.
+       
+       * src/vm/statistics.c (size_stack_map): Added.
+       (print_stats): Print stack_map size.
+       * src/vm/statistics.h (size_stack_map): Likewise.
+       
+       * src/vm/global.h (JAVA_VERSION): Changed to "1.5.0".
+       (CLASS_VERSION): Changed to "50.0".
+       (MAJOR_VERSION): Changed to 50.
+       
+       * src/vm/utf8.c [ENABLE_JAVASE] (utf_EnclosingMethod)
+       (utf_RuntimeVisibleAnnotations, utf_StackMapTable): Added.
+       (utf8_init) [ENABLE_JAVASE]: Init utf_EnclosingMethod,
+       utf_RuntimeVisibleAnnotations and utf_StackMapTable.
+       * src/vm/utf8.h [ENABLE_JAVASE] (utf_EnclosingMethod)
+       (utf_RuntimeVisibleAnnotations, utf_StackMapTable): Added.
+       
+       * src/vm/properties.c (properties_init): Changed
+       java.specification.version to 1.5.
+       
+       * src/vm/Makefile.am [ENABLE_JAVASE] (ANNOTATION_OBJ): Renamed to
+       ANNOTATION_SOURCES.
+       [ENABLE_JAVASE] (STACKMAP_SOURCES): Added.
+       [ENABLE_STATISTICS] (STATISTICS_OBJ): Renamed to STATISTICS_SOURCES.
+       (libvmcore_la_SOURCES): Added STACKMAP_SOURCES.
+       * src/vm/stackmap.c: New file.
+       * src/vm/stackmap.h: Likewise.
+
+2006-12-18 18:04  twisti
+
+       * src/native/vm/gnu/.cvsignore: New file.
+
+2006-12-18 17:36  twisti
+
+       * src/vm/class.h (vm/loader.h): Added.
+       (classinfo): Added enclosingclass and enclosingmethod.
+       
+       * configure.ac (AC_CONFIG_FILES): Added src/native/vm/gnu/Makefile.
+       
+       * src/native/native.c (native_class_getname): Removed.
+       * src/native/native.h: Likewise.
+       
+       * src/native/vm/Makefile.am
+       
+       * src/native/vm/java_lang_Class.c: New file, contains the
+       implementation for java.lang.Class functions.
+       * src/native/vm/java_lang_Class.h: Likewise.
+       
+       * src/native/vm/java_security_VMAccessController.c,
+       src/native/vm/VMjdwp.c,
+       src/native/vm/java_lang_VMClass.c,
+       src/native/vm/gnu_java_lang_management_VMRuntimeMXBeanImpl.c,
+       src/native/vm/java_lang_VMThread.c,
+       src/native/vm/VMjdwp.h,
+       src/native/vm/gnu_classpath_jdwp_VMVirtualMachine.c,
+       src/native/vm/gnu_classpath_jdwp_VMMethod.c,
+       src/native/vm/java_lang_VMRuntime.c,
+       src/native/vm/java_lang_reflect_Field.c,
+       src/native/vm/gnu_java_lang_management_VMClassLoadingMXBeanImpl.c,
+       src/native/vm/java_lang_VMThrowable.c,
+       src/native/vm/gnu_java_lang_management_VMThreadMXBeanImpl.c,
+       src/native/vm/gnu_java_lang_management_VMMemoryMXBeanImpl.c,
+       src/native/vm/java_lang_VMClassLoader.c,
+       src/native/vm/java_lang_management_VMManagementFactory.c,
+       src/native/vm/java_lang_VMString.c,
+       src/native/vm/java_lang_VMObject.c,
+       src/native/vm/gnu_classpath_VMSystemProperties.c,
+       src/native/vm/sun_misc_Unsafe.c,
+       src/native/vm/java_lang_reflect_Method.c,
+       src/native/vm/gnu_classpath_VMStackWalker.c,
+       src/native/vm/java_lang_VMSystem.c,
+       src/native/vm/java_lang_reflect_VMProxy.c,
+       src/native/vm/java_lang_reflect_Constructor.c,
+       src/native/vm/gnu_classpath_jdwp_VMFrame.c: Moved to
+       src/native/vm/gnu.
+       
+       * src/native/vm/gnu/gnu_java_lang_management_VMThreadMXBeanImpl.c,
+       src/native/vm/gnu/gnu_java_lang_management_VMMemoryMXBeanImpl.c,
+       src/native/vm/gnu/java_security_VMAccessController.c,
+       src/native/vm/gnu/java_lang_VMClassLoader.c,
+       src/native/vm/gnu/java_lang_management_VMManagementFactory.c,
+       src/native/vm/gnu/VMjdwp.c,
+       src/native/vm/gnu/gnu_java_lang_management_VMRuntimeMXBeanImpl.c,
+       src/native/vm/gnu/java_lang_VMClass.c,
+       src/native/vm/gnu/java_lang_VMString.c,
+       src/native/vm/gnu/java_lang_VMObject.c,
+       src/native/vm/gnu/VMjdwp.h,
+       src/native/vm/gnu/java_lang_VMThread.c,
+       src/native/vm/gnu/gnu_classpath_jdwp_VMVirtualMachine.c,
+       src/native/vm/gnu/gnu_classpath_VMSystemProperties.c,
+       src/native/vm/gnu/sun_misc_Unsafe.c,
+       src/native/vm/gnu/gnu_classpath_jdwp_VMMethod.c,
+       src/native/vm/gnu/java_lang_reflect_Method.c,
+       src/native/vm/gnu/java_lang_VMRuntime.c,
+       src/native/vm/gnu/Makefile.am,
+       src/native/vm/gnu/java_lang_reflect_Field.c,
+       src/native/vm/gnu/gnu_classpath_VMStackWalker.c,
+       src/native/vm/gnu/java_lang_VMSystem.c,
+       src/native/vm/gnu/gnu_java_lang_management_VMClassLoadingMXBeanImpl.c,
+       src/native/vm/gnu/java_lang_reflect_VMProxy.c,
+       src/native/vm/gnu/java_lang_reflect_Constructor.c,
+       src/native/vm/gnu/gnu_classpath_jdwp_VMFrame.c,
+       src/native/vm/gnu/java_lang_VMThrowable.c: Moved from src/native/vm.
+
+2006-12-18 16:27  twisti
+
+       * src/vm/exceptions.c (exceptions_throw_internalerror): New function.
+       * src/vm/exceptions.h (exceptions_throw_internalerror): Added.
+
+2006-12-16 22:53  edwin
+
+       * src/vm/jit/jit.c (jit_compile_intern): Perform inlining if
+       JITDATA_FLAG_INLINE is set.
+       
+       * src/vm/jit/inline/inline.c: Put the result of inlining into
+       the passed jitdata, instead of using a new one. Do not translate
+       returnAddresses in javalocals. It makes no sense.
+       
+       * src/vm/jit/i386/codegen.h (M_BS): New macro.
+       
+       * src/vm/jit/replace.h (RPLPOINT_FLAG_COUNTDOWN): New constant.
+       (Preparation for count-down replacement).
+       
+       * src/vm/jit/jit.h (JITDATA_FLAG_COUNTDOWN): New flag.
+       (JITDATA_HAS_FLAG_COUNTDOWN): New macro.
+
+2006-12-16 21:16  edwin
+
+       * src/vm/jit/replace.c (replace_patch_class): New function.
+       (replace_patch_class_hierarchy): New function.
+       (replace_patch_future_calls): Fall back to iterating over all loaded
+       classes if the instance of a call is not known.
+
+2006-12-16 21:14  edwin
+
+       * src/vm/classcache.c (classcache_foreach_loaded_class): New function.
+       
+       * src/vm/classcache.h (classcache_foreach_loaded_class): Likewise.
+       (classcache_foreach_functionptr_t): New typedef.
+
+2006-12-16 21:12  edwin
+
+       * src/vm/jit/replace.c (replace_read_executionstate): Fix: Initialize
+       the javalocaltype array for NDEBUG.
+
+2006-12-16 21:11  edwin
+
+       * src/vm/jit/inline/inline.c: Relocate returnAddresses in javalocals
+       and in the s2 operand of ASTORE. Fix handling of in/out variables
+       of TYPE_RET.
+       
+       * src/vm/jit/allocator/simplereg.c (simplereg_new_temp): Assert that
+       constants (currently only TYPE_RET) are not allocated.
+       (simplereg_new_free): Assert that constants (currently only TYPE_RET)
+       are not freed.
+
+2006-12-16 20:59  edwin
+
+       * src/vm/jit/stack.c (stack_reanalyse_block): Zero line and flags of
+       the appended NOP.
+
+2006-12-16 20:57  edwin
+
+       * src/vm/jit/replace.c: Prepared for native frames.
+       
+       * src/vm/jit/replace.h: Likewise.
+       (REPLACEMENT_POINTS_RESET): Added.
+
+2006-12-16 20:51  edwin
+
+       * src/vm/jit/intrp/intrp.h: #include codegen-common.h
+
+2006-12-16 20:50  edwin
+
+       * src/vm/jit/inline/inline.c (create_body_block): Copy bitflags.
+       (test_inlining): Copy code->optlevel. This is a quick fix for a more
+       general problem: inline_inline should not swap the jitdata, but
+       instead
+       modify it in-place.
+       (inline_inline_intern): Activated speculative inlining code.
+
+2006-12-16 13:04  twisti
+
+       * src/vm/annotation.c
+       (annotation_load_attribute_runtimevisibleannotations): Extended
+       comment, removed #ifdef ENABLE_JAVASE.
+
+2006-12-15 23:54  twisti
+
+       * autogen.sh: Check for automake-1.1x.
+
+2006-12-15 23:53  twisti
+
+       * autogen.sh: Check for automake-1.1x.
+
+2006-12-13 23:04  twisti
+
+       * src/vm/signal.c (errno.h): Added.
+       (unistd.h): Likewise.
+       (sys/mman.h): Likewise.
+       [__DARWIN__] (sys/types.h): Likewise.
+       (signal_init): mmap a page at 0x0.
+
+2006-12-12 21:12  twisti
+
+       * src/vm/jit/powerpc/darwin/md-asm.h (replace_build_execution_state):
+       Defined.
+       (replace_free_safestack): Likewise.
+       
+       * src/vm/jit/powerpc/asmpart.S (L_replace_build_execution_state$stub):
+       Added.
+       (L_replace_free_safestack$stub): Likewise.
+
+2006-12-11 23:29  twisti
+
+       * src/vm/jit/mips/mips/emit.c (emit_arithmetic_check): Added iptr and
+       check INSTRUCTION_MUST_CHECK.
+       (emit_arrayindexoutofbounds_check): Likewise.
+       (emit_arraystore_check): Likewise.
+       (emit_classcast_check): Likewise.
+       (emit_nullpointer_check): Likewise.
+       (emit_exception_check): Likewise.
+       (emit_patcher_stubs): Likewise.
+       
+       * src/vm/jit/mips/mips/md.c (vm/exceptions.h): Added.
+       
+       * src/vm/jit/mips/mips/codegen.c (codegen): Pass iptr to
+       exception-emit functions.
+       
+       * src/vm/jit/mips/mips/irix/md-os.c (vm/jit/codegen-common.h): Added.
+       (md_signal_handler_sigsegv): Call codegen_get_pv_from_pc in
+       error-case.
+
+2006-12-11 20:31  twisti
+
+       * tests/regression/fp.output: Updated to classpath-0.93.
+       * tests/regression/fptest.output: Likewise.
+
+2006-12-11 20:16  twisti
+
+       * src/vm/jit/parse.c (MULTIANEWARRAY): Set check-flag.
+
+2006-12-11 19:55  twisti
+
+       * src/vm/jit/parse.c (CHECKCAST): Set check-flag.
+       [!SUPPORT_HARDWARE_DIVIDE_BY_ZERO] (IDIV, IREM, LDIV, LREM): Set
+       check-flag.
+
+2006-12-11 19:43  twisti
+
+       * src/vm/signal.c (signal_init): Use SUPPORT_HARDWARE_DIVIDE_BY_ZERO.
+       * src/vm/signallocal.h: Likewise.
+       
+       * src/vm/jit/alpha/arch.h (SUPPORT_HARDWARE_DIVIDE_BY_ZERO): Defined.
+       * src/vm/jit/i386/arch.h: Likewise.
+       * src/vm/jit/mips/arch.h: Likewise.
+       * src/vm/jit/powerpc/arch.h: Likewise.
+       * src/vm/jit/powerpc64/arch.h: Likewise.
+       * src/vm/jit/sparc64/arch.h: Likewise.
+       * src/vm/jit/x86_64/arch.h: Likewise.
+
+2006-12-11 04:25  ajordan
+
+       * src/vm/jit/sparc64/asmpart.S: Fixed some exception handling.
+       
+       * src/vm/jit/sparc64/patcher.c: Fixed order of patch words.
+       
+       * src/vm/jit/sparc64/md.c: Disp mask in branch patch was wrong.
+       
+       * src/vm/jit/sparc64/codegen.c: Put in ICMD_CHECKNULL.
+
+2006-12-11 00:28  twisti
+
+       * src/native/vm/java_lang_reflect_Constructor.c (getSignature):
+       Implemented.
+
+2006-12-10 23:20  twisti
+
+       * src/native/jni.h (_Jv_JavaVM): Renamed total_started_thread_count to
+       java_lang_management_ThreadMXBean_ThreadCount, added
+       java_lang_management_ThreadMXBean_PeakThreadCount,
+       java_lang_management_ThreadMXBean_TotalStartedThreadCount.
+       
+       * src/vm/vm.c (vm_run): Set ThreadMXBean variables.
+       * src/threads/native/threads.c (threads_startup_thread): Likewise.
+       
+       * src/native/vm/gnu_java_lang_management_VMThreadMXBeanImpl.c
+       (getPeakThreadCount): Implemented.
+       (getTotalStartedThreadCount): Use renamed variable.
+       (resetPeakThreadCount): Implemented.
+
+2006-12-10 22:17  twisti
+
+       * src/vm/jit/powerpc/emit.c (emit_arrayindexoutofbounds_check): Added
+       iptr and check INSTRUCTION_MUST_CHECK.
+       (emit_nullpointer_check): Likewise.
+       
+       * src/vm/jit/powerpc/codegen.c (codegen): Pass iptr to exception-emit
+       functions.
+
+2006-12-10 22:07  twisti
+
+       * src/vm/jit/alpha/emit.c (emit_arithmetic_check): Added iptr and
+       check INSTRUCTION_MUST_CHECK.
+       (emit_arrayindexoutofbounds_check): Likewise.
+       (emit_classcast_check): Likewise.
+       (emit_nullpointer_check): Likewise.
+       
+       * src/vm/jit/alpha/codegen.c (codegen): Pass iptr to exception-emit
+       functions.
+
+2006-12-10 21:50  twisti
+
+       * src/vm/jit/x86_64/emit.c (emit_arithmetic_check): Added iptr and
+       check INSTRUCTION_MUST_CHECK.
+       (emit_arrayindexoutofbounds_check): Likewise.
+       (emit_classcast_check): Likewise.
+       (emit_nullpointer_check): Likewise.
+       
+       * src/vm/jit/x86_64/codegen.c (codegen): Pass iptr to exception-emit
+       functions.
+
+2006-12-10 21:35  twisti
+
+       * src/vm/jit/emit-common.c (emit_array_checks): Pass iptr to emit
+       functions.
+       
+       * src/vm/jit/emit-common.h (emit_arithmetic_check): Added iptr.
+       (emit_arrayindexoutofbounds_check): Likewise.
+       (emit_arraystore_check): Likewise.
+       (emit_classcast_check): Likewise.
+       (emit_nullpointer_check): Likewise.
+       (emit_exception_check): Likewise.
+       
+       * src/vm/jit/i386/emit.c (emit_arithmetic_check): Added iptr and check
+       INSTRUCTION_MUST_CHECK.
+       (emit_arrayindexoutofbounds_check): Likewise.
+       (emit_classcast_check): Likewise.
+       (emit_nullpointer_check): Likewise.
+       
+       * src/vm/jit/i386/codegen.c (codegen): Pass iptr to exception-emit
+       functions.
+
+2006-12-10 21:27  twisti
+
+       * src/vm/jit/parse.c (ICMD_CHECKNULL): Use OP_CHECK_EXCEPTION.
+       * src/vm/jit/parse.h (OP_CHECK_EXCEPTION): New macro.
+
+2006-12-10 17:19  ajordan
+
+       * src/vm/jit/sparc64/codegen.h: Fixed float register mapping and
+       compare macros.
+       * src/vm/jit/sparc64/emit.c: Likewise.
+       
+       * src/vm/jit/sparc64/md.c: Fixed branch backpatching, was off by one.
+       * src/vm/jit/sparc64/codegen.c: replaced codegen_addreference() with
+       codegen_add_branch_ref().
+       
+       * src/vm/jit/sparc64/patcher.c: Tested and activated invokevirtual
+       patcher.
+
+2006-12-09 23:20  ajordan
+
+       * src/vm/jit/sparc64/codegen.h: Reworked float handling, single
+       precision floats are now stored in the upper half of the double pair.
+       
+       * src/vm/jit/sparc64/codegen.c: Fixes for argument handling and
+       get/put-static.
+       * src/vm/jit/sparc64/emit.c: Likewise.
+       * src/vm/jit/sparc64/md-abi.c: Likewise.
+       
+       * src/vm/jit/sparc64/asmpart.S(asm_call_jit_compiler): Fixed float
+       arg saving.
+
+2006-12-09 00:25  twisti
+
+       * src/vm/jit/powerpc/emit.c (emit_arrayindexoutofbounds_check):
+       Removed hardware-exception code.
+
+2006-12-08 00:39  edwin
+
+       * src/vm/jit/jit.h (JITDATA_FLAG_INLINE): Added.
+
+2006-12-08 00:20  edwin
+
+       * src/vm/jit/powerpc/codegen.c: Ported replacement.
+
+2006-12-08 00:17  edwin
+
+       * src/vm/jit/i386/asmpart.S: Adapted to new execution state layout.
+
+2006-12-08 00:16  edwin
+
+       * src/vm/jit/replace.h: Use a type union replace_val_t for all source
+       state values. Give the registers in the execution state meaningful
+       types. Properly convert float/double values.
+       * src/vm/jit/replace.c: Likewise.
+       
+       * src/vm/jit/powerpc/asmpart.S: Adapted to new execution state layout.
+       * src/vm/jit/i386/asmpart.S: Likewise.
+
+2006-12-08 00:07  edwin
+
+       * src/vm/jit/replace.c: Small cleanups.
+
+2006-12-08 00:06  edwin
+
+       * src/vm/jit/replace.c: Implemented support for linkage area.
+
+2006-12-08 00:04  edwin
+
+       * src/vm/jit/replace.c: Implement alpha-style stack frames (ra is at
+       top of frame, in leaf methods the ra register is used).
+
+2006-12-07 23:59  edwin
+
+       * src/vm/jit/alpha/codegen.c (codegen): Fix: Put the
+       REPLACEMENT_POINT_INVOKE_RETURN macro in the right place.
+
+2006-12-07 23:58  edwin
+
+       * src/vm/jit/alpha/codegen.c: Ported replacement.
+
+2006-12-07 23:57  edwin
+
+       * src/vm/jit/x86_64/codegen.c: Ported replacement.
+
+2006-12-07 23:54  edwin
+
+       * src/vm/jit/replace.h: Added macros for codegens.
+       
+       * src/vm/jit/replace.c: Architecture-independent patching of future
+       calls. Use a safe stack area for the final phase of replacement.
+       
+       * src/vm/jit/asmpart.h (asm_replacement_in): Got an additional
+       argument for the safe stack area.
+       
+       * src/vm/jit/powerpc/asmpart.S: Ported.
+       * src/vm/jit/alpha/asmpart.S: Likewise.
+       * src/vm/jit/i386/asmpart.S: Likewise.
+       * src/vm/jit/x86_64/asmpart.S: Likewise.
+
+2006-12-07 23:44  edwin
+
+       * src/vm/jit/replace.h (replace_safestack_t): Prepared declarations
+       for the safe stack area (not used, yet).
+       (sourceframe_t): Added from/to members.
+       
+       * src/vm/jit/replace.c: Major refactoring.
+
+2006-12-07 23:32  edwin
+
+       * src/vm/jit/replace.h (rplpoint): Removed members outcode, code,
+       mcode. Fixed bitwidth of regalloccount.
+       (replace_activate_replacement_points): Activate rplpoints per
+       codeinfo.
+       (replace_deactivate_replacement_points): Deactivate --''--.
+       * src/vm/jit/replace.c: Likewise.
+       * src/vm/jit/jit.c: Likewise.
+
+2006-12-07 23:17  edwin
+
+       * src/vm/jit/replace.h (rplpoint): Removed `target` member.
+       * src/vm/jit/replace.c: Likewise.
+       * src/vm/jit/jit.c: Likewise.
+
+2006-12-07 23:13  edwin
+
+       * src/vm/jit/codegen-common.c (codegen_finish): Relocate
+       code->replacementstubs, do not use rplpoint.outcode.
+
+2006-12-07 23:02  edwin
+
+       * src/vm/jit/powerpc/md.c (md_patch_replacement_point): Changed to use
+       an external array for saving machine code.
+       * src/vm/jit/sparc64/md.c: Likewise.
+       * src/vm/jit/alpha/md.c: Likewise.
+       * src/vm/jit/mips/md.c: Likewise.
+       * src/vm/jit/powerpc64/md.c: Likewise.
+       * src/vm/jit/i386/md.c: Likewise.
+       * src/vm/jit/x86_64/md.c: Likewise.
+       
+       * src/vm/jit/replace.h (md_patch_replacement_point): Added arguments.
+       * src/vm/jit/replace.c: Likewise.
+
+2006-12-07 22:48  edwin
+
+       * src/vm/jit/powerpc/md.c (md_patch_replacement_point): Deactivate
+       debug print.
+       * src/vm/jit/alpha/md.c: Likewise.
+
+2006-12-07 22:45  edwin
+
+       * src/vm/jit/powerpc/md.c (md_get_method_patch_address): Return NULL
+       if no mptr was specified and the call is dynamically dispatched.
+       * src/vm/jit/sparc64/md.c: Likewise.
+       * src/vm/jit/alpha/md.c: Likewise.
+       * src/vm/jit/mips/md.c: Likewise.
+       * src/vm/jit/i386/md.c: Likewise.
+       * src/vm/jit/powerpc64/md.c: Likewise.
+       * src/vm/jit/x86_64/md.c: Likewise.
+
+2006-12-07 22:30  edwin
+
+       * src/vm/jit/mips/emit.c: #include <assert.h>
+
+2006-12-07 22:29  edwin
+
+       * src/vm/jit/alpha/emit.c: #include <assert.h>
+       * src/vm/jit/x86_64/emit.c (emit_replacement_stubs): Ported.
+
+2006-12-07 22:25  edwin
+
+       * src/vm/jit/powerpc/emit.c (emit_replacement_stubs): Prepared for
+       removal of rplpoint.mcode.
+       * src/vm/jit/alpha/emit.c: Likewise.
+       * src/vm/jit/mips/emit.c: Likewise.
+       * src/vm/jit/i386/emit.c: Likewise.
+       * src/vm/jit/x86_64/emit.c: Likewise.
+
+2006-12-07 22:19  edwin
+
+       * src/vm/jit/powerpc/emit.c (emit_replacement_stubs): Do not
+       set rplp->outcode.
+       * src/vm/jit/alpha/emit.c: Likewise.
+       * src/vm/jit/mips/emit.c: Likewise.
+       * src/vm/jit/i386/emit.c: Likewise.
+       * src/vm/jit/x86_64/emit.c: Likewise.
+
+2006-12-07 20:39  edwin
+
+       * src/vm/jit/code.c (code_find_codeinfo_for_pc): New function.
+       * src/vm/jit/code.h (codeinfo): Added codeinfo flags,
+       replacementstubs,
+       and savedmcode.
+       
+       * src/vm/jit/jit.c (jit_invalidate_code): Use codeinfo flags.
+       (jit_get_current_code): Likewise.
+
+2006-12-07 20:14  edwin
+
+       * src/vm/jit/powerpc/arch.h (REPLACEMENT_PATCH_SIZE): Added.
+       (REPLACEMENT_STUB_SIZE): Added.
+       * src/vm/jit/sparc64/arch.h: Likewise.
+       * src/vm/jit/alpha/arch.h: Likewise.
+       * src/vm/jit/mips/arch.h: Likewise.
+       * src/vm/jit/parisc/arch.h: Likewise.
+       * src/vm/jit/powerpc64/arch.h: Likewise.
+       * src/vm/jit/i386/arch.h: Likewise.
+       * src/vm/jit/x86_64/arch.h: Likewise.
+
+2006-12-07 19:57  ajordan
+
+       * scr/vm/jit/sparc64/emit.c: Fixed M_XOR and iconst, lconst.
+       * src/vm/jit/sparc64/codegen.h: Likewise
+       
+       * src/vm/jit/sparc64/codegen.c: Allocating (ABI defined) param array
+       on stack before builtin call.
+
+2006-12-07 10:59  twisti
+
+       * src/vm/jit/x86_64/emit.c (vm/options.h): Added.
+       (emit_arithmetic_check): New function.
+       (emit_arrayindexoutofbounds_check): Likewise.
+       (emit_classcast_check): Likewise.
+       (emit_nullpointer_check): Likewise.
+       
+       * src/vm/jit/x86_64/codegen.c (codegen): Use emit_*_check functions
+       for exception checks.
+       (IDIV, IREM, LDIV, LREM): Use emit_{load,store} functions.
+       
+       * src/vm/jit/x86_64/codegen.h (gen_nullptr_check): Removed.
+       (gen_bound_check): Likewise.
+       (gen_resolvebranch): Likewise.
+
+2006-12-06 22:15  twisti
+
+       * src/native/vm/java_lang_VMClass.c (forName): Throw NPE if null is
+       passed.
+
+2006-12-06 10:49  twisti
+
+       * src/vm/jit/i386/emit.c (vm/options.h): Added.
+       (emit_arithmetic_check): New function.
+       (emit_arrayindexoutofbounds_check): Likewise.
+       (emit_classcast_check): Likewise.
+       (emit_nullpointer_check): Likewise.
+       
+       * src/vm/jit/i386/codegen.c (codegen): Use emit_*_check functions for
+       exception checks.
+       
+       * src/vm/jit/i386/codegen.h (gen_nullptr_check): Removed.
+       (gen_bound_check): Likewise.
+
+2006-12-06 10:37  twisti
+
+       * src/vm/jit/emit-common.c [__ALPHA__ || __POWERPC__]
+       (emit_array_checks): Removed #ifdef's.
+
+2006-12-06 09:53  twisti
+
+       * src/vm/jit/i386/emit.c (emit_verbosecall_enter): Check for
+       JITDATA_HAS_FLAG_VERBOSECALL.
+       (emit_verbosecall_exit): Likewise.
+       
+       * src/vm/jit/i386/codegen.c (codegen): Removed
+       JITDATA_HAS_FLAG_VERBOSECALL check.
+       (createnativestub): Likewise.
+
+2006-12-06 09:47  twisti
+
+       * src/vm/builtin.c [ENABLE_JIT] (builtintable_replace_function):
+       #ifdef'ed.
+
+2006-12-05 23:58  ajordan
+
+       * src/vm/jit/sparc64/emit.c: stack bias used in emit_load and
+       emit_store.
+       
+       * src/vm/jit/sparc64/md.c (md_stacktrace_get_returnaddress): let it
+       return the original ra (address of the call instruction).
+       
+       * src/vm/jit/sparc64/codegen.h: fixed M_RESTORE instruction.
+       
+       * src/vm/jit/sparc64/codegen.c: fixed datasp argument for
+       codegen_finish_native_call.
+
+2006-12-05 21:10  twisti
+
+       * src/vm/exceptions.h (EXCEPTION_LOAD_DISP_NULLPOINTER)
+       (EXCEPTION_LOAD_DISP_ARITHMETIC)
+       (EXCEPTION_LOAD_DISP_ARRAYINDEXOUTOFBOUNDS)
+       (EXCEPTION_LOAD_DISP_CLASSCAST, EXCEPTION_LOAD_DISP_PATCHER): Defined.
+       
+       * src/vm/signal.c (signal_init): Removed checknull-check.
+       
+       * src/vm/jit/powerpc/emit.c (vm/exceptions.h): Added.
+       (emit_arrayindexoutofbounds_check): Added hardware-exception version.
+       
+       * src/vm/jit/powerpc/darwin/md-os.c (md_signal_handler_sigsegv):
+       Started to handle other hardware-exceptions.
+
+2006-12-04 23:48  twisti
+
+       * src/vm/jit/x86_64/codegen.c (createcompilerstub): Don't generate a
+       codeinfo.
+
+2006-12-04 23:39  twisti
+
+       * src/vm/jit/powerpc64/codegen.c (createcompilerstub): Don't generate
+       a codeinfo.
+
+2006-12-04 23:36  twisti
+
+       * src/vm/jit/powerpc64/linux/md-os.c (vm/jit/profile/profile.h):
+       Changed to vm/jit/optimizing/profile.h.
+
+2006-12-04 23:30  twisti
+
+       * src/vm/jit/alpha/codegen.c (createcompilerstub): Don't generate a
+       codeinfo.
+
+2006-12-04 23:16  twisti
+
+       * src/vm/jit/i386/codegen.c (createcompilerstub): Don't generate a
+       codeinfo.
+
+2006-12-04 22:51  twisti
+
+       * src/vm/jit/powerpc/codegen.c (createcompilerstub): Don't generate a
+       codeinfo.
+
+2006-12-04 22:21  twisti
+
+       * src/vm/jit/code.c (code_init): New function.
+       * src/vm/jit/code.h (code_init): Added.
+       * src/vm/jit/jit.c (jit_init): Added code_init call.
+
+2006-12-04 22:18  twisti
+
+       * src/vm/jit/code.h (vm/global.h): Added.
+
+2006-12-04 14:46  ajordan
+
+       * src/vm/jit/sparc64/codegen.h: updated code to new dseg functions.
+       * src/vm/jit/sparc64/codegen.c: Likewise.
+       * src/vm/jit/sparc64/emit.c: Likewise.
+
+2006-12-04 11:20  twisti
+
+       * src/vm/vm.c (vm_create): Moved properties_postinit after jar-file
+       handling. This fixes an eclipse bug found by mjw and neugens.
+
+2006-12-04 02:05  michi
+
+       * src/mm/cacao-gc/compact.c: Now uses regioninfo; Added
+       compact_thread_classes
+       Fixed compact_move; Disabled some logging.
+       * src/mm/cacao-gc/compact.h: Now uses regioninfo.
+
+2006-12-03 22:45  twisti
+
+       * src/vm/vm.c (version): Print classpath variable.
+
+2006-12-03 17:55  michi
+
+       * src/mm/cacao-gc/compact.c: Added.
+       * src/mm/cacao-gc/compact.h: Added.
+
+2006-12-02 15:01  tbfg
+
+       * configure.ac: Added m68k host_cpu support. Added uclinux host_os
+       support.
+
+2006-12-02 14:54  tbfg
+
+       * src/native/tools/gennativetable.c (main): Renamed nogc_init
+       to gc_init in DISABLE_GC path.
+       
+       * src/native/Makefile.am: Introduced GENNATIVETABLE to
+       make crosscompilation a friendlier experience. Rewrote
+       rule for nativetable.inc accordingly.
+       
+       * src/threads/native/threads.c (threads_cast_stopworld) [!DISABLE_GC]:
+       Depends on GC_signum1 and GC_signum2 which are undefined without
+       garbage collector.
+       (threads_cast_startworld): Likewise.
+       (threads_sigsuspend_handler): Likewise.
+
+2006-12-02 12:22  twisti
+
+       * src/vm/builtin.c (builtin_trace_args): Added missing + for
+       logtextlen, thanks to --enable-memcheck.
+
+2006-12-01 16:51  twisti
+
+       * src/vm/jit/x86_64/codegen.h (vm/jit/x86_64/emit.h): Added.
+
+2006-12-01 11:38  tbfg
+
+       * src/vm/jit/powerpc64/asmpart.S (asm_vm_call_method):
+       Fixed a bug in argument handling when using lwz instead
+       of lwa zeroed out sign extension bits which lead to wrong
+       int->string conversion in exception handling path.
+
+2006-11-29 22:33  edwin
+
+       * tests/regression/jasmin/test_verify_fail_merge_init_nullpointer.j:
+       New test.
+       
+       * tests/regression/jasmin/test_verify_fail_init_nullpointer.j: Pass
+       null pointer without merging.
+       
+       * tests/regression/jasmin/Makefile.am: Added new test.
+
+2006-11-29 20:44  twisti
+
+       * src/vm/jit/dseg.h (jumpref, dataref, exceptionref, patchref)
+       (linenumberref): Moved to codegen-common.h.
+       * src/vm/jit/codegen-common.h: Likewise.
+
+2006-11-29 20:34  twisti
+
+       * src/vm/jit/emit-common.c (emit_bc): Commented emit_branch call.
+
+2006-11-29 20:15  twisti
+
+       * src/vm/jit/x86_64/emit.h (config.h): Added.
+       (vm/jit/codegen-common.h): Likewise.
+       (vm/jit/jit.h): Likewise.
+
+2006-11-29 17:08  twisti
+
+       * src/vm/class.h [ENABLE_JAVASE] (vm/annotation.h): Added.
+       [ENABLE_JAVASE] (classinfo): Added runtimevisibleannotationscount,
+       runtimevisibleannotations.
+
+2006-11-29 17:04  twisti
+
+       * src/vm/annotation.c: New file.
+       * src/vm/annotation.h: Likewise.
+       * src/vm/Makefile.am [ENABLE_JAVASE] (ANNOTATION_OBJ): Added.
+
+2006-11-29 17:00  twisti
+
+       * src/vm/resolve.h (vm/field.h): Added.
+
+2006-11-28 22:36  twisti
+
+       * src/vm/jit/emit-common.c (emit_bc): Temporary compile fix
+
+2006-11-28 22:32  twisti
+
+       * src/vm/jit/i386/codegen.h (vm/jit/i386/emit.h): Added.
+
+2006-11-28 22:28  twisti
+
+       * src/vm/statistics.c (count_branches_resolved)
+       (count_branches_unresolved): New variable.
+       (print_stats): Print new variables.
+       
+       * src/vm/statistics.h (count_branches_resolved)
+       (count_branches_unresolved): Added.
+
+2006-11-28 22:25  twisti
+
+       * src/vm/jit/emit-common.c (codegen.h): Added.
+       (vm/options.h): Likewise.
+       [ENABLE_STATISTICS] (vm/statistics.h): Likewise.
+       (emit_bc): New function.
+       (emit_br): Likewise.
+       
+       * src/vm/jit/emit-common.h (emit_branch): Added.
+
+2006-11-28 22:19  twisti
+
+       * src/vm/jit/alpha/codegen.h (BRANCH_NOPS): Defined.
+       * src/vm/jit/i386/codegen.h (BRANCH_NOPS, PATCHER_NOPS): Likewise.
+       * src/vm/jit/mips/codegen.h (BRANCH_NOPS): Likewise.
+       * src/vm/jit/powerpc/codegen.h (BRANCH_NOPS): Likewise.
+       * src/vm/jit/powerpc64/codegen.h (BRANCH_NOPS, PATCHER_CALL_SIZE)
+       (PATCHER_NOPS): Likewise.
+       * src/vm/jit/x86_64/codegen.h (BRANCH_NOPS): Likewise.
+
+2006-11-28 22:04  twisti
+
+       * src/vm/jit/dseg.c (dseg_get_linenumber_from_pc_intern):
+       Short-circuit the common case.
+
+2006-11-28 21:50  twisti
+
+       * src/native/tools/Makefile.am (GC_LIB): Removed.
+
+2006-11-28 19:58  twisti
+
+       * src/vm/jit/emit-common.c (emit_beq, emit_bne, emit_blt, emit_bge)
+       (emit_bgt, emit_ble, emit_bnan): New functions.
+       * src/vm/jit/emit-common.h (emit_beq, emit_bne, emit_blt, emit_bge)
+       (emit_bgt, emit_ble, emit_bnan): Added.
+       
+       * src/vm/jit/codegen-common.h (BRANCH_UNCONDITIONAL, BRANCH_EQ)
+       (BRANCH_NE, BRANCH_LT, BRANCH_GE, BRANCH_GT, BRANCH_LE, BRANCH_NAN):
+       Added.
+
+2006-11-28 19:24  edwin
+
+       *
+       tests/regression/jasmin/test_verify_fail_merge_different_new_objects.j:
+       New test.
+       
+       * tests/regression/jasmin/test_verify_fail_init_nullpointer.j:
+       Likewise.
+       
+       * tests/regression/jasmin/Makefile.am: Added new tests.
+       * src/vm/jit/verify/typeinfo.c (typeinfo_merge_error): Moved debug
+       print into #ifdef TYPEINFO_VERBOSE.
+
+2006-11-28 19:14  twisti
+
+       * src/vm/jit/alpha/codegen.h (PATCHER_CALL_SIZE): Defined.
+
+2006-11-28 15:11  twisti
+
+       * src/native/vm/java_lang_VMThrowable.c
+       (native/include/java_lang_VMClass.h): Removed.
+       (getStackTrace): Use native_class_getname.
+
+2006-11-28 01:07  ajordan
+
+       * src/vm/jit/sparc64/asmpart.S: fixed asm_patcher_wrapper
+       * src/vm/jit/sparc64/patcher.c: updated some patchers and the wrapper
+       * src/vm/jit/sparc64/emit.c: likewise
+       
+       * src/vm/jit/sparc64/codegen.h: fixed M_BRACC
+       
+       * src/vm/jit/sparc64/codegen.c: added reg window workaround for arg
+       register copying.
+       some patch ref updates
+       
+       * src/vm/jit/sparc64/md.c: updated md_codegen_patch_branch()
+
+2006-11-27 20:05  twisti
+
+       * src/vm/jit/powerpc/codegen.h (PATCHER_CALL_SIZE): Defined.
+
+2006-11-27 16:53  edwin
+
+       * src/vm/jit/replace.c: Lazy patching of virtual methods. Cleanup.
+       * src/vm/jit/replace.h: Likewise.
+
+2006-11-27 15:37  edwin
+
+       * src/vm/jit/replace.h (sourceframe_t): Added normalized type
+       of replacement point.
+       
+       * src/vm/jit/replace.c (replace_normalize_type_map): Added
+       normalization table for replacement point types.
+       (replace_read_executionstate): Set normalized type of rplpoint.
+       (replace_find_replacement_point): Match normalized type of rplpoint.
+       (replace_source_frame_println): Print it.
+
+2006-11-27 15:29  edwin
+
+       * src/vm/jit/i386/codegen.c (codegen): set marker in line number table
+       _after_ inlining prolog (This fixes the stacktrace for the CHECKNULL
+       in
+       the prolog.)
+       
+       * src/vm/jit/dseg.c (dseg_addlinenumber_inline_start): Document that
+       it is now called with the INLINE_BODY instruction.
+
+2006-11-27 15:24  edwin
+
+       * src/vm/jit/i386/codegen.cn (codegen): Use the new functions for
+       setting replacement point addresses.
+
+2006-11-27 15:23  edwin
+
+       * src/vm/jit/codegen-common.c (codegen_set_replacement_point_notrap):
+       New function.
+       (codegen_set_replacement_point): Likewise.
+       
+       * src/vm/jit/codegen-common.h (codegendata): Added field
+       `replacementpoint`.
+       (codegen_set_replacement_point_notrap): Added prototype.
+       (codegen_set_replacement_point): Likewise.
+       
+       * src/vm/jit/replace.h (RPLPOINT_CHECK): New macro.
+       (RPLPOINT_CHECK_BB): Likewise.
+
+2006-11-27 15:19  edwin
+
+       * src/vm/jit/replace.c
+       (replace_create_inline_start_replacement_point):
+       New function.
+       (replace_create_replacement_points): Cleaned up.
+
+2006-11-27 15:15  edwin
+
+       * src/vm/jit/stack.c (stack_javalocals_store): New function.
+       * src/vm/jit/stack.h (stack_javalocals_store): Likewise.
+       
+       * src/vm/jit/inline/inline.c (inline_clone_instruction): Use
+       stack_javalocals_store.
+       
+       * src/vm/jit/replace.c (replace_create_replacement_points): Use
+       stack_javalocals_store. Other cleanups.
+
+2006-11-27 15:11  edwin
+
+       * src/vm/jit/replace.c (replace_create_replacement_points): Create
+       non-trappable replacement point for INLINE_BODY.
+       
+       * src/vm/jit/i386/codegen.c (codegen): Handle replacement point
+       for INLINE_BODY.
+
+2006-11-27 15:06  edwin
+
+       * src/vm/jit/replace.h (RPLPOINT_TYPE_BODY): Added.
+       * src/vm/jit/replace.c: Likewise.
+
+2006-11-27 15:03  edwin
+
+       * src/vm/jit/inline/inline.c (emit_inlining_prolog): Do not emit
+       CHECKNULL in prolog for <init> methods.
+
+2006-11-27 15:02  edwin
+
+       * src/vm/jit/inline/inline.c (emit_inlining_prolog): Emit INLINE_BODY
+       instructions at end of prolog.
+
+2006-11-27 14:58  edwin
+
+       * src/vm/jit/icmdtable.inc (INLINE_GOTO): Removed.
+       (INLINE_BODY): Added. This instruction will mark the start of the
+       inlined method body after the prolog.
+       
+       * src/vm/jit/jit.h: Likewise.
+       
+       * src/vm/jit/show.c (show_icmd): Likewise.
+       
+       * src/vm/jit/allocator/simplereg.c (simplereg_allocate_temporaries):
+       Likewise.
+       
+       * src/vm/jit/i386/codegen.c (codegen): Likewise.
+       
+       * src/vm/jit/verify/typecheck-variablesbased-gen.inc: Regenerated.
+
+2006-11-27 14:48  edwin
+
+       * src/vm/jit/i386/emit.c (emit_memabs): Removed.
+       (emit_alu_imm_memabs): Use emit_mem.
+
+2006-11-27 14:39  edwin
+
+       * src/vm/jit/stack.c (stack_reanalyse_block): Removed bogus cases
+       for INLINE_ instructions. They cannot occur here.
+       (stack_analyse): Likewise.
+
+2006-11-27 14:37  michi
+
+       * src/mm/gc-common.h: Added prototype for heap_init_objectheader.
+       * src/vm/builtin.c (builtin_clone): Object header gets initiated
+       after cloning.
+
+2006-11-27 14:35  edwin
+
+       * src/vm/jit/jit.c (jit_invalidate_code): Do not trap non-trappable
+       replacement points.
+       (jit_request_optimization): New function.
+       (jit_get_current_code): New function.
+       
+       * src/vm/jit/jit.h (jit_request_optimization): Added prototype.
+       (jit_get_current_code): Likewise.
+       
+       * src/vm/jit/replace.h (RPLPOINT_FLAG_NOTRAP): New flag.
+       
+       * src/vm/jit/replace.c (replace_replacement_point_println): Prepared
+       for new flag.
+
+2006-11-27 14:27  edwin
+
+       * src/vm/jit/jit.c (jit_invalidate_code): Do not activate RETURN
+       rplpoints when invalidating code (they cannot be mapped to inlined
+       versions of the code).
+
+2006-11-27 14:26  edwin
+
+       * src/vm/jit/replace.c (replace_create_replacement_points): Some fixes
+       for inlining.
+
+2006-11-27 14:24  edwin
+
+       * src/vm/jit/replace.c (replace_find_replacement_point): Match parent
+       of replacement point.
+       (replace_me): Keep parent of rplpoint around.
+
+2006-11-27 14:20  edwin
+
+       * src/vm/jit/i386/emit.c (emit_memabs): New function.
+       (emit_alu_imm_memabs): New function.
+       
+       * src/vm/jit/i386/emit.h (emit_alu_imm_memabs): Added prototype.
+       
+       * src/vm/jit/i386/codegen.h (M_ISUB_IMM_MEMABS): New macro.
+
+2006-11-25 16:32  michi
+
+       * src/mm/cacao-gc/gc.h: Added.
+       * src/mm/cacao-gc/gc.c: Debugging with gc_call. Added some
+       development breaks.
+       Added gc_get_heap_size, gc_get_free_bytes, gc_get_total_bytes and
+       gc_get_max_heap_size.
+
+2006-11-22 21:19  twisti
+
+       * src/vm/jit/x86_64/codegen.c (codegen): Use new dseg_add_* functions,
+       replaced codegen_addreference with codegen_add_branch_ref.
+       (createnativestub): Likewise.
+       * src/vm/jit/x86_64/emit.c (emit_patcher_stubs): Likewise.
+
+2006-11-22 20:24  twisti
+
+       * src/vm/jit/stacktrace.c (linenumbertable_entry): Removed.
+       (stacktrace_add_method_intern): Removed.
+       (stacktrace_add_method): Call dseg_get_linenumber_from_pc.
+       
+       * src/vm/jit/dseg.c (vm/jit/methodheader.h): Added.
+       (dseg_get_linenumber_from_pc_intern): New function.
+       (dseg_get_linenumber_from_pc): Likewise.
+       
+       * src/vm/jit/dseg.h (linenumbertable_entry): Added.
+       (dseg_get_linenumber_from_pc): Likewise.
+       
+       * src/vm/jit/show.c (show_method): Renamed u1ptr to pc.
+       (show_basicblock): Use dseg_get_linenumber_from_pc to diplay line
+       number in disassembly.
+
+2006-11-22 19:00  twisti
+
+       * src/mm/gc-common.h [DISABLE_GC] (nogc_init, nogc_realloc): Removed.
+
+2006-11-22 18:22  edwin
+
+       * src/vm/jit/x86_64/codegen.c (codegen): Do not generate code for
+       ASTORE
+       storing a returnAddress, as 1) the store is dead, and 2) the dest.
+       variable has no valid allocation.
+
+2006-11-22 18:20  edwin
+
+       * src/vm/jit/sparc64/codegen.c (codegen): Do not generate code for
+       ASTORE
+       storing a returnAddress, as 1) the store is dead, and 2) the dest.
+       variable has no valid allocation.
+
+2006-11-22 18:18  edwin
+
+       * src/vm/jit/powerpc64/codegen.c (codegen): Do not generate code for
+       ASTORE
+       storing a returnAddress, as 1) the store is dead, and 2) the dest.
+       variable has no valid allocation.
+
+2006-11-22 18:16  edwin
+
+       * src/vm/jit/mips/codegen.c (codegen): Do not generate code for ASTORE
+       storing a returnAddress, as 1) the store is dead, and 2) the dest.
+       variable has no valid allocation.
+
+2006-11-22 18:12  edwin
+
+       * src/vm/jit/i386/codegen.c (codegen): Do not generate code for ASTORE
+       storing a returnAddress, as 1) the store is dead, and 2) the dest.
+       variable has no valid allocation.
+
+2006-11-22 18:09  edwin
+
+       * src/vm/jit/powerpc/codegen.c (codegen): Do not generate code for
+       ASTORE
+       storing a returnAddress, as 1) the store is dead, and 2) the dest.
+       variable has no valid allocation.
+
+2006-11-22 18:03  edwin
+
+       * src/vm/jit/alpha/codegen.c (codegen): Do not generate code for
+       ASTORE
+       storing a returnAddress, as 1) the store is dead, and 2) the dest.
+       variable has no valid allocation.
+
+2006-11-22 11:05  twisti
+
+       * configure.ac: Added *kfreebsd*-gnu.
+       * src/vm/suck.c (scandir_filter) [_DIRENT_HAVE_D_NAMLEN]: Bugfix.
+
+2006-11-22 10:50  twisti
+
+       * src/vm/jit/i386/codegen.c (codegen): Use new dseg_add_* functions.
+       (createnativestub): Likewise.
+       * src/vm/jit/i386/emit.c (emit_patcher_stubs): Likewise.
+
+2006-11-21 23:21  twisti
+
+       * native.c (native_class_getname): New function.
+       * native.h (native_class_getname): Added.
+       * vm/java_lang_VMClass.c (getName): Use native_class_getname.
+
+2006-11-21 21:02  twisti
+
+       * src/vm/builtin.c [DISABLE_GC] (builtin_idiv): Added.
+       (builtin_f2i): Likewise.
+       (builtin_d2i): Likewise.
+       
+       * src/vm/vm.c (vm_create): Removed nogc_init call.
+       * src/cacaoh/cacaoh.c (main): Likewise.
+       
+       * src/mm/nogc.c (nogc_realloc): Removed.
+       (nogc_init): Renamed to gc_init.
+       (gc_init): Removed.
+       (gc_get_total_bytes): Added.
+       
+       * src/mm/memory.h [DISABLE_GC] (NEW, FREE, MNEW, MFREE, MREALLOC):
+       Removed.
+
+2006-11-21 16:56  michi
+
+       * src/vm/loader.c (load_class_from_classbuffer) [ENABLE_GC_CACAO]:
+       Fieldinfos
+       are no longer placed onto the heap.
+       
+       * src/vm/class.c (class_free) [ENABLE_GC_CACAO]: Fieldinfos are freed.
+
+2006-11-20 18:57  tbfg
+
+       * src/vm/jit/powerpc64/codegen.c (codegen): Replace dseg_add*
+       by dseg_add_* functions.
+       
+       * src/vm/jit/powerpc64/emit.c: Likewise.
+
+2006-11-20 16:18  twisti
+
+       * src/vm/jit/dseg.h (dseg_adds4, dseg_adds8, dseg_addfloat)
+       (dseg_adddouble, dseg_addaddress, dseg_addtarget): Removed.
+       
+       * src/vm/jit/alpha/codegen.c (codegen): Removed remaining old-dseg_add
+       calls.
+       * src/vm/jit/alpha/emit.c (emit_iconst): Replaced dseg_adds4 with
+       dseg_add_s4.
+       (emit_lconst): Replaced dseg_adds8 with dseg_add_s8.
+
+2006-11-20 14:18  michi
+
+       * src/vm/global.h: Added hdrflags to java_objectheader for exact
+       Cacao-GC.
+       * src/threads/native/lock.c: Now uses hdrflags to store the FLC bit.
+
+2006-11-19 18:25  michi
+
+       * src/mm/cacao-gc/Makefile.am: Added mark.c
+       * src/mm/cacao-gc/mark.c: Added
+
+2006-11-19 15:40  edwin
+
+       * src/vm/jit/replace.c: Only recompile if necessary. Count
+       re-compilations.
+
+2006-11-19 15:39  edwin
+
+       * src/vm/jit/replace.c: Added statistics code.
+
+2006-11-19 15:36  edwin
+
+       * src/vm/jit/replace.c (replace_me): Only turn off replacement
+       points for self-replacement. Warn in this case.
+
+2006-11-19 15:33  edwin
+
+       * src/vm/jit/replace.c (replace_write_executionstate): Take
+       synchronization slots from next frame for inline points.
+
+2006-11-19 15:28  edwin
+
+       * src/vm/jit/replace.c: Handle and match returnAddress variables on
+       the java stack.
+
+2006-11-19 15:22  edwin
+
+       * src/vm/jit/stack.c (stack_analyse): Keep TYPE_RET for variables
+       of returnAddress type. Do not create interfaces for this type.
+       Mark block variables of TYPE_RET as PREALLOC to avoid subsequent
+       allocation.
+       
+       * src/vm/jit/icmdtable.inc (ASTORE): Added TYPE_RET (R--) variant.
+       (JSR): Changed destination type to TYPE_RET (R).
+       
+       * src/vm/jit/verify/icmds.c (ICMD_RET): Check local for type
+       TYPE_RET.
+       
+       * src/vm/jit/verify/typeinfo.h (TYPE_IS_RETURNADDRESS): Check type
+       for TYPE_RET.
+       
+       * src/vm/jit/verify/typecheck-stackbased-gen.inc: Regenerated.
+       * src/vm/jit/verify/typecheck-variablesbased-gen.inc: Regenerated.
+
+2006-11-19 15:10  edwin
+
+       * src/vm/jit/jit.c (jit_invalidate_code): Activate replacement points
+       in reverse order. This avoid creating invalid code when rplpoints
+       within a block overlap each other. It is not a complete solution for
+       overlapping replacement points, however.
+
+2006-11-19 15:08  edwin
+
+       * src/vm/jit/inline/inline.c (translate_javalocals): Adapted to
+       returnAddress variables in javalocals.
+       (inline_clone_instruction): Likewise.
+
+2006-11-19 15:04  edwin
+
+       * src/vm/jit/stack.c (stack_mark_reached): Fix: Do not compare basic
+       block addresses. Compare numbers instead.
+       (stack_mark_reached_from_outvars): Likewise.
+
+2006-11-19 15:03  edwin
+
+       * src/vm/jit/jit.h (INS_FLAG_CLASS): Comment that this flag is also
+       used for PUTFIELDCONST and PUTSTATICCONST.
+       
+       * src/vm/jit/verify/icmds.c (ICMD_PUTFIELDCONST, ICMD_PUTSTATICCONST):
+       Honor the INS_FLAG_CLASS flag and set the right type.
+       
+       * src/vm/jit/verify/typecheck-stackbased-gen.inc: Regenerated.
+       * src/vm/jit/verify/typecheck-variablesbased-gen.inc: Regenerated.
+
+2006-11-19 14:56  edwin
+
+       * src/vm/jit/stack.c (stack_analyse): Show state after last ICMD in
+       block.
+       (stack_verbose_show_block): Use show_javalocals_array.
+       (stack_verbose_show_state): Likewise. Accept iptr == NULL.
+
+2006-11-19 14:51  edwin
+
+       * src/vm/jit/replace.c (replace_source_frame_println): Fixed printing
+       of source stack.
+
+2006-11-19 14:50  edwin
+
+       * src/vm/jit/allocator/simplereg.c (simplereg_allocate_temporaries):
+       Do not clear vv.regoff for ICMD_JSR (we need vv.retaddr later).
+
+2006-11-18 22:16  twisti
+
+       * src/vm/properties.c (properties_add): Use unsynced functions of
+       list.
+       (properties_get): Likewise.
+
+2006-11-17 15:47  twisti
+
+       * src/vm/properties.c (properties_add): Replace entry if it already
+       exists.
+
+2006-11-16 22:14  twisti
+
+       * src/vm/builtin.c (native/native.h)
+       (native/include/java_lang_Cloneable.h)
+       (native/include/java_lang_Object.h)
+       (native/include/java_lang_VMObject.h): Removed.
+       (builtin_clone_array): Renamed to builtin_clone, reimplemented.
+       
+       * src/vm/builtin.h (builtin_clone_array): Renamed to builtin_clone.
+       (BUILTIN_clone): Defined.
+       
+       * src/vm/loader.c (load_newly_created_array): Use BUILTIN_clone.
+       
+       * src/native/vm/java_lang_VMObject.c (clone): Removed implementation
+       and call builtin_clone.
+
+2006-11-16 19:45  twisti
+
+       * src/vm/class.h (classinfo): Typedef added.
+       * src/vm/descriptor.h (typedesc): Likewise.
+       (methoddesc): Likewise.
+       * src/vm/field.h (fieldinfo): Likewise.
+       * src/vm/method.h (methodinfo): Likewise.
+       
+       * src/vm/references.h (config.h, vm/types.h, vm/class.h)
+       (vm/descriptor.h, vm/field.h, vm/method.h): Likewise.
+       (classinfo, methodinfo, fieldinfo, typedesc, methoddesc): Removed.
+       (constant_classref, classref_or_classinfo, parseddesc): Moved.
+
+2006-11-16 15:56  twisti
+
+       * src/vm/vm.c (vm_createjvm): New function.
+       * src/vm/vm.h (vm_createjvm): Added.
+       
+       * src/cacao/cacao.c (main): Resolve and call vm_createjvm instead of
+       JNI_CreateJavaVM.
+       
+       * src/native/jni.c (jni_init_localref_table): Made non-static.
+       (JNI_CreateJavaVM): Moved implementation into vm_createjvm.
+       * src/native/jni.h (jni_init_localref_table): Added.
+
+2006-11-16 00:02  edwin
+
+       * src/vm/jit/stack.c (stack_analyse): Fix: Reset deadcode when
+       re-analysing a block.
+
+2006-11-15 23:45  edwin
+
+       * src/vm/jit/verify/generate.pl: Prepared for LOAD instructions with
+       multiple variants (will be needed for ASTORE).
+
+2006-11-15 23:44  edwin
+
+       * src/vm/jit/allocator/simplereg.c (simplereg_allocate_temporaries):
+       Ignore TYPE_RET interface variables. (Preparation.)
+       
+       * src/vm/jit/show.c (show_allocation): Prepared for TYPE_RET
+       variables.
+       (show_variable_intern): Likewise.
+       
+       * src/vm/jit/verify/typecheck.c (STORE_LOCAL): Made the macro safer.
+       (STORE_LOCAL_2_WORD): Likewise.
+       
+       * src/vm/jit/verify/typeinfo.c (typeinfo_print_type): Prepared for
+       TYPE_RET variables.
+       
+       * src/vm/jit/replace.c (replace_source_frame_println): Prepared for
+       void stackslots.
+
+2006-11-15 23:37  edwin
+
+       * src/vm/jit/jit.c (jit_recompile): Set verbosecall flag.
+
+2006-11-15 23:36  edwin
+
+       * src/vm/jit/replace.c (replace_create_replacement_points): Fix: Only
+       put a replacement point at a back branch target if the block does not
+       contain any other replacement point.
+       
+       (replace_read_executionstate): Better debugging helpers.
+       (replace_me): Likewise.
+       
+       * src/vm/jit/replace.h (sourceframe_t): Added a field for debugging.
+
+2006-11-15 23:33  edwin
+
+       * src/vm/jit/stack.c (stack_reanalyse_block): Encode returnAddresses
+       in the javalocals array.
+       (stack_analyse): Likewise.
+       
+       * src/vm/jit/replace.c (replace_create_replacement_point): Store
+       returnAddresses in replacement points.
+       (replace_create_replacement_points): Encode returnAddresses in
+       javalocals.
+       (replace_read_executionstate): Ignore returnAddresses.
+       (replace_write_executionstate): Likewise.
+       (replace_find_replacement_point): Match returnAddresses.
+
+2006-11-15 23:30  edwin
+
+       * src/vm/jit/show.h (show_javalocals_array): New function.
+       
+       * src/vm/jit/show.c (show_javalocals_array): New function.
+       (show_icmd): Prepared for showing returnAddresses.
+       
+       * src/vm/jit/replace.c (replace_replacement_point_println): Prepared
+       for showing constant returnAddresses.
+       
+       * src/vm/jit/replace.h (rplalloc): Made type unsigned, so it will be
+       able to hold TYPE_RET (8).
+       
+       * src/vm/jit/jit.h (s2_operand_t): Added field `retaddrnr` that will
+       be used by ASTORE with returnAddresses.
+
+2006-11-15 23:24  edwin
+
+       * src/vm/jit/inline/inline.c (inline_inline_intern): Removed some
+       unused code.
+
+2006-11-15 23:23  edwin
+
+       * src/vm/jit/i386/codegen.c (codegen): Fix: Put RETURN replacement
+       points before the emit_load. This code needs cleaning up.
+
+2006-11-15 23:21  edwin
+
+       * src/vm/jit/replace.c: Partial implementation of synchronization
+       slot translation. Translating synchronized INLINE <-> CALL needs more
+       work.
+
+2006-11-15 23:19  edwin
+
+       * src/vm/jit/replace.c (replace_find_replacement_poin): Fix: Compare
+       both id and method when searching a replacement point.
+       (replace_executionstate_println): Prettier printing.
+       
+       * src/vm/jit/replace.h (replace_pop_activation_record): Removed
+       prototype.
+
+2006-11-15 23:17  edwin
+
+       * src/vm/jit/inline/inline.c (inline_instruction): New function.
+       Factored code out of other functions generation instructions.
+
+2006-11-15 23:15  edwin
+
+       * src/vm/jit/jit.h (insinfo_inline): Added field `paramcount`.
+       
+       * src/vm/jit/inline/inline.c (inline_generate_sync_builtin): New
+       function. Generate explicit MONITORENTER/EXIT instructions.
+       (emit_inlining_prolog): Moved INLINE_START to the beginning of the
+       prolog. Explicit synchronization.
+       (emit_inlining_epilog): Explicit synchronization.
+       (rewrite_method): Use epilog_instructioncount.
+       (inline_analyse_callee): Explicit synchronization.
+       
+       * src/vm/jit/i386/codegen.c (ICMD_INLINE_START): Removed implicit
+       synchronization.
+       (ICMD_INLINE_END): Likewise.
+       
+       * src/vm/jit/replace.c (replace_create_replacement_point): Handle
+       parameters for top frames.
+       (replace_create_replacement_points): Likewise.
+       (replace_read_executionstate): Likewise.
+       (replace_write_executionstate): Likewise.
+       (replace_me): Likewise.
+
+2006-11-15 23:08  edwin
+
+       * src/vm/jit/replace.h (RPLALLOC_STACK, RPLALLOC_PARAM,
+       RPLALLOC_SYNC):
+       New constants.
+       
+       * src/vm/jit/replace.c (replace_push_activation_record): Fix:
+       Decrement
+       SP _before_ writing the return address.
+       (replace_me): More logging.
+       (replace_replacement_point_println): More logging.
+       (replace_executionstate_println): Prettier printing.
+
+2006-11-15 23:02  edwin
+
+       * src/vm/jit/code.h (codeinfo): Added field `invalid`. (Should become
+       a flag, later.)
+       * src/vm/jit/jit.c (jit_recompile): Fixed for first compilation. Do
+       not
+       refuse to recompile.
+
+2006-11-15 22:59  edwin
+
+       * src/vm/jit/inline/inline.c (inline_inline_intern): Do not inline
+       abstract methods (need to search for single implementation).
+
+2006-11-15 22:47  edwin
+
+       * src/vm/jit/replace.c (replace_me): Small cleanup.
+       * src/vm/jit/inline/inline.c (create_body_block): Do not translate
+       javalocals for dead code.
+       (inline_inline_intern): Fixed flag check.
+
+2006-11-15 22:46  edwin
+
+       * src/vm/method.c (method_printflags): Print MONOMORPHIC and
+       IMPLEMENTED flags.
+
+2006-11-15 18:26  twisti
+
+       * src/vm/properties.c (properties_init) [ENABLE_JAVASE]: Allocate the
+       utsname structure on the heap.
+
+2006-11-15 18:09  twisti
+
+       * src/vm/properties.c (properties_init) [ENABLE_JAVASE]: Don't free
+       memory, we need it later.
+
+2006-11-15 18:01  twisti
+
+       * src/cacaoh/headers.c (cacao_prefix, classpath_libdir, _Jv_classpath)
+       (_Jv_java_library_path): Added.
+
+2006-11-15 17:58  twisti
+
+       * src/vm/properties.c (properties_init): Also fill the internal
+       property table.
+       (properties_postinit): Re-set some properties that may have changed.
+       (properties_system_add): Removed.
+       [ENABLE_JAVASE] (properties_system_add_all): Rewritten.
+       
+       * src/vm/properties.h (properties_postinit): Changed signature.
+       (properties_system_add): Removed.
+       [ENABLE_JAVASE] (properties_system_add_all): Added.
+       
+       * src/native/vm/gnu_classpath_VMSystemProperties.c (preInit): Moved
+       implementation to properties.
+       
+       * src/vm/vm.c (vm_create): Call properties_postinit.
+
+2006-11-15 17:46  twisti
+
+       * src/vm/vm.c (vm_create): Don't initialize java/lang/System
+       explicitely.
+
+2006-11-15 16:25  twisti
+
+       * configure.ac (--enable-java): Added.
+
+2006-11-15 15:52  twisti
+
+       * src/vm/jit/parse.c (parse): Added missing semi-colon.
+
+2006-11-15 15:47  edwin
+
+       * src/vm/jit/icmdtable.inc (CHECKNULL_POP): Removed.
+       
+       * src/vm/jit/verify/typecheck-stackbased-gen.inc: Regenerated.
+       * src/vm/jit/verify/typecheck-variablesbased-gen.inc: Likewise.
+
+2006-11-15 15:42  twisti
+
+       * src/vm/jit/jit.h (ICMD_CHECKNULL_POP): Removed.
+       * src/vm/jit/parse.c: Likewise.
+       * src/vm/jit/show.c: Likewise.
+
+2006-11-15 15:30  twisti
+
+       Reverted patch 5890.
+       
+       * src/vm/jit/jit.h: Reverted.
+       
+       * src/vm/jit/alpha/codegen.c: Likewise.
+       * src/vm/jit/i386/codegen.c: Likewise.
+       * src/vm/jit/mips/codegen.c: Likewise.
+       * src/vm/jit/powerpc/codegen.c: Likewise.
+       * src/vm/jit/powerpc64/codegen.c: Likewise.
+       * src/vm/jit/sparc64/codegen.c: Likewise.
+       * src/vm/jit/x86_64/codegen.c: Likewise.
+       * src/vm/jit/intrp/codegen.c: Likewise.
+       
+       * src/vm/jit/show.c: Likewise.
+       * src/vm/jit/stack.c: Likewise.
+       * src/vm/jit/allocator/simplereg.c: Likewise.
+       * src/vm/jit/verify/typecheck-stackbased-gen.inc: Likewise.
+       * src/vm/jit/verify/typecheck-variablesbased-gen.inc: Likewise.
+
+2006-11-15 13:44  tbfg
+
+       * src/vm/jit/powerpc64/linux/md-abi.c (md_param_alloc): Fixed
+       preallocation.
+       
+       * src/vm/jit/powerpc64/asmpart.S (asm_vm_call_method): Fixed
+       argument handling.
+
+2006-11-15 12:25  twisti
+
+       * src/vm/jit/jit.h (ICMD_CHECKNULL): Renamed to ICMD_CHECKNULL_POP.
+       
+       * src/vm/jit/alpha/codegen.c: Likewise.
+       * src/vm/jit/i386/codegen.c: Likewise.
+       * src/vm/jit/mips/codegen.c: Likewise.
+       * src/vm/jit/powerpc/codegen.c: Likewise.
+       * src/vm/jit/powerpc64/codegen.c: Likewise.
+       * src/vm/jit/sparc64/codegen.c: Likewise.
+       * src/vm/jit/x86_64/codegen.c: Likewise.
+       * src/vm/jit/intrp/codegen.c: Likewise.
+       
+       * src/vm/jit/stack.c: Likewise.
+       * src/vm/jit/show.c: Likewise.
+       
+       * src/vm/jit/allocator/simplereg.c: Likewise.
+       
+       * src/vm/jit/verify/typecheck-stackbased-gen.inc (ICMD_CHECKNULL):
+       Removed.
+       * src/vm/jit/verify/typecheck-variablesbased-gen.inc: Likewise.
+
+2006-11-14 21:56  twisti
+
+       * src/jit/verify/typecheck-stackbased.c (mm/memory.h): Added.
+       * src/jit/powerpc/emit.c (mm/memory.h): Likewise.
+       * src/signal.c (mm/memory.h): Likewise.
+
+2006-11-13 21:43  tbfg
+
+       * src/vm/jit/powerpc64/linux/md-abi.c (md_param_alloc): Began
+       fixing ABI issues. It is not correct now, but fptest runs now.
+       Remaining issues in java<->native mainly stack offsets.
+       
+       * src/vm/jit/powerpc64/emit.c (emit_load): Removed M_ILD case.
+       (emit_store): Removed M_FST case. There is no M_FST expect for
+       accessing c structs, internally everything is done using M_DLD
+       and M_DST, M_FST would convert the values.
+       
+       * src/vm/jit/powerpc64/codegen.c (codegen): Removed all M_FST and
+       M_FLD.
+       
+       * src/vm/jit/powerpc64/asmpart.S (asm_vm_call_method): Fixed
+       argument passing on stack.
+
+2006-11-12 15:42  edwin
+
+       * src/vm/jit/verify/typecheck-variablesbased-gen.inc: Regenerated.
+
+2006-11-12 15:41  edwin
+
+       * src/vm/jit/icmdtable.inc: Activate INLINE_START and INLINE_END.
+
+2006-11-12 15:33  edwin
+
+       * src/vm/linker.c (inline_debug_log): Added variable reference.
+       (linker_overwrite_method): Factored out overwriting into this
+       function,
+       update method flags and check assumptions when overwriting.
+       (link_class_intern): Use linker_overwrite_method. Invalidate code of
+       methods that makes broken assumptions.
+       
+       * src/vm/method.c (inline_debug_log): Only use for ENABLE_INLINING.
+       (method_add_to_worklist): Allocate items with NEW.
+
+2006-11-12 15:14  edwin
+
+       * src/vm/method.h (method_assumption): New struct.
+       (method_worklist): New struct.
+       (methodinfo): Added fields `overwrites` and `assumptions`.
+       (method_add_assumption_monomorphic): Added prototype.
+       (method_break_assumption_monomorphic): Likewise.
+       
+       * src/vm/method.c (inline_debug_log): Added variable reference.
+       (method_add_to_worklist): New function.
+       (method_add_assumption_monomorphic): Likewise.
+       (method_break_assumption_monomorphic): Likewise.
+
+2006-11-12 15:01  edwin
+
+       * src/cacaoh/headers.c (inline_debug_log): Added dummy variable.
+
+2006-11-12 15:00  edwin
+
+       * src/vm/loader.c (load_method): Set ACC_METHOD_MONOMORPHIC and
+       ACC_METHOD_IMPLEMENTED flags.
+
+2006-11-12 13:55  edwin
+
+       * src/vm/jit/replace.c (replace_me): Recompile replacement methods.
+
+2006-11-12 13:54  edwin
+
+       * src/vm/jit/replace.c (replace_create_replacement_point): Use the
+       ICMD id as id for replacement points.
+       (replace_replacement_point_println): Print the rplpoint id.
+
+2006-11-12 13:52  edwin
+
+       * src/vm/jit/replace.c (replace_source_frame_println): Print position
+       id.
+       * src/vm/jit/replace.c (replace_pop_activation_record): Subtract one
+       from the return address so we don't hit the following replacement
+       point.
+
+2006-11-12 13:51  edwin
+
+       * src/vm/jit/replace.c (replace_write_executionstate): Added some
+       asserts.
+
+2006-11-12 13:50  edwin
+
+       * src/vm/jit/replace.c: Cleaned up debugging prints.
+
+2006-11-12 13:47  edwin
+
+       * src/vm/jit/replace.c (replace_create_replacement_points): Handle
+       javaindex == UNUSED.
+
+2006-11-12 13:46  edwin
+
+       * src/vm/jit/jit.h, src/vm/jit/jit.c (jit_invalidate_code):
+       New function.
+
+2006-11-12 13:40  edwin
+
+       * src/vm/jit/jit.c (jit_recompile): Some cleanups.
+
+2006-11-12 13:39  edwin
+
+       * src/vm/jit/i386/md.c (md_patch_replacement_point): Deactivated
+       debugging print.
+       * src/cacaoh/headers.c (jit_invalidate_code): Added stub.
+
+2006-11-12 13:38  edwin
+
+       * src/vm/jit/inline/inline.c (emit_inlining_prolog): Set javaindex
+       UNUSED for generated STOREs. Include local variables in stackvars
+       for insinfo_inline. Copy instruction id to INLINE_START.
+       (inline_clone_instruction): Check for javaindex == UNUSED.
+       (rewrite_method): Set javaindex UNUSED for generated STOREs.
+       (inline_inline_intern): Removed some testing code.
+
+2006-11-12 13:31  edwin
+
+       * src/vm/jit/parse.c, src/vm/jit/parse.h (Changes): Merged with
+       Authors.
+
+2006-11-12 13:21  edwin
+
+       * src/vm/jit/jit.h (INS_FLAG_ID_SHIFT, INS_FLAG_ID_MASK): Added. We
+       add
+       an instruction id to the flags field. This is a first attempt to
+       obtain
+       an id for ICMDs that is not dependent on any optimizations or
+       transformations in the compiler. The id is not the same as the
+       bytecode
+       PC, but it has a fixed relation to the bytecode PC, so it should be
+       sufficient at least for replacement. This is an intermediate solution
+       with serious shortcommings, and should be replaced by a true ICMD-to-
+       bytecode-PC mapping in the future. (For example, the id uses up all
+       the free bits in the flags field, and it is not protected against
+       overflow.)
+       
+       * src/vm/jit/parse.h, src/vm/jit/parse.c: Set the instruction id, and
+       do not overwrite it when setting other flags.
+       
+       * src/vm/jit/stack.c: Do not clear the instruction id.
+       
+       * src/vm/jit/show.c (show_basicblock): Display the instruction id.
+
+2006-11-12 12:57  twisti
+
+       * src/vm/jit/powerpc64/codegen.c (codegen): Fixed ICMD_BALOAD, use
+       correct java_bytearray type.
+
+2006-11-12 12:55  twisti
+
+       * src/vm/jit/powerpc/codegen.c (codegen): Fixed ICMD_BALOAD, use
+       correct java_bytearray type.
+
+2006-11-12 12:54  edwin
+
+       * src/vm/jit/parse.h: Fixed typos.
+
+2006-11-11 19:26  ajordan
+
+       * src/vm/jit/sparc64/*: implemented patching (partly), adherent fixes.
+
+2006-11-11 18:45  twisti
+
+       * src/vm/jit/alpha/codegen.c (codegen): Use emit_array_checks.
+
+2006-11-11 18:34  twisti
+
+       * src/vm/jit/alpha/codegen.c (codegen): Replaced gen_bound_check by
+       emit_arrayindexoutofbounds_check.
+
+2006-11-11 18:31  twisti
+
+       * src/vm/jit/alpha/emit.c (vm/options.h): Added.
+       (emit_arrayindexoutofbounds_check): New function.
+       (emit_arraystore_check): Likewise.
+       (emit_classcast_check): Likewise.
+       (emit_classcast_check): Likewise.
+       (emit_nullpointer_check): Likewise.
+       
+       * src/vm/jit/alpha/codegen.c (codegen): Removed patch-NOPs generation,
+       replaced gen_nullptr_check with emit_nullpointer_check.
+       (createnativestub): Removed patch-NOPs generation.
+       
+       * src/vm/jit/alpha/codegen.h (gen_nullptr_check): Removed.
+       (PATCHER_NOPS): Added.
+       
+       * src/vm/jit/alpha/patcher.c (patcher_get_putfield): Use opt_shownops
+       instead of opt_showdisassemble.
+       (patcher_invokevirtual): Likewise.
+       (patcher_invokeinterface): Likewise.
+       (patcher_checkcast_instanceof_interface): Likewise.
+       
+       * src/vm/jit/emit-common.c (emit_array_checks): Added [__ALPHA__].
+       * src/vm/jit/codegen-common.c (codegen_add_patch_ref): Likewise.
+
+2006-11-11 17:08  edwin
+
+       * src/vm/jit/tools/genoffsets.c (executionstate): Renamed to
+       executionstate_t.
+       * src/vm/jit/asmpart.h: Likewise.
+       
+       * src/vm/jit/show.c (show_variable_intern): New function. Does not
+       append ' '. Regard variables above vartop as invalid.
+       (show_method): Only show variables up to vartop.
+       (show_inline_info): New function.
+       (show_basicblock): Show right number of javalocals, show inlining
+       info at the start of blocks.
+       (show_variable): Moved body to show_variable_intern.
+       (show_icmd): Use show_inline_info.
+       
+       * src/vm/jit/inline/inline.c: Handle javalocals.
+       
+       * src/vm/jit/i386/codegen.c (codegen): Handle replacement points
+       for INLINE_START, RETURN and INVOKEs.
+       
+       * src/vm/jit/replace.c: Many changes for making replacement work
+       over multiple stack frames.
+       * src/vm/jit/replace.h: Likewise.
+       
+       * src/vm/jit/jit.h (insinfo_inline): Added fields.
+       (basicblock): Added field `inlineinfo`.
+
+2006-11-11 17:05  twisti
+
+       * src/vm/jit/alpha/codegen.c (codegen): Renamed codegen_addpatchref to
+       codegen_add_patch_ref and codegen_addreference to
+       codegen_add_branch_ref.
+       (createnativestub): Likewise.
+
+2006-11-11 16:56  twisti
+
+       * src/vm/jit/alpha/md.c (md_codegen_patch_branch): New function.
+       * src/vm/jit/alpha/emit.c (emit_exception_stubs): Use
+       md_codegen_patch_branch.
+       * src/vm/jit/alpha/codegen.c (codegen): Use
+       codegen_resolve_branchrefs.
+       * src/vm/jit/alpha/codegen.h (gen_resolvebranch): Removed.
+
+2006-11-11 16:44  twisti
+
+       * configure.ac: Support mipsel architectures.
+
+2006-11-11 14:28  twisti
+
+       * src/vm/jit/codegen-common.c (codegen_add_patch_ref): Added
+       [__X86_64__] for NOP-generation.
+
+2006-11-10 16:41  twisti
+
+       * src/vm/jit/x86_64/codegen.c (codegen): Use
+       codegen_resolve_branchrefs, removed patcher NOP generation, renamed
+       codegen_addpatchref to codegen_add_patch_ref.
+       (createnativestub): Likewise.
+       
+       * src/vm/jit/x86_64/codegen.h (PATCHER_NOPS): Defined.
+       
+       * src/vm/jit/x86_64/patcher.c (patcher_get_putstatic): Use
+       opt_shownops instead of opt_showdisassemble.
+       (patcher_get_putfield): Likewise.
+       (patcher_putfieldconst): Likewise.
+       (patcher_aconst): Likewise.
+       (patcher_builtin_multianewarray): Likewise.
+       (patcher_builtin_arraycheckcast): Likewise.
+       (patcher_invokestatic_special): Likewise.
+       (patcher_invokeinterface): Likewise.
+       (patcher_checkcast_instanceof_flags): Likewise.
+       (patcher_checkcast_instanceof_interface): Likewise.
+       (patcher_checkcast_class): Likewise.
+       (patcher_instanceof_class): Likewise.
+       (patcher_resolve_native): Likewise.
+
+2006-11-10 12:32  twisti
+
+       * src/vm/jit/x86_64/md.c (md_codegen_patch_branch): New function.
+       * src/vm/jit/x86_64/emit.c (emit_exception_stubs): Use
+       md_codegen_patch_branch.
+
+2006-11-09 15:27  twisti
+
+       * src/vm/jit/powerpc/codegen.c (codegen): Use codegen_add_branch_ref,
+       removed opt_shownops code.
+       (createnativestub): Likewise.
+       
+       * src/vm/jit/powerpc/codegen.h (PATCHER_NOPS): Added.
+       * src/vm/jit/mips/codegen.h (PATCHER_NOPS): Removed opt_shownops
+       check.
+       
+       * src/vm/jit/codegen-common.c (codegen_add_patch_ref): Check for
+       opt_shownops, added [__POWERPC__].
+
+2006-11-09 10:52  twisti
+
+       * src/vm/jit/powerpc/emit.c (vm/options.h): Added.
+       (emit_nullpointer_check): New function.
+       (emit_arrayindexoutofbounds_check): Likewise.
+       (emit_exception_stubs): Use md_codegen_patch_branch.
+       
+       * src/vm/jit/powerpc/md.c (vm/jit/powerpc/codegen.h): Added.
+       (md_codegen_patch_branch): New function.
+       
+       * src/vm/jit/powerpc/codegen.c (codegen): Use
+       codegen_resolve_branchrefs, use opt_shownops, removed buggy ICMD_LCMP
+       implementation (i'll add a new one if i find some time), use exception
+       emit_* functions.
+       (createnativestub): Use opt_shownops.
+       
+       * src/vm/jit/powerpc/patcher.c (patcher_get_putfield): Use
+       opt_shownops.
+       (patcher_invokevirtual): Likewise.
+       (patcher_invokeinterface): Likewise.
+       (patcher_checkcast_instanceof_interface): Likewise.
+       
+       * src/vm/jit/powerpc/codegen.h (gen_nullptr_check): Removed.
+       (gen_bound_check): Likewise.
+       (M_BRAMASK): Renamed to M_BMASK.
+       (M_BRMASK): Renamed to M_BCMASK.
+       (M_BRA): Renamed to M_B and hardcoded the opcode.
+       (M_BRAC): Renamed to M_BC and hardcoded the opcode.
+       (gen_resolvebranch): Removed.
+       
+       * src/vm/jit/emit-common.c (emit_array_checks): New function.
+       * src/vm/jit/emit-common.h (emit_array_checks): Added.
+
+2006-11-09 10:23  twisti
+
+       * src/vm/jit/stacktrace.c (stacktrace_add_method): Get codeinfo from
+       data segment.
+
+2006-11-09 09:59  tbfg
+
+       * src/vm/jit/powerpc64/linux/md-abi.h: Changed ABI for float
+       arguments.
+       
+       * src/vm/jit/powerpc64/linux/md-asm.h: Likewise.
+       
+       * src/vm/jit/powerpc64/linux/md-abi.c: Likewise.
+       
+       * src/vm/jit/powerpc64/asmpart.S (asm_vm_call_method): Various
+       argument handling fixes.
+       
+       * src/vm/jit/powerpc64/codegen.h (M_BRAC): Renamed to M_BC
+       (M_BRA): Renamed to M_B
+       (M_BRACMASK): Renamed to M_BCMASK.
+       (M_BRAMASK): Renamed to M_BMASK.
+       
+       * src/vm/jit/powerpc64/md.c (md_codegen_patch_branch): Use M_BCMASK
+       and M_BMASK instead of hardcoded masks.
+
+2006-11-09 09:54  twisti
+
+       * src/vm/jit/powerpc/linux/md-os.c (vm/jit/profile/profile.h): Changed
+       to vm/jit/optimizing/profile.h.
+       (md_signal_handler_sigsegv): If faulting address is not equal 0, try
+       to dump a tsacktrace and exit.
+
+2006-11-08 22:02  twisti
+
+       * NEWS: Added release 0.98.
+
+2006-11-08 22:00  twisti
+
+       * src/vm/method.h (methodinfo): Added signature.
+       * src/vm/field.h (fieldinfo): Added signature.
+       * src/vm/loader.c (load_method): Load signature attribute.
+       (load_field): Likewise.
+       * src/native/vm/java_lang_reflect_Method.c (getSignature):
+       Implemented.
+       * src/native/vm/java_lang_reflect_Field.c (getSignature): Likewise.
+
+2006-11-08 20:34  edwin
+
+       * src/vm/jit/code.h (codeinfo): Added field stackframesize.
+       * src/vm/jit/code.c (code_get_stack_frame_size): Return
+       code->stackframesize.
+       
+       * src/vm/jit/replace.c (replace_create_replacement_points): Set
+       code->stackframesize.
+       (replace_read_executionstate): Read stack types from rplallocs.
+       (replace_write_executionstate): Check stack types.
+       (replace_pop_activation_record): New function.
+       (replace_me): Added some temporary code for testing.
+       (replace_executionstate_println): Use executionstate.code.
+       (java_value_print): New function.
+       (replace_sourcestate_println): Print values prettily.
+       
+       * src/vm/jit/replace.h (executionstate): Added field `code`.
+       (sourcestate): Added field `javastacktype`.
+       (replace_pop_activation_record): New function.
+       (replace_executionstate_println): Changed arguments.
+
+2006-11-08 20:27  twisti
+
+       * src/vm/exceptions.c (new_nullpointerexception): Renamed to
+       exceptions_new_nullpointerexception.
+       * src/vm/exceptions.h: Likewise.
+       * src/vm/jit/stacktrace.c: Likewise.
+       * src/cacaoh/headers.c: Likewise.
+
+2006-11-08 13:33  tbfg
+
+       * src/vm/jit/powerpc64/codegen.h (gen_resolvebranch): Removed.
+       
+       * src/vm/jit/powerpc64/codegen.c (codegen): Replaced
+       gen_resolvebranch with md_codegen_patch_branch.
+       
+       * src/vm/jit/powerpc64/md.c (md_codegen_patch_branch): Prevent AA
+       and LK overwrites for b.
+
+2006-11-08 13:03  tbfg
+
+       * src/vm/jit/powerpc64/md.c (md_codegen_patch_branch): Added.
+
+2006-11-07 09:06  twisti
+
+       * src/vm/jit/i386/md.c (md_codegen_patch_branch): New function.
+       * src/vm/jit/i386/emit.c (emit_exception_stubs): Use
+       md_codegen_patch_branch.
+       * src/vm/jit/i386/codegen.c (codegen): Use codegen_resolve_branchrefs.
+       * src/vm/jit/i386/codegen.h (gen_resolvebranch): Removed.
+
+2006-11-07 08:51  twisti
+
+       * src/vm/jit/codegen-common.h (codegen_resolve_branchrefs): Added.
+
+2006-11-06 21:12  twisti
+
+       * jit/mips/emit.c (emit_patcher_stubs): Handle displacement overflows.
+       
+       * jit/mips/codegen.c (codegen): Removed patcher NOPs generation.
+       (createnativestub): Likewise.
+       
+       * jit/mips/codegen.h (PATCHER_CALL_INSTRUCTIONS): Defined.
+       (PATCHER_CALL_SIZE): Changed to 5 * 4;
+       (PATCHER_NOPS): Defined.
+       
+       * jit/mips/patcher.c (patcher_wrapper): Restore original instructions.
+       (patcher_get_putstatic): Don't restore original code.
+       (patcher_get_putfield): Likewise.
+       (patcher_aconst): Likewise.
+       (patcher_builtin_multianewarray): Likewise.
+       (patcher_builtin_arraycheckcast): Likewise.
+       (patcher_invokestatic_special): Likewise.
+       (patcher_invokevirtual): Likewise.
+       (patcher_invokeinterface): Likewise.
+       (patcher_checkcast_instanceof_flags): Likewise.
+       (patcher_checkcast_interface): Likewise.
+       (patcher_instanceof_interface): Likewise.
+       (patcher_checkcast_instanceof_class): Likewise.
+       (patcher_clinit): Likewise.
+       (patcher_athrow_areturn): Likewise.
+       (patcher_resolve_native): Likewise.
+       
+       * jit/mips/asmpart.S (asm_patcher_wrapper): Handle bigger patcher stub
+       stack.
+       
+       * jit/codegen-common.c (codegen_add_patch_ref): Generate NOPs, if
+       requested.
+
+2006-11-06 17:13  twisti
+
+       * src/vm/jit/codegen-common.c (toolbox/list.h): Added.
+       (codegen_addreference): Renamed to codegen_add_branch_ref, use
+       md_codegen_patch_branch instead of gen_resolvebranch.
+       (codegen_resolve_branchrefs): New function.
+       (codegen_addpatchref): Renamed to codegen_add_patch_ref.
+       * src/vm/jit/codegen-common.h (codegen_addreference): Renamed to
+       codegen_add_branch_ref.
+       (codegen_resolve_branchrefs): New function.
+       (codegen_addpatchref): Renamed to codegen_add_patch_ref.
+       
+       * src/vm/jit/dseg.h (toolbox/list.h): Added.
+       
+       * src/vm/jit/mips/emit.c (vm/options.h): Added.
+       (emit_arithmetic_check): New function.
+       (emit_arrayindexoutofbounds_check): Likewise.
+       (emit_arraystore_check): Likewise.
+       (emit_classcast_check): Likewise.
+       (emit_nullpointer_check): Likewise.
+       (emit_exception_check): Likewise.
+       (emit_exception_stubs): Use md_codegen_patch_branch instead of
+       gen_resolvebranch.
+       
+       * src/vm/jit/mips/md.c (vm/vm.h): Added.
+       (md_codegen_patch_branch): New function.
+       
+       * src/vm/jit/mips/codegen.c (codegen): Use new emit_* functions, use
+       opt_shownops instead of opt_showdissasemble.
+       (createnativestub): Likewise.
+       
+       * src/vm/jit/mips/codegen.h (gen_nullptr_check): Removed.
+       (gen_bound_check): Likewise.
+       (gen_div_check): Likewise.
+       (gen_resolvebranch): Likewise.
+       
+       * src/vm/jit/mips/patcher.c: Use opt_shownops instead of
+       opt_showdissasemble.
+       (patcher_checkcast_instanceof_interface): Split into two functions:
+       patcher_checkcast_interface and patcher_instanceof_interface.
+       
+       * src/vm/jit/patcher.h (patcher_checkcast_interface): Added.
+       (patcher_instanceof_interface): Added.
+       
+       * src/vm/jit/emit-common.h (emit_arithmetic_check): Added.
+       (emit_arrayindexoutofbounds_check): Likewise.
+       (emit_arraystore_check): Likewise.
+       (emit_classcast_check): Likewise.
+       (emit_nullpointer_check): Likewise.
+       (emit_exception_check): Likewise.
+
+2006-11-06 16:38  tbfg
+
+       * src/vm/jit/powerpc64/codegen.c (codegen): Various more fixes all
+       over the place. jctest is now successfull for ppc64.
+       
+       * src/vm/jit/powerpc64/codegen.h (M_DIV): Changed used opcode.
+       (M_SLL_IMM): Fixed.
+
+2006-11-06 16:17  edwin
+
+       * src/vm/jit/replace.c (replace_create_replacement_point): New
+       function.
+       (replace_create_replacement_points): Create replacement points for
+       INVOKE* and *RETURN instructions.
+       (replace_read_executionstate): Fixed loop.
+       (replace_write_executionstate): Fixed loop.
+       (replace_sourcestate_println): Adapted to new source state layout.
+
+2006-11-05 23:17  edwin
+
+       * src/vm/jit/i386/codegen.c (codegen): Create replacement points after
+       the final allocations.
+       
+       * src/vm/jit/jit.c (jit_compile_intern): Do not create replacement
+       points before the codegen is called.
+
+2006-11-05 23:11  edwin
+
+       * src/vm/jit/codegen-common.h (codegendata): Removed maxlocals. This
+       is
+       now in jitdata.
+       * src/vm/jit/codegen-common.c (codegen_setup): Removed cd->maxlocals.
+       
+       * src/vm/jit/replace.c: Move towards exact replacement/GC points.
+       * src/vm/jit/replace.h: Likewise.
+       
+       * src/vm/jit/optimizing/lsra.h: Use jd->maxlocals.
+       * src/vm/jit/optimizing/lifetimes.c: Likewise.
+       * src/vm/jit/optimizing/ssa.c: Likewise.
+       * src/vm/jit/show.c: Likewise.
+       * src/vm/jit/verify/typecheck.c: Likewise.
+       * src/vm/jit/loop/analyze.c: Likewise.
+       * src/vm/jit/inline/inline.c: Likewise.
+       * src/vm/jit/allocator/lsra.c: Likewise.
+       * src/vm/jit/allocator/simplereg.c: Likewise.
+       * src/vm/jit/allocator/liveness.c: Likewise.
+       * src/vm/jit/jit.c: Likewise.
+       
+       * src/vm/jit/show.h (show_allocation): Made global.
+       * src/vm/jit/show.c: Likewise.
+
+2006-11-05 22:47  edwin
+
+       * src/vm/jit/jit.c (jit_jitdata_new): Initialize jd->maxlocals.
+
+2006-11-05 22:46  edwin
+
+       * src/vm/jit/jit.h (jitdata): Added maxlocals field.
+
+2006-11-05 21:43  twisti
+
+       * src/vm/options.c (opt_shownops): Added.
+       * src/vm/options.h (opt_shownops): Likewise.
+       * src/vm/vm.c (usage): Added -so help.
+       (vm_create): Added opt_shownops handling.
+
+2006-11-05 21:27  edwin
+
+       * src/vm/jit/jit.h (INS_FLAG_RETADDR): Added flag for marking ASTOREs
+       of returnAddresses.
+       
+       * src/vm/jit/stack.c (stack_reanalyse_block): Invalidate target of
+       ASTORE with returnAddress.
+       (stack_analyse): Likewise.
+
+2006-11-05 21:23  twisti
+
+       * src/vm/utf8.c (utf_Signature): Added.
+       (utf8_init): Initialize utf_Signature.
+       * src/vm/utf8.h (utf_Signature): Added.
+
+2006-11-05 21:18  twisti
+
+       * src/vm/loader.c (load_attributes): Load Signature attribute.
+       * src/vm/class.h (classinfo): Added signature.
+       * src/native/vm/java_lang_VMClass.c (getClassSignature): Implemented.
+
+2006-11-05 21:14  edwin
+
+       * src/vm/jit/show.c (show_basicblock): Show javalocals.
+       (show_variable_array): Made it NULL-safe, show UNUSED entries.
+
+2006-11-05 20:17  edwin
+
+       * src/vm/jit/show.c (show_icmd): Show javaindex for *STORE.
+
+2006-11-05 20:07  edwin
+
+       * src/vm/jit/jit.h (s3_operand_t): Added field javaindex.
+       (INS_FLAG_KILL_PREV): New flag.
+       (INS_FLAG_KILL_NEXT): New flag.
+       (basicblock): Added field javalocals. This points to the mapping from
+       Java bytecode locals to cacao variables at the beginning of the block.
+       
+       * src/vm/jit/stack.c (Changes): Merged with Authors.
+       (stackdata_t): Added fields maxlocals and javalocals.
+       (stack_clone_block): Initialize javalocals.
+       (stack_create_locals): New function.
+       (stack_merge_locals): New function.
+       (stack_create_invars): Use stack_create_invars.
+       (stack_create_invars_from_outvars): Likewise.
+       (stack_check_invars): Use stack_merge_locals.
+       (stack_check_invars_from_outvars): Likewise.
+       (stack_reanalyse_block): Maintain javalocals mapping.
+       (stack_init_javalocals): New function.
+       (stack_analyse): Maintain javalocals mapping.
+       (stack_verbose_show_block): Show javalocals.
+       (stack_verbose_block_enter): Distinguish block cloning and
+       re-analysing.
+       (stack_verbose_show_state): New function.
+
+2006-11-05 19:49  edwin
+
+       * src/vm/jit/stack.c (COPY_VAL_AND_TYPE): Fix: Only copy vv for
+       TYPE_RET
+       (and later for other constants). Otherwise the allocation of PREALLOC
+       variables can be overwritten when re-analysing a block.
+
+2006-11-05 19:45  edwin
+
+       * src/vm/jit/show.c (show_method): Show maxinterfaces only for stage
+       >= SHOW_STACK.
+       (show_variable): Show allocation for PREALLOC variables.
+
+2006-11-05 16:58  michi
+
+       * src/vm/jit/stacktrace.h: Added stacktracecontainer.
+       * src/vm/jit/stacktrace.c (stacktrace_fillInStackTrace): Now returns
+       stacktracecontainer as wrapper for stacktracebuffer and entries.
+       
+       * src/native/vm/java_lang_VMThrowable.c: Undoes the wrapping
+       mentioned above.
+
+2006-11-05 15:47  edwin
+
+       * src/vm/jit/replace.c (replace_create_replacement_points): Partially
+       ported to new IR.
+       
+       * src/vm/jit/i386/codegen.c (codegen): Reactivate code for
+       replacement points.
+       * src/vm/jit/jit.c (jit_compile_intern): Likewise.
+
+2006-11-05 10:40  edwin
+
+       * src/vm/jit/inline/inline.c: Ported to the new IR. There are some
+       checkins missing to make it linkable, though.
+       * src/vm/jit/inline/inline_debug.inc: Likewise.
+
+2006-11-05 10:31  edwin
+
+       * src/vm/global.h (ACC_METHOD_IMPLEMENTED): Added.
+       (ACC_METHOD_MONOMORPHIC): Added.
+
+2006-11-05 10:22  edwin
+
+       * src/vm/jit/jit.h (jitdata): New fields maxinterfaces, returnblock,
+       returncount, branchtoentry, branchtoend.
+       
+       * src/vm/jit/jit.c (jit_jitdata_new): Initialize new fields.
+       
+       * src/vm/jit/parse.c (parse_mark_exception_boundaries): Set
+       branchtoend.
+       (parse): Set branchtoentry.
+       
+       * src/vm/jit/stack.c (stack_analyse): Set jd->maxinterfaces,
+       returncount, and returnblock.
+       
+       * src/vm/jit/allocator/simplereg.c (simplereg_allocate_interfaces):
+       Use jd->maxinterfaces.
+       (simplereg_allocate_temporaries): Likewise.
+       
+       * src/vm/jit/show.c (show_method): Show the new fields. Use
+       jd->maxinterfaces. Show invalid variable indices. Show inline info.
+
+2006-11-05 09:52  edwin
+
+       * src/vm/jit/i386/codegen.c (codegen): Reactivated code for inlining.
+
+2006-11-04 23:42  edwin
+
+       * src/vm/jit/jit.h (jitdata): Clarified comment of isleafmethod.
+
+2006-11-04 23:37  edwin
+
+       * src/vm/jit/jit.c (jit_jitdata_new): Initialize jd->isleafmethod
+       depending on whether the method needs synchronization.
+       
+       * src/vm/jit/parse.c (parse): Initialization of jd->isleafmethod has
+       been moved to jit_jitdata_new.
+
+2006-11-04 23:29  edwin
+
+       * src/vm/jit/jit.h, src/vm/jit/jit.c (jit_jitdata_new): Made global.
+
+2006-11-04 23:24  edwin
+
+       * src/vm/loader.c (load_newly_created_array): Explicitly zero the
+       allocated methodinfo array.
+
+2006-11-04 23:13  edwin
+
+       * src/vm/jit/stack.c (stack_change_to_tempvar): Fix: Only replace
+       pass-through variables at the right stack depth. Otherwise the IR
+       can become inconsistent, for example a temporary variable could be
+       used more than once.
+
+2006-11-04 22:40  edwin
+
+       * src/vm/jit/stack.c (stack_reanalyse_block): Relocate dst.varindex
+       for ICMD_JSR (even if it is not used, it keeps the IR consistent).
+
+2006-11-04 22:01  edwin
+
+       * src/mm/memory.c: Added ENABLE_MEMCHECK code:
+       (mem_alloc): Prepared for poisoning memory.
+       (mem_realloc): Invalidate freed memory.
+       (mem_free): Invalidate freed memory.
+       (dump_check_canaries): New function.
+       (dump_alloc): Added canaries, record allocation.
+       (dump_realloc): Invalidate freed memory.
+       (dump_release): Check canaries, invalidate freed memory.
+       
+       * src/mm/memory.h (dump_allocation_t): New struct.
+       (dumpinfo_t): Added allocation list for ENABLE_MEMCHECK.
+       
+       * configure.ac (--enable-memcheck): Added configure flag.
+
+2006-11-04 17:30  michi
+
+       * src/mm/boehm.h: Renamed to gc-common.h
+       * src/mm/gc-common.h: Added.
+       
+       * src/vm/builtin.c, src/vm/jit/mips/linux/md-os.c,
+       src/vm/jit/mips/irix/md-os.c, src/vm/jit/stacktrace.c, src/vm/vm.c,
+       src/native/tool/gennativetable.c, src/native/jni.c,
+       src/native/vm/gnu_java_lang_management_VMThreadMXBeanImpl.c,
+       src/native/vm/gnu_java_lang_management_VMMemoryMXBeanImpl.c,
+       src/native/vm/java_lang_VMObject.c,
+       src/native/vm/java_lang_VMRuntime.c,
+       src/native/vm/gnu_java_lang_management_VMClassLoadingMXBeanImpl.c,
+       src/native/jvmti/jvmti.c, src/mm/nogc.c, src/mm/boehm.c,
+       src/mm/memory.h,
+       src/threads/native/threads.c, src/cacaoh/headers.c,
+       src/cacaoh/cacaoh.c:
+       Changed include from "mm/boehm.h" to "mm/gc-common.h"
+       
+       * src/mm/Makefile.am: Added subdir and lib for cacao-gc
+       
+       * src/mm/cacao-gc: Added.
+       * src/mm/cacao-gc/gc.c: Added.
+       * src/mm/cacao-gc/Makefile.am: Added.
+       * src/mm/cacao-gc/.cvsignore: Added.
+       
+       * src/threads/native/threads.c: Fixed include of boehms gc.h
+       
+       * src/vm/jit/mips/linux/md-os.c (md_init) [ENABLE_GC_BOEHM]: Added
+       ifdef
+       for boehm specific call.
+       * src/vm/jit/mips/irix/md-os.c: Likewise.
+       * src/vm/signal.c: Likewise.
+       
+       * configure.ac: Adapted buildsystem for new GC. Added cacao-gc.
+
+2006-11-04 15:46  tbfg
+
+       * src/vm/jit/powerpc64/emit.c (emit_verbosecall_enter):
+       Removed unsued var.
+       
+       * src/vm/jit/powerpc64/codegen.c (codegen):
+       Lots of arithmetic changes.
+       
+       * src/vm/jit/powerpc64/codegen.h (M_SLL): Converted to 64bit.
+       (M_LSTX): Added.
+       (gen_bound_check): Fixed.
+
+2006-11-03 22:11  michi
+
+       * src/vm/loader.c (load_class_from_classbuffer): Removed commented
+       code which
+       placed methodinfos onto the heap.
+
+2006-11-03 15:40  tbfg
+
+       checkcast testcase
+
+2006-11-03 15:13  twisti
+
+       * parisc/.cvsignore: New file.
+       * parisc/linux/.cvsignore: Likewise.
+
+2006-11-03 14:03  twisti
+
+       * src/vm/jit/parisc/md-abi.h: New file.
+       * src/vm/jit/parisc/md.c: Likewise.
+       * src/vm/jit/parisc/arch.h: Likewise.
+       * src/vm/jit/parisc/Makefile.am: Likewise.
+       * src/vm/jit/Makefile.am (SUBDIRS): Added parisc.
+       * configure.ac: Added parisc support.
+
+2006-11-02 12:54  twisti
+
+       * src/toolbox/list.c, src/toolbox/list.h (list_create_dump): New
+       function.
+       (list_first_unsynced): Likewise.
+       (list_last_unsynced): Likewise.
+       (list_next_unsynced): Likewise.
+       (list_prev_unsynced): Likewise.
+
+2006-11-02 12:50  twisti
+
+       * src/Makefile.am (DIST_SUBDIRS): Compile mm first.
+       (SUBDIRS): Likewise.
+
+2006-11-02 10:21  twisti
+
+       * src/vm/jit/dseg.h (patchref): Added comments.
+
+2006-11-01 20:19  twisti
+
+       * src/vm/jit/mips/codegen.c (codegen): Use new dseg function names.
+       (createnativestub): Likewise.
+       * src/vm/jit/mips/emit.c (emit_iconst): Likewise.
+       (emit_lconst): Likewise.
+       (emit_exception_stubs): Likewise.
+       (emit_patcher_stubs): Likewise.
+       (emit_verbosecall_enter): Likewise.
+       (emit_verbosecall_exit): Likewise.
+       
+       * src/vm/jit/mips/codegen.h (M_INTMOVE): Wrap into do-while.
+
+2006-10-31 22:02  twisti
+
+       * src/vm/jit/Makefile.am (DIST_SUBDIRS): Forgot to remove ifconv.
+
+2006-10-31 22:01  twisti
+
+       * src/vm/jit/ifconv: Removed.
+       
+       * src/vm/jit/optimizing/ifconv.c: Added.
+       * src/vm/jit/optimizing/ifconv.h: Likewise.
+       
+       * src/vm/jit/optimizing/Makefile.am (IFCONV_SOURCES): Added.
+       (liboptimizing_la_SOURCES): Added IFCONV_SOURCES.
+       
+       * src/vm/jit/jit.c (vm/jit/ifconv/ifconv.h): Changed to
+       vm/jit/optimizing/ifconv.h.
+       
+       * src/vm/jit/Makefile.am (IFCONV_LIB): Removed.
+       
+       * configure.ac (AC_CONFIG_FILES): Removed src/vm/jit/ifconv/Makefile.
+
+2006-10-31 21:57  ajordan
+
+       * src/vm/jit/sparc64/asmpart.S: added exception handling code.
+       * src/vm/jit/sparc64/md-asm.h: Likewise.
+       
+       * src/vm/jit/sparc64/*: implemented createnativestub, added functions
+       for param allocation following the ABI.
+
+2006-10-31 21:35  twisti
+
+       * src/vm/jit/reorder.c: Removed.
+       * src/vm/jit/reorder.h: Likewise.
+       
+       * src/vm/jit/optimizing/reorder.c: Added.
+       * src/vm/jit/optimizing/reorder.h: Likewise.
+       
+       * src/vm/jit/optimizing/Makefile.am (REORDER_SOURCES): Added.
+       (liboptimizing_la_SOURCES): Added REORDER_SOURCES.
+       
+       * src/vm/jit/jit.c (vm/jit/reorder.h): Changed to
+       vm/jit/optimizing/reorder.h.
+       
+       * src/vm/jit/Makefile.am (libjit_la_SOURCES): Removed reorder.[ch].
+
+2006-10-31 21:27  twisti
+
+       * src/vm/jit/optimizing/Makefile.am (INCLUDES): Renamed to
+       AM_CPPFLAGS.
+       (LIBS): Added.
+
+2006-10-31 20:26  twisti
+
+       * src/vm/vm.c (vm/jit/profile/profile.h): Changed to
+       vm/jit/optimizing/profile.h.
+       (vm/jit/recompile.h) Changed to vm/jit/optimizing/recompile.h.
+
+2006-10-31 20:11  twisti
+
+       * src/vm/jit/optimizing/profile.c: Added.
+       * src/vm/jit/optimizing/profile.h: Likewise.
+       * src/vm/jit/optimizing/recompile.c: Likewise.
+       * src/vm/jit/optimizing/recompile.h: Likewise.
+       
+       * src/vm/jit/optimizing/Makefile.am (INCLUDES): Added OS_DIR.
+       (PROFILE_SOURCES): Added.
+       (RECOMPILE_SOURCES): Added.
+       (SSA_SOURCES): Added.
+       
+       * src/vm/jit/recompile.c: Removed.
+       * src/vm/jit/recompile.h: Likewise.
+       * src/vm/jit/profile: Likewise.
+       
+       * src/vm/jit/Makefile.am (SUBDIRS): Added optimizing.
+       (PROFILE_LIB): Removed.
+       (RECOMPILE_SOURCES): Likewise.
+       
+       * src/cacao/Makefile.am (GC_LIB): Removed.
+       
+       * src/mm/Makefile.am (DIST_DUBDIRS): Added boehm-gc.
+       (GC_LIB): Added.
+       
+       * src/Makefile.am (DIST_SUBDIRS): Removed boehm-gc.
+       (SUBDIRS): Likewise.
+       (BOEHM): Removed.
+       
+       * src/threads/native/threads.c (boehm-gc/include/gc.h): Changed to
+       mm/boehm-gc/include/gc.h.
+       
+       * src/cacaoh/Makefile.am (GC_LIB): Removed.
+       
+       * configure.ac (AC_CONFIG_FILES): Removed src/vm/jit/profile/Makefile.
+       (AC_CONFIG_SUBDIRS): Changed src/boehm-gc to src/mm/boehm-gc.
+       * autogen.sh: Changed path to boehm-gc.
+
+2006-10-31 20:00  twisti
+
+       * src/vm/exceptions.c (exceptions_handle_exception): Made identation
+       correct.
+
+2006-10-31 19:58  twisti
+
+       * src/mm/boehm-gc/.cvsignore: Added some files.
+
+2006-10-31 15:42  twisti
+
+       * Moved boehm-gc from src/ to src/mm/.
+
+2006-10-31 13:40  tbfg
+
+       * src/vm/jit/powerpc64/codegen.c (codegen):
+       Fixed parameter passing.
+       Various fixes for many ICMD_*.
+       
+       * src/vm/jit/powerpc64/patcher.c (patcher_get_putfield):
+       Fixed for longs.
+       
+       * src/vm/jit/powerpc64/asmpart.S (asm_vm_call_method):
+       Fixed methodheader, exception handling now works.
+       
+       * src/vm/exceptions.c (exceptions_handle_exception):
+       Indenting.
+
+2006-10-31 10:16  twisti
+
+       * configure.ac (AC_INIT): Changed version to 0.97+svn.
+       (OPT_CFLAGS): Changed to -O0.
+
+2006-10-31 10:15  twisti
+
+       * NEWS: Forgot to commit the date for 0.97, grrrr.
+
+2006-10-31 00:07  twisti
+
+       * ChangeLog: Updated for release 0.97.
+2006-10-30 23:52  twisti
+
+       * configure.ac (AC_INIT): Changed version to 0.97.
+       (--enable-threads): Removed green from help string.
+
+2006-10-30 13:03  twisti
+
+       * src/vm/jit/show.c (show_method): Removed debug output.
+       (SHOW_INT_CONST): Removed long cast and print hex value additionally.
+       (SHOW_LNG_CONST): Removed long long cast and print hex value
+       additionally. Also added version for SIZEOF_VOID_P == 4.
+       (SHOW_ADR_CONST): Added.
+       (SHOW_FLT_CONST): Print hex value additionally.
+       (SHOW_DBL_CONST): Likewise. Also added version for SIZEOF_VOID_P == 4.
+       (show_icmd): Smaller changes.
+
+2006-10-30 12:27  twisti
+
+       * src/threads/native/threads.h (MUTEXSIM): Removed.
+       (pthread_mutex_rec_t): Likewise.
+       (pthread_mutex_init_rec): Likewise.
+       (pthread_mutex_destroy_rec): Likewise.
+       (pthread_mutex_lock_rec): Likewise.
+       (pthread_mutex_unlock_rec): Likewise.
+       * src/threads/native/threads.c (pthread_mutex_init_rec): Removed.
+       (pthread_mutex_destroy_rec): Likewise.
+       (pthread_mutex_lock_rec): Likewise.
+       (pthread_mutex_unlock_rec): Likewise.
+       (compiler_lock): Use pthread functions.
+       (compiler_unlock): Likewise.
+       (threads_cast_darwinstop): Warning fixes and use vm_abort.
+       (threads_cast_darwinresume): Use vm_abort.
+       (threads_cast_stopworld): Warning fixes.
+       (pthreads_preinit) [!MUTEXSIM]: Removed code.
+
+2006-10-30 11:52  edwin
+
+       * src/vm/jit/intrp/intrp.h (Cell): Moved the typedef upward, so we can
+       use it in other headers.
+       (global_sp): Does not need the complex casts anymore.
+       
+       * src/threads/native/threads.h (threadobject): Made _global_sp a
+       Cell*.
+       * src/threads/native/threads.c: Likewise.
+
+2006-10-30 11:21  edwin
+
+       * src/mm/memory.h (ALIGN): Renamed to MEMORY_ALIGN.
+       * src/mm/memory.c: Likewise.
+       * src/vm/jit/dseg.c: Likewise.
+       * src/vm/jit/parse.c: Likewise.
+       * src/vm/jit/codegen-common.c: Likewise.
+       * src/vm/linker.c: Likewise.
+       * src/mm/nogc.c: Likewise.
+       * src/cacaoh/headers.c: Likewise.
+
+2006-10-30 11:04  edwin
+
+       * src/threads/native/threads.c (threads_dump): Cast pthread_t to long
+       for printing it.
+
+2006-10-30 11:00  edwin
+
+       * src/vm/jit/cfg.c (cfg_build): Removed set-but-not-used variable (m).
+       * src/vm/jit/ifconv/ifconv.c (check): Likewise (cd).
+       * src/vm/jit/stack.c (stack_reanalyse_block): Likewise (maythrow).
+       (stack_analyse): Likewise (code, b_index).
+       * src/vm/jit/show.c (show_basicblock): Likewise (m).
+       * src/vm/jit/mips/emit.c (emit_copy): Likewise (rd).
+       * src/vm/jit/parse.c (parse): Likewise (code).
+       * src/vm/exceptions.c (exceptions_handle_exception): Likewise
+       (framesize).
+
+2006-10-30 10:32  edwin
+
+       * src/vm/jit/verify/typecheck-common.c (typecheck_init_flags): Removed
+       set-but-not-used variable `i`.
+
+2006-10-30 10:31  edwin
+
+       * src/vm/jit/verify/typecheck-builtins.inc: Removed set-but-not-used
+       variable `cls`.
+
+2006-10-30 10:15  edwin
+
+       * src/vm/jit/alpha/codegen.c (codegen): Zero `uf` to avoid warning.
+
+2006-10-30 00:45  edwin
+
+       * src/vm/builtin.c (builtin_print_argument): Made logtextlen an in/out
+       argument. Correctly reallocate logtext, increase logtextlen.
+       (builtin_trace_args): Pass &logtextlen to builtin_print_argument.
+       (builtin_displaymethodstop): Likewise.
+
+2006-10-29 23:43  edwin
+
+       * src/vm/jit/jit.h (stackelement): Removed the obsolete fields
+       `typeinfo` and `regoff`.
+
+2006-10-29 23:37  edwin
+
+       * src/vm/jit/stack.c (stack_grow_variable_array): Zero the additional
+       space when reallocating the jd->var array.
+       
+       * src/vm/jit/parse.c (parse_realloc_instructions): Zero the
+       additional space when reallocating the instructions array.
+
+2006-10-29 23:33  edwin
+
+       * src/vm/jit/parse.c (parse): Fix in ICMD_TABLESWITCH: Put table into
+       dump memory.
+
+2006-10-29 23:23  edwin
+
+       * NEWS: Typo fixed.
+
+2006-10-29 16:21  edwin
+
+       * src/vm/suck.c (stdlib.h): Include to avoid warning about `free`.
+
+2006-10-29 16:14  edwin
+
+       * src/vm/suck.c (suck_add_from_property): Use `free` to free memory
+       coming out of the C library - it has not been allocated with M?NEW,
+       so M?FREE is wrong here.
+
+2006-10-29 14:49  twisti
+
+       * src/vm/builtin.c (builtin_print_argument): Print float/double values
+       with %g and addresses as hex.
+       (builtin_trace_args): Fixed message length calclation.
+       (builtin_displaymethodstop): Fixed bug: we only passed the long value.
+
+2006-10-29 11:15  edwin
+
+       * src/cacaoh/headers.c (vm_abort): Print the error message before
+       aborting.
+
+2006-10-28 19:40  twisti
+
+       * NEWS: New news.
+
+2006-10-28 19:26  twisti
+
+       * src/vm/jit/dseg.c (dseg_find_float): Compare hex value.
+       (dseg_find_double): Likewise.
+
+2006-10-28 17:45  twisti
+
+       * NEWS: Added some stuff.
+
+2006-10-28 17:15  edwin
+
+       * NEWS: Added news for CACAO 0.97.
+
+2006-10-28 16:55  edwin
+
+       * src/vm/jit/jit.c (stackreq): Fixed for DUP/SWAP instructions. The
+       numbers for DUP2_X1 and DUP2_X2 were also wrong before the new IR
+       had been introduced. The new IR in addition needs extra temps in some
+       cases, thus the numbers before the 'plus' operators.
+
+2006-10-28 16:51  edwin
+
+       * src/vm/jit/stack.c (stack_analyse): Store vartop in jitdata.
+       
+       * src/vm/jit/show.c (show_method): Show number of variables.
+       
+       * tests/regression/jasmin/test_many_dup2_x2.j: New test.
+       * tests/regression/jasmin/test_many_dup.j: Likewise.
+       * tests/regression/jasmin/test_many_dup_x2.j: Likewise.
+       * tests/regression/jasmin/test_many_swap.j: Likewise.
+       * tests/regression/jasmin/test_many_dup2.j: Likewise.
+       * tests/regression/jasmin/test_many_dup2_x1.j: Likewise.
+       * tests/regression/jasmin/test_many_dup_x1.j: Likewise.
+       
+       * tests/regression/jasmin/Makefile.am: Added new tests.
+
+2006-10-28 15:21  edwin
+
+       * src/vm/jit/stack.c (stackdata_t): Added field varsallocated.
+       (stack_grow_variable_array): Smarted memory allocation.
+       (stack_analyse): Initialize sd.varsallocated.
+
+2006-10-28 13:02  edwin
+
+       * src/vm/access.c (ACCESS_ASSERT): Replaced with assert. Because of
+       a mistake in the definition of ACCESS_DEBUG, ACCESS_ASSERT always
+       was a NOP!
+       (access_is_accessible_member): Fixed assertion.
+
+2006-10-28 12:53  edwin
+
+       * src/vm/loader.c (LOADER_ASSERT): Replaced with assert.
+
+2006-10-28 12:49  edwin
+
+       * src/vm/class.c (CLASS_ASSERT): Replaced by assert.
+
+2006-10-28 12:47  edwin
+
+       * src/vm/class.c (class_array_of): Release dump memory.
+       (class_multiarray_of): Likewise.
+       (class_get_classref_multiarray_of): Likewise.
+
+2006-10-27 10:41  twisti
+
+       * src/vm/vm.c: Renamed -Xglibj to -Xbootclasspath/c to match jamvm's
+       option (Robert, Mark and I decided that once).
+       (vm_create): Removed unnecessary k. #ifdef'd the profiling stuff.
+       (vm_run): Removed commented code.
+       * src/vm/options.c, src/vm/options.h [ENABLE_PROFILING] (opt_prof)
+       (opt_prof_bb): Added.
+       * src/vm/jit/jit.c (jit_compile) [ENABLE_PROFILING]: Added for
+       opt_prof stuff.
+       [ENABLE_VERIFIER]: Added for flag setting.
+       * src/vm/jit/codegen-common.c (codegen_createnativestub)
+       [ENABLE_PROFILING]: Added for opt_prof stuff.
+
+2006-10-26 16:41  edwin
+
+       * src/vm/jit/alpha/codegen.c (codegen): Declare variables at the start
+       of codegen (uf, fi).
+
+2006-10-26 12:05  twisti
+
+       * src/vm/jit/powerpc/codegen.c (codegen): Made fieldinfo and
+       unresolved_field fucntion variables, fieldtype was uninitialized for
+       PUTFIELD.
+
+2006-10-26 11:57  twisti
+
+       * src/vm/jit/x86_64/codegen.c (codegen): Made fieldinfo and
+       unresolved_field function variables (it makes the code more readable).
+
+2006-10-26 11:47  edwin
+
+       * src/vm/jit/alpha/codegen.c (codegen): Fixed ICMD_PUTFIELD: Set
+       fieldtype before it is used. Fixed warnings.
+       
+       * src/vm/jit/mips/codegen.c (codegen): Prevent warnings.
+
+2006-10-26 11:35  twisti
+
+       * NEWS: Added some 0.97 news.
+
+2006-10-26 11:30  twisti
+
+       * src/vm/exceptions.c (exceptions_print_exception): Removed [!NDEBUG]
+       condition, as we may need this function in the VM (e.g. recompile).
+       * src/vm/jit/recompile.c (vm/exceptions.h): Added.
+       (recompile_thread): Call exceptions_print_exception in exception case.
+
+2006-10-26 11:29  edwin
+
+       * src/vm/jit/intrp/codegen.c (codegen): Initialize uf to NULL for
+       resolved fields, to avoid warnings.
+       
+       * src/vm/jit/intrp/engine.c (engine): Initialize
+       classcastexception_object and arrayindexoutofbounds_index to avoid
+       warnings.
+
+2006-10-26 11:23  edwin
+
+       * src/vm/jit/dseg.c (dseg_addlinenumber_inline_start): Read inline
+       info from instruction, ported to new instruction format.
+       (dseg_addlinenumber_inline_end): Likewise.
+
+2006-10-26 11:19  edwin
+
+       * src/vm/jit/show.c (show_icmd): Fixed warning fix.
+
+2006-10-26 11:18  edwin
+
+       * src/threads/native/threads.c (threads_table_dump): Fix warning (the
+       function is currently unused, but may become handy again.)
+
+2006-10-26 11:15  edwin
+
+       * src/vm/jit/show.c (show_method): Fixed warning.
+       (show_basicblock): Likewise.
+       (show_icmd): Likewise.
+
+2006-10-26 11:04  twisti
+
+       * src/vm/jit/x86_64/md.h: Removed.
+       * src/vm/jit/x86_64/Makefile.am (libarch_la_SOURCES): Removed md.h.
+       * src/vm/jit/x86_64/codegen.c (md.h): Removed.
+       (codegen): Warning fix.
+
+2006-10-26 10:34  twisti
+
+       * src/vm/jit/mips/md-abi.h: Fixed MIPS64 compilation and backported
+       some MIPS32 stuff.
+
+2006-10-26 10:09  twisti
+
+       * src/vm/descriptor.h (paramdesc): We need a type for MIPS32, as the
+       type in the allocated argument register may be different to the actual
+       register (e.g. passing a float in an integer register).
+
+2006-10-26 09:55  twisti
+
+       * src/vm/jit/mips/codegen.c (codegen): More comment and brace changes.
+
+2006-10-26 09:44  twisti
+
+       * src/vm/jit/mips/codegen.c (codegen): Comment and brace changes.
+
+2006-10-26 09:29  twisti
+
+       * src/vm/jit/mips/md-asm.h: Renamed t8 to t4 and removed t9, as it's
+       actually itmp3.
+       * src/vm/jit/mips/asmpart.S: Likewise.
+
+2006-10-25 14:26  tbfg
+
+       * src/vm/jit/powerpc64/linux/md-abi.c (_ALIGN): Renamed to
+       CACAO_ALIGN because of name clash with /usr/include/asm-ppc64/page.h.
+       
+       * src/vm/jit/powerpc64/emit.c (emit_lconst): Added.
+       (emit_iconst): Reformatted.
+       
+       * src/vm/jit/powerpc64/codegen.c (codegen):
+       Replaced all stackframesize with cd->stackframesize.
+       Implemented ICMD_IF_LLT, ICMD_IF_LLE, ICMD_IF_LGE, ICMD_IF_LGT.
+       
+       * src/vm/jit/powerpc64/asmpart.S:
+       Partially fixed exception path.
+       (asm_cacheflush): Fixed.
+       
+       * src/vm/jit/powerpc64/codegen.h (LCONST): Implemented.
+       
+       * tests/if_tests.java: Added simple testcase for if and compare.
+
+2006-10-24 23:24  edwin
+
+       * src/vm/utf8.h, src/vm/utf8.c (utf8_safe_number_of_u2s): Modified to
+       completely emulate the behaviour of the RI in case of truncated UTF-8
+       characters. This requires an extra strlen(text) beforehand. We still
+       require zero-termination. We could drop that with a few extra changes,
+       should we find other uses for these functions.
+       (utf8_safe_convert_to_u2s): Likewise.
+       
+       * src/vm/string.c (javastring_safe_new_from_utf8): Pass number of
+       bytes to the decoding functions.
+
+2006-10-24 17:51  edwin
+
+       * src/vm/utf8.c (utf8_safe_number_of_u2s): Skip only bytes beginning
+       with high bits 10 in invalid sequences.
+       (utf8_safe_convert_to_u2s): Likewise.
+
+2006-10-24 16:41  edwin
+
+       * src/vm/utf8.h, src/vm/utf8.c (utf8_safe_number_of_u2s): New
+       function.
+       (utf8_safe_convert_to_u2s): Likewise.
+       
+       * src/vm/stringlocal.h, src/vm/string.c
+       (javastring_safe_new_from_utf8): New function.
+       
+       * src/native/jni.c (_Jv_JNI_NewStringUTF): Use the new functions for
+       safe UTF-8 decoding.
+
+2006-10-24 11:17  twisti
+
+       * src/vm/jit/dseg.c (dseg_display): Rewritten.
+
+2006-10-22 04:28  ajordan
+
+       * src/vm/jit/sparc64/codegen.h: fixed M_SAVE.
+       
+       * src/vm/jit/sparc64/disass.c: configuring disass for big-endian.
+
+2006-10-22 02:49  ajordan
+
+       * src/vm/jit/sparc64/emit.c: Implemented trace enter/exit functions.
+       * src/vm/jit/sparc64/codegen.c: Likewise.
+       
+       * src/vm/jit/sparc64/md.c: Implemented md_get_method_patch_address.
+       
+       * src/vm/jit/sparc64/asmpart.S(asm_call_jit_compiler): Fixed window
+       handling
+       
+       * src/vm/jit/sparc64/disass.c: Fixed disassembly printing.
+       
+       * src/vm/jit/sparc64/md-abi.h: Minor changes/fixes.
+       * src/vm/jit/sparc64/codegen.h: Likewise.
+       * src/vm/jit/sparc64/md-asm.h: Likewise.
+
+2006-10-22 00:38  edwin
+
+       * src/vm/jit/jit.c (jit_asm_compile): Fixed xpc for extern
+       stackframeinfo by subtracting 1 from the return address.
+       This fixes stacktraces when exceptions are thrown out of
+       the compiler.
+       
+       * tests/regression/extest.2output: Changed line numbers to
+       the values same the RI returns, which are correct upon inspection
+       of the Java code.
+
+2006-10-21 15:06  edwin
+
+       * src/vm/jit/parse.c (parse): Bugfix for -noverify: Do not make the
+       variable array dependant on jd->flags, as this breaks stack_analyse.
+
+2006-10-20 18:35  twisti
+
+       * src/vm/jit/mips/codegen.c (md.h): Removed.
+       * src/vm/jit/mips/md.h: Removed.
+       * src/vm/jit/mips/Makefile.am (libarch_la_SOURCES): Removed md.h.
+
+2006-10-20 14:53  twisti
+
+       * src/vm/jit/jit.c (jit_init) [ENABLE_JIT]: Call stack_init only for
+       JIT.
+       [ENABLE_JIT] (jit_asm_compile): Only for JIT.
+       
+       * src/vm/jit/Makefile.am (SUBDIRS) [ENABLE_JIT]: Add allocator only
+       for JIT.
+       (libjit_la_SOURCES) [ENABLE_JIT]: Compile reg.[ch], replace.[ch] and
+       stack.[ch] only for JIT.
+       
+       * src/cacaoh/headers.c [ENABLE_INTRP] (intrp_asm_abstractmethoderror):
+       Added.
+
+2006-10-20 14:26  twisti
+
+       * src/vm/linker.c (link_class_intern): Handle AbstractMethodError for
+       interpreter (missed this one in the last commit).
+
+2006-10-20 14:22  twisti
+
+       * src/vm/jit/intrp/asmpart.c (intrp_asm_abstractmethoderror): Added.
+       * src/vm/jit/asmpart.h [ENABLE_INTRP] (intrp_asm_abstractmethoderror):
+       Likewise.
+       * src/vm/linker.c (linker_addinterface): Handle AbstractMethodError
+       for interpreter.
+
+2006-10-20 13:58  twisti
+
+       * src/native/vm/gnu_classpath_VMSystemProperties.c (preInit): Removed
+       unused ld_library_path.
+
+2006-10-20 13:54  twisti
+
+       * src/vm/suck.c (vm/vm.h): Added.
+       (bootclasspath, classpath): Removed.
+       (suck_add_from_property): Prefix bootclasspath with _Jv_.
+       * src/vm/suck.h (bootclasspath, classpath): Removed.
+       
+       * src/vm/vm.c (_Jv_bootclasspath, _Jv_classpath)
+       (_Jv_java_library_path): Added.
+       (version): Prefix bootclasspath with _Jv_.
+       (vm_create): Likewise, set _Jv_java_library_path to LD_LIBRARY_PATH
+       before handling commandline options.
+       * src/vm/vm.h (_Jv_bootclasspath, _Jv_classpath)
+       (_Jv_java_library_path): Added.
+       
+       * src/native/vm/gnu_classpath_VMSystemProperties.c (preInit): Prefix
+       bootclasspath and classpath with _Jv_, use _Jv_java_library_path for
+       setting java.library.path.
+       
+       * src/cacao/cacao.c (main): First let dlopen try to open libjvm at
+       it's default locations.
+       * src/native/native.c (native_init): Likewise.
+       
+       * src/cacaoh/headers.c (_Jv_bootclasspath): Added.
+       
+       * contrib/setenvinstalled.in: Set LD_LIBRARY_PATH again.
+       * contrib/setenvsource.in: Likewise.
+       
+       * tests/regression/native/Makefile.am (JAVAFLAGS): Removed
+       -Djava.library.path=.
+       (check): Set LD_LIBRARY_PATH.
+       * tests/regression/codepatching/Makefile.am (check): Likewise.
+       * tests/regression/Makefile.am: Likewise.
+
+2006-10-20 13:09  twisti
+
+       * src/vm/signal.c (signal_init): Added dummy allocation to install
+       Boehm's signal handlers.
+       * src/threads/native/threads.c (threads_preinit): Removed dummy
+       allocation.
+       
+       * src/vm/vm.c (vm_create): Call threads_preinit before gc_init.
+       * src/cacaoh/cacaoh.c (main): Likewise.
+
+2006-10-20 12:00  twisti
+
+       * src/vm/exceptions.c [ENABLE_JIT] (exceptions_handle_exception): Only
+       required for JIT.
+
+2006-10-20 00:37  ajordan
+
+       * src/mm/memory.c: fixed typo in _no_threads_dumpinfo definition
+
+2006-10-19 10:10  twisti
+
+       * src/threads/native/threads.c (threads_interrupt_thread): Renamed to
+       threads_thread_interrupt, send thread a SIGHUP singal to interrupt
+       blocking system calls (thanks to Robert Schuster).
+       (threads_dump): Removed threads_sleep call.
+       
+       * src/threads/native/threads.h (threads_interrupt_thread): Renamed to
+       threads_thread_interrupt.
+       * src/native/vm/java_lang_VMThread.c (interrupt): Likewise.
+       * src/native/jvmti/jvmti.c (InterruptThread): Likewise.
+       
+       * src/vm/signal.c (signal_init): Register SIGHUP.
+       (signal_handler_sighup): Added.
+
+2006-10-19 09:32  twisti
+
+       * src/vm/jit/stacktrace.c (stacktrace_dump_trace): Changed signature.
+       * src/vm/jit/stacktrace.h: Likewise.
+       
+       * src/vm/jit/codegen-common.c (codegen_get_pv_from_pc): Pass
+       threadobject to stacktrace_dump_trace.
+       
+       * src/vm/signal.c (signal_init): Don't register SIGUSR1.
+       (signal_handler_sigusr1): Removed.
+       
+       * src/native/jni.h: Include GNU Classpath JNI header before we define
+       our header.
+       (localref_table): Forward typedef.
+       
+       * src/threads/native/threads.c (threads_dump): Pass threadobject to
+       stacktrace_dump_trace.
+       
+       * src/cacaoh/headers.c (stacktrace_dump_trace): Added.
+
+2006-10-19 09:27  twisti
+
+       * src/threads/native/threads.h (threadobject, threads_table_entry_t)
+       (threads_table_t): Forward typedef.
+       (threadobject): Changed dumpinfo to dumpinfo_t.
+
+2006-10-19 09:25  twisti
+
+       * src/mm/memory.h (dumpblock): Postfixed with _t and moved before
+       internal includes, as we have some problems with threadobject.
+       (dumpinfo): Likewise.
+       * src/mm/memory.c: Postfixed dumpblock and dumpinfo with _t.
+
+2006-10-19 09:23  twisti
+
+       * src/vm/jit/powerpc/codegen.c (codegen): Warning fixes.
+
+2006-10-18 16:55  edwin
+
+       * src/vm/jit/codegen-common.c (codegen_createnativestub): Initialize
+       jd->flags to zero.
+
+2006-10-18 16:27  edwin
+
+       * tests/regression/jasmin/runtest: Removed debugging `tee TEST`.
+       * tests/regression/jasmin/Makefile.am (CLEANFILES): Added file
+       TESTSIA.
+
+2006-10-18 16:19  edwin
+
+       * tests/regression/jasmin/Makefile.am (SOURCE_FILES): Use EXTRA_DIST,
+       instead.
+
+2006-10-18 15:57  edwin
+
+       * src/vm/jit/i386/linux/Makefile.am (noinst_HEADERS): Added md-asm.h.
+       * src/vm/jit/i386/freebsd/Makefile.am (noinst_HEADERS): Likewise.
+
+2006-10-18 15:27  twisti
+
+       * src/vm/jit/Makefile.am (DIST_SUBDIRS): Added powerpc64.
+
+2006-10-18 15:19  twisti
+
+       * src/vm/jit/Makefile.am (DIST_SUBDIRS): Added optimizing.
+
+2006-10-18 15:14  twisti
+
+       * src/vm/jit/sparc64/Makefile.am (libarch_la_SOURCES): Removed md.h.
+
+2006-10-18 15:09  twisti
+
+       * src/vm/jit/i386/Makefile.am (libarch_la_SOURCES): Renamed md-emit.h
+       to emit.h.
+
+2006-10-18 15:04  twisti
+
+       * configure.ac (AC_INIT): Changed to version 0.97rc.
+       (CFLAGS): Changed to -O2.
+
+2006-10-18 14:53  edwin
+
+       * tests/regression/jasmin/Makefile.am: Temporarily disable failing
+       tests for the release.
+       * src/vm/jit/stack.c (stack_analyse): Check field type when creating
+       a PUTFIELDCONST/PUTSTATICCONST instruction.
+
+2006-10-16 09:59  edwin
+
+       * src/vm/jit/parse.c (parse_resolve_exception_table): Do not use
+       codegendata.
+       (parse): Likewise.
+       
+       * src/vm/jit/stack.c (stack_analyse): Likewise.
+
+2006-10-16 09:02  twisti
+
+       * src/vm/jit/allocator/simplereg.c [ENABLE_STATISTICS]
+       (simplereg_make_statistics): Don't print this INREGISTER stuff.
+
+2006-10-16 08:53  twisti
+
+       * src/vm/jit/jit.c (jit_compile_intern) [ENABLE_STATISTICS]:
+       exceptiontablelength is now in jitdata.
+
+2006-10-16 00:05  ajordan
+
+       * src/vm/jit/sparc64/codegen.c: Ported to unified variables.
+       * src/vm/jit/sparc64/emit.c: Likewise.
+       
+       * src/vm/jit/sparc64/md.c: Implemented md_codegen_get_pv_from_pc.
+       
+       * src/vm/jit/sparc64/codegen.h: Some fixes.
+       * src/vm/jit/sparc64/asmpart.S: Likewise.
+
+2006-10-15 22:44  edwin
+
+       * src/vm/linker.c (link_class_intern): Removed unused variable.
+
+2006-10-15 22:25  edwin
+
+       * src/vm/jit/jit.h (exception_entry): New struct.
+       (jitdata): Added exceptiontable fields. Cleaned up.
+       
+       * src/vm/exceptions.h (exceptionentry): Removed.
+       
+       * src/vm/jit/dseg.h (dseg_exception_entry): New struct.
+       
+       * src/vm/jit/stack.h (BLOCK_OF): Moved to parse.h.
+       * src/vm/jit/parse.h (BLOCK_OF): Added.
+       
+       * src/vm/jit/codegen-common.h (codegendata): Removed exceptiontable
+       and exceptiontablelength.
+       
+       * src/vm/loader.c (load_method): Renamed m->exceptiontable* to
+       m->rawexceptiontable*.
+       (load_class_from_classbuffer): Likewise.
+       * src/vm/method.c (method_free): Likewise.
+       
+       * src/vm/method.h (methodinfo): Renamed m->exceptiontable* to
+       m->rawexceptiontable*.
+       (exceptiontable): Renamed to raw_exception_entry. Removed fields that
+       are only used in jd->exceptiontable.
+       
+       * src/vm/jit/powerpc/codegen.c (codegen): Moved exceptiontable to jd,
+       renamed struct exceptiontable to exception_entry.
+       * src/vm/jit/sparc64/codegen.c (codegen): Likewise.
+       * src/vm/jit/alpha/codegen.c (codegen): Likewise.
+       * src/vm/jit/stack.c (stackdata_t): Likewise.
+       (stack_analyse): Likewise.
+       (stack_reanalyse_block): Likewise.
+       * src/vm/jit/optimizing/graph.c (graph_add_exceptions): Likewise.
+       * src/vm/jit/show.c (show_method): Likewise.
+       * src/vm/jit/verify/typecheck-common.h (verifier_state): Likewise.
+       * src/vm/jit/verify/typecheck.c (verify_basic_block): Likewise.
+       * src/vm/jit/verify/typecheck-stackbased.c (typecheck_stackbased):
+       Likewise.
+       * src/vm/jit/mips/codegen.c (codegen):
+       * src/vm/jit/loop/loop.h (LoopContainer): Likewise.
+       * src/vm/jit/loop/analyze.c (analyze_nested): Likewise.
+       (analyze_or_exceptions): Likewise.
+       (update_internal_exceptions): Likewise.
+       (create_static_checks): Likewise.
+       (optimize_loops): Likewise.
+       * src/vm/jit/inline/inline.c (test_inlining): Likewise.
+       * src/vm/jit/allocator/lsra.c (lsra_add_exceptions): 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/schedule/schedule.h (M_SCHEDULE_SET_EXCEPTION_POINT):
+       Likewise.
+       * src/vm/jit/x86_64/codegen.c (codegen): Likewise.
+       * src/vm/jit/jit.c (jit_compile_intern): Likewise.
+       (jit_jitdata_new): Initialize exceptiontable fields.
+       
+       * src/vm/jit/codegen-common.c (codegen_setup): Removed exceptiontable
+       fields.
+       
+       * src/vm/jit/parse.c (parse_mark_exception_boundaries): New function.
+       (parse_resolve_exception_table): New function.
+       (fillextable): Removed.
+       (parse): Use parse_mark_exception_boundaries and
+       parse_resolve_exception_table. Write the basicblockindex for the end
+       marker block.
+       
+       * src/vm/jit/intrp/asmpart.c (exceptionentry): Renamed to
+       dseg_exception_entry.
+       * src/vm/exceptions.c (exceptions_handle_exception): Likewise.
+       
+       * src/vm/linker.c (link_class_intern): Do not resolve exception
+       classes here. This is now done in parse.c.
+
+2006-10-15 13:52  edwin
+
+       * src/vm/jit/jit.h: Indentation cleanup.
+
+2006-10-15 13:37  edwin
+
+       * src/vm/jit/jit.h (flags_operand_t): Removed `fields` struct. It was
+       not safe to use, as defined.
+
+2006-10-15 13:19  edwin
+
+       * src/vm/jit/jit.h (flags_operand_t): Removed unused argcount.
+       (ACONST_LOAD): Removed.
+       (ACONST_BUILTIN): Removed.
+
+2006-10-15 12:59  edwin
+
+       * src/vm/method.h (methodinfo): Removed c_block_nr.
+       * src/vm/jit/jit.h (jitdata): Removed c_block_nr.
+       (BASICBLOCK_INIT): Do not set bptr->nr here.
+       
+       * src/vm/jit/jit.c (jit_compile_intern): Renumber basic blocks after
+       transformations.
+       (jit_check_basicblock_numbers): Made stricter.
+       
+       * src/vm/jit/stack.c (stack_append_block): Set basic block numbers
+       correctly.
+       (stack_clone_block): Do not set bptr->nr here.
+       
+       * src/vm/jit/verify/typecheck.c (typestate_reach): Use the correct
+       check for setting the repeat flag.
+       (typecheck): Check basic block numbers.
+       
+       * src/vm/jit/verify/typecheck-stackbased.c (typecheck_stackbased):
+       Check basic block numbers.
+       
+       * src/vm/jit/loop/analyze.c (copy_handler): Do not use c_block_nr.
+       (create_static_checks): Likewise.
+       * src/vm/jit/inline/inline.c (create_block): Likewise.
+       * src/vm/jit/parse.c (parse): Likewise.
+
+2006-10-15 12:20  edwin
+
+       * src/vm/jit/jit.c (jit_renumber_basicblocks): New function.
+       (jit_check_basicblock_numbers): Likewise.
+       (jit_init): Removed obsolete variable `i`.
+       
+       * src/vm/jit/jit.h (jit_renumber_basicblocks): New function.
+       (jit_check_basicblock_numbers): Likewise.
+
+2006-10-14 19:12  twisti
+
+       * src/native/jni.c (_Jv_JNI_DetachCurrentThread): Made
+       --disable-threads-safe.
+
+2006-10-13 18:29  edwin
+
+       * tests/regression/jasmin/Makefile.am: Added new tests.
+
+2006-10-13 18:25  edwin
+
+       * src/vm/jit/verify/icmds.c: Check basic types of instance for field
+       access.
+       * src/vm/jit/verify/typecheck-fields.inc: Check basic type of value.
+       
+       * src/vm/jit/verify/typecheck-stackbased-gen.inc: Regenerated.
+       * src/vm/jit/verify/typecheck-variablesbased-gen.inc: Likewise.
+       
+       * src/vm/jit/verify/typecheck.c (verify_fieldaccess): Define
+       VERIFY_ERROR for the include file.
+       
+       * src/vm/jit/verify/typecheck-stackbased.c (VERIFY_ERROR): Fixed
+       macro.
+       
+       *
+       tests/regression/jasmin/test_verify_fail_putfieldconst_basic_type_instance.j,
+       tests/regression/jasmin/test_verify_fail_getfield_basic_type_instance.j,
+       tests/regression/jasmin/test_verify_fail_putfield_basic_type_value.j,
+       tests/regression/jasmin/test_verify_fail_putstatic_basic_type_value.j,
+       tests/regression/jasmin/test_verify_fail_putfieldconst_basic_type_value.j,
+       tests/regression/jasmin/test_verify_fail_getfield_basic_type_value.j,
+       tests/regression/jasmin/test_verify_fail_putfield_basic_type_instance.j,
+       tests/regression/jasmin/test_verify_fail_putfield_basic_type_lookup.j,
+       tests/regression/jasmin/test_verify_fail_getfield_basic_type_lookup.j,
+       tests/regression/jasmin/test_verify_fail_putstaticconst_basic_type_value.j:
+       New tests.
+       
+       * tests/regression/jasmin/runtest: Look for specified ICMDs in -sia
+       output.
+
+2006-10-13 17:06  tbfg
+
+       * src/vm/jit/powerpc64/md.c (md_get_method_patch_address): Fixed
+       comments.
+       
+       * src/vm/jit/powerpc64/codegen.c: Added credits.
+       
+       * src/vm/jit/powerpc64/asmpart.S (asm_handle_nat_exception): Fixed
+       exception handling code. Added credits.
+
+2006-10-13 16:30  edwin
+
+       * src/vm/jit/verify/typecheck-fields.inc: Re-activate stack overflow
+       checking.
+       
+       * src/vm/jit/verify/typecheck-common.h (verifier_state): Added field
+       `stackceiling`.
+       
+       * src/vm/jit/verify/typecheck-stackbased.c (CHECK_STACK_DEPTH):
+       Cleaned up.
+       (CHECK_STACK_SPACE): Cleaned up.
+       (typecheck_stackbased_verify_fieldaccess): Check for stack overflow.
+       (typecheck_stackbased): Moved stackceiling into state.
+
+2006-10-13 16:06  edwin
+
+       * src/vm/jit/codegen-common.c (codegen_reg_of_var): Removed `inline`
+       declaration. The crappy IRIX compiler does not create a global symbol
+       otherwise.
+
+2006-10-13 14:34  edwin
+
+       * src/vm/jit/verify/typecheck.c (verify_basic_block): Use generated
+       code.
+       
+       * src/vm/jit/verify/typecheck-stackbased-gen.inc: New file, GENERATED!
+       * src/vm/jit/verify/typecheck-variablesbased-gen.inc: Likewise.
+       
+       * src/vm/jit/verify/typecheck.h (typecheck_stackbased): Added.
+       
+       * src/vm/jit/verify/Makefile.am: Added source files for both generated
+       verifiers.
+       
+       * src/vm/jit/jit.c (jit_compile_intern): Call the stack-based verifier
+       for the interpreter.
+       
+       * src/vm/vm.c (vm_create): Re-enable verification fot the interpreter.
+
+2006-10-13 14:22  edwin
+
+       * src/vm/jit/verify/generate.pl: Clearly mark generated code.
+
+2006-10-13 14:00  edwin
+
+       * src/vm/jit/icmdtable.inc: Documented prettily.
+
+2006-10-13 13:11  edwin
+
+       * src/vm/jit/jit.h (op_data): Removed.
+       (stackreq): Moved to a more logical place.
+       
+       * src/vm/jit/jit.c (op_data): Removed.
+       (jit_init): Removed code initializing op_data.
+       
+       * src/vm/jit/optimizing/lifetimes.c (LifeOutAtStatement): Use
+       icmd_table.
+       * src/vm/jit/optimizing/ssa.c (dead_code_elimination): Likewise.
+
+2006-10-13 12:49  edwin
+
+       * src/vm/jit/jit.h (icmd_table): Added.
+       (icmd_names): Removed.
+       
+       * src/vm/jit/jit.c (icmd_table): Added.
+       (icmd_names): Removed.
+       
+       * src/vm/jit/show.c (show_icmd): Use icmd_table.
+       * src/vm/jit/optimizing/ssa.c (dead_code_elimination): Likewise.
+
+2006-10-13 12:47  edwin
+
+       * src/vm/resolve.c: Removed obsolete debug prints.
+
+2006-10-13 11:57  edwin
+
+       * src/vm/jit/jit.h: Added DF_ constants for ICMD table.
+       Added CF_ constants.
+       Added ICMDTABLE_ constants.
+       (icmdtable_entry_t): New struct.
+
+2006-10-13 11:28  edwin
+
+       * src/vm/jit/icmdtable.inc: New file. Not used, yet.
+       * src/vm/jit/Makefile.am: Added new file.
+
+2006-10-13 11:27  edwin
+
+       * src/vm/jit/verify/generate.pl: Omit comma at end of ICMD table.
+
+2006-10-13 11:11  edwin
+
+       * src/vm/jit/verify/typecheck-stackbased.c: New file. Not used, yet.
+       * src/vm/jit/verify/icmds.c: New file.
+       * src/vm/jit/verify/generate.pl: New file.
+       
+       * src/vm/jit/verify/typecheck-invoke.inc: Added copyright notice.
+       * src/vm/jit/verify/typecheck-fields.inc: Likewise.
+       * src/vm/jit/verify/typecheck-builtins.inc: Likewise.
+       * src/vm/jit/verify/typecheck-common.c: Likewise.
+       * src/vm/jit/verify/typecheck-common.h: Likewise.
+
+2006-10-13 10:36  edwin
+
+       * src/vm/jit/verify/typeinfo.c (typevector_store): Remove obsolete
+       assertion.
+
+2006-10-13 10:33  edwin
+
+       * src/vm/jit/stack.c (stack_analyse): Set iptr->dst for CHECKNULL.
+
+2006-10-13 00:47  edwin
+
+       * src/vm/builtin.c (builtin_isanysubclass): Bugfix for the case that
+       `sub` is an interface and `super` is a class. The function returned
+       random values in this case, since it used the <= 0 base value of the
+       interface class to perform the subclass check. The only case in which
+       an interface can be a subclass of a non-interface `super` is when
+       `super` is java.lang.Object, so we check explicitly for this case.
+       This fixes a bug with BeanShell-2.0b4.
+       
+       (builtin_isanysubclass_vftbl): Likewise.
+
+2006-10-12 23:34  edwin
+
+       * src/vm/jit/stack.c (stack_check_invars): Bugfix: Only set flags to
+       BBTYPECHECK_REACHED if the block has already been analysed.
+       
+       (stack_check_invars_from_outvars): Likewise.
+
+2006-10-12 20:06  twisti
+
+       * src/vm/jit/cfg.c (cfg_build): Check for EXH basic blocks in
+       fall-through case.
+
+2006-10-12 15:59  edwin
+
+       * tests/regression/jasmin/runtest: Added timeout capability.
+
+2006-10-12 15:22  edwin
+
+       * src/vm/jit/verify/typecheck-common.h (typecheck_print_statistics):
+       Added prototype.
+       (typecheck_jsr_t): New struct.
+       (typecheck_jsr_caller_t): Likewise.
+       (verifier_state): Added fields for stackbased verifier.
+
+2006-10-12 15:07  edwin
+
+       * src/vm/jit/verify/typecheck-common.c: Made debugging and statistics
+       symbols global.
+       * src/vm/jit/verify/typecheck-common.h: Likewise.
+
+2006-10-12 14:52  edwin
+
+       * src/vm/jit/verify/typecheck-invoke.inc: Added code variants for the
+       stackbased verifier. Not used, yet.
+       * src/vm/jit/verify/typecheck-builtins.inc: Likewise.
+
+2006-10-12 14:42  edwin
+
+       * src/vm/jit/verify/typecheck-common.c: Include headers.
+       * src/vm/jit/verify/typecheck-common.h: Cleanup.
+
+2006-10-12 14:39  edwin
+
+       * src/vm/jit/verify/typecheck.c (ISBUILTIN): Removed.
+       * src/vm/jit/verify/typecheck-builtins.inc (ISBUILTIN): Added.
+
+2006-10-12 14:38  tbfg
+
+       * src/vm/jit/powerpc64/codegen.c (codegen): Adopt locals
+       and regoff changes.
+
+2006-10-12 14:18  edwin
+
+       * src/vm/jit/verify/typecheck.c (verify_invocation): Prepared for
+       addeding the stackbased verifier. No functional change, yet.
+       (verify_builtin): Likewise.
+
+2006-10-12 14:12  edwin
+
+       * src/vm/jit/verify/typecheck-common.c,
+       src/vm/jit/verify/typecheck-common.h (typecheck_init_flags): Added
+       minflags argument.
+       
+       * src/vm/jit/verify/typecheck.c (typecheck): Call typecheck_init_flags
+       with minflags set to BBFINISHED.
+
+2006-10-12 14:02  edwin
+
+       * src/vm/jit/verify/typecheck.c (verify_fieldaccess): New function.
+       (verify_basic_block): Moved field verification into a separate
+       function.
+       
+       * src/vm/jit/verify/typecheck-fields.inc: Removed opcode-dependant
+       stuff. Some code for the stackbased verifier is checked in, but not
+       used, yet.
+
+2006-10-12 13:13  twisti
+
+       * src/vm/jit/mips/linux/md-os.c (thread_restartcriticalsection): Added
+       uClibc support.
+
+2006-10-12 12:44  twisti
+
+       * src/vm/jit/mips/linux/md-os.c (md_signal_handler_sigsegv): Added
+       uClibc support.
+
+2006-10-12 10:10  edwin
+
+       * src/vm/jit/verify/typecheck.c: Moved <assert.h> include to the right
+       place. Moved some code to typecheck-common.[ch].
+       
+       * src/vm/jit/verify/typecheck-common.c: New file.
+       * src/vm/jit/verify/typecheck-common.h: New file.
+       
+       * src/vm/jit/verify/Makefile.am: Added new source files.
+
+2006-10-11 23:52  edwin
+
+       * src/vm/jit/verify/typecheck-builtins.inc: Removed redundant
+       `return true`. Moved declaration of `av`.
+
+2006-10-11 23:44  edwin
+
+       * src/vm/jit/verify/typecheck-invoke.inc: Use invokestatic where
+       possible. Added a comment.
+
+2006-10-11 23:41  edwin
+
+       * src/vm/jit/verify/typecheck-invoke.inc: Indent log messages to make
+       them more readable.
+
+2006-10-11 23:37  edwin
+
+       * src/vm/jit/verify/typecheck.c (verify_invocation): Define jd and dv
+       before including the function body.
+       
+       * src/vm/jit/verify/typecheck-invoke.inc: Removed definitions of jd
+       and dv. Small cleanup.
+
+2006-10-11 23:22  edwin
+
+       * src/vm/jit/verify/typecheck.c (verify_builtin): Define jd and dv
+       before including the function body.
+       
+       * src/vm/jit/verify/typecheck-builtins.inc: Removed definitions
+       of jd and dv.
+
+2006-10-11 23:00  edwin
+
+       * src/vm/jit/verify/typecheck.c (verify_invocation): Moved body to a
+       separate file in order to prepare comitting the stackbased verifier.
+       (verify_builtin): Likewise.
+       (verify_generic_builtin): Likewise, no integrated in verify_builtin.
+       (verify_basic_block): Moved field instruction verification to a
+       separate file.
+       
+       * src/vm/jit/verify/typecheck-invoke.inc: New file.
+       * src/vm/jit/verify/typecheck-fields.inc: New file.
+       * src/vm/jit/verify/typecheck-builtins.inc: New file.
+       
+       * src/vm/jit/verify/Makefile.am: Added new source files.
+
+2006-10-11 19:43  edwin
+
+       * src/cacaoh/headers.c (typeinfo_print_short): Stub added.
+
+2006-10-11 19:42  edwin
+
+       * src/vm/jit/verify/typeinfo.c (typeinfo_init_component): Fixed for
+       the case that srcarray == dst. (The mergedlist was overwritten with
+       NULL in this case.)
+
+2006-10-11 19:40  edwin
+
+       * src/vm/resolve.c, src/vm/resolve.h
+       (resolve_method_param_type_checks_stackbased): New function.
+       (resolve_constrain_unresolved_method_params_stackbased): Likewise.
+
+2006-10-11 16:31  edwin
+
+       *
+       tests/regression/jasmin/test_verify_fail_athrow_wrong_reftype_unresolved.j:
+       New test.
+       
+       * tests/regression/jasmin/test_verify_fail_athrow_wrong_reftype.j:
+       New test.
+       
+       * tests/regression/jasmin/Makefile.am: Added new tests.
+
+2006-10-11 16:21  edwin
+
+       * tests/regression/jasmin/test_verify_fail_areturn_wrong_reftype.j:
+       New test.
+       
+       * tests/regression/jasmin/test_verify_fail_invoke_return_basic_type.j:
+       New test.
+       
+       * tests/regression/jasmin/test_verify_fail_ireturn_wrong_type.j: New
+       test.
+       
+       * tests/regression/jasmin/Makefile.am: Added new tests.
+
+2006-10-11 10:17  edwin
+
+       * tests/regression/jasmin/test_verify_fail_handler_bad_local.j: new
+       test.
+       
+       * tests/regression/jasmin/Makefile.am: Added new test.
+
+2006-10-10 21:16  edwin
+
+       * tests/regression/jasmin/test_verify_fail_jsr_recursion_terminates.j:
+       Added expected error.
+       
+       * tests/regression/jasmin/test_verify_fail_jsr_recursion.j: Likewise.
+       
+       * tests/regression/jasmin/test_verify_ok_jsr_improper_nesting.j: New
+       test.
+       
+       * tests/regression/jasmin/test_verify_fail_jsr_multiple_returns.j: New
+       test.
+       
+       * tests/regression/jasmin/Makefile.am: Added new tests.
+
+2006-10-10 20:45  edwin
+
+       *
+       tests/regression/jasmin/test_verify_fail_jsr_recursion_terminates.j:
+       New test.
+       
+       * tests/regression/jasmin/Makefile.am: Added new test.
+
+2006-10-10 20:31  edwin
+
+       * tests/regression/jasmin/test_verify_fail_jsr_recursion.j: New test.
+       
+       * tests/regression/jasmin/Makefile.am: Added new test.
+
+2006-10-10 00:29  edwin
+
+       * src/vm/resolve.c, src/vm/resolve.h (constrain_unresolved_method):
+       Split into two new functions.
+       
+       (resolve_constrain_unresolved_method_instance): New function.
+       (resolve_constrain_unresolved_method_params): Likewise.
+       
+       * src/vm/jit/verify/typecheck.c (verify_invocation): Use new
+       functions.
+
+2006-10-09 23:53  edwin
+
+       * src/vm/resolve.c (resolve_method_type_checks): Split up into
+       two new functions.
+       
+       (resolve_method_instance_type_checks): New function.
+       
+       (resolve_method_param_type_checks): New function.
+       
+       * src/vm/resolve.h (resolve_method_type_checks): Removed.
+       (resolve_method_instance_type_checks): New function.
+       (resolve_method_param_type_checks): New function.
+       
+       * src/vm/jit/verify/typecheck.c (verify_invocation): Call
+       resolve_method_instance_type_checks and
+       resolve_method_param_type_checks.
+
+2006-10-09 23:21  edwin
+
+       * src/vm/resolve.c (resolve_method_verifier_checks): Removed unused
+       variable. Removed unclear assertion.
+
+2006-10-09 23:17  edwin
+
+       * src/vm/resolve.c (resolve_method_verifier_checks): Removed unused
+       arguments.
+       
+       (resolve_method): Changed arguments to resolve_method_verifier_checks.
+       
+       * src/vm/resolve.h (resolve_method_verifier_checks): Removed unused
+       arguments.
+       
+       * src/vm/jit/verify/typecheck.c (verify_invocation): Changed
+       arguments to resolve_method_verifier_checks.
+
+2006-10-09 23:06  edwin
+
+       * src/vm/resolve.c (resolve_method_verifier_checks): Factored out
+       parameter type checks into a separate function.
+       
+       (resolve_method_type_checks): New function.
+       
+       * src/vm/resolve.h (resolve_method_type_checks): New function.
+       
+       * src/vm/jit/verify/typecheck.c (verify_invocation): Call
+       resolve_method_type_checks.
+
+2006-10-09 22:19  edwin
+
+       * src/vm/resolve.c (resolve_method_verifier_checks): Factored out
+       loading constraints into a separate function.
+       
+       (resolve_method_loading_constraints): New function.
+       
+       (resolve_method): Call resolve_method_loading_constraints.
+       
+       * src/vm/resolve.h (resolve_method_loading_constraints): New function.
+       
+       * src/vm/jit/verify/typecheck.c (verify_invocation): Call
+       resolve_method_loading_constraints.
+
+2006-10-09 17:08  edwin
+
+       * src/vm/resolve.c (resolve_method_lazy): Removed dependence on
+       instruction format. Do not perform verifier checks. (Caller will
+       do these.)
+       
+       (create_unresolved_method): Renamed to
+       resolve_create_unresolved_method. Changed arguments.
+       
+       * src/vm/resolve.h (create_unresolved_method): Renamed to
+       resolve_create_unresolved_method. Changed arguments.
+       
+       (resolve_method_lazy): Changed arguments.
+       
+       (resolve_method_verifier_checks): Export.
+       
+       * src/vm/jit/verify/typecheck.c (verify_invocation): Adapted
+       to changed resolve functions. Call resolve_method_verifier_checks.
+       Do promotion from INVOKEVIRTUAL to INVOKESPECIAL here.
+       
+       * src/vm/jit/parse.c (parse): Adapted to changed resolve functions.
+       Do promotion from INVOKEVIRTUAL to INVOKESPECIAL here.
+
+2006-10-09 15:42  edwin
+
+       * src/vm/resolve.c (resolve_field_verifier_checks): Removed dependence
+       on instruction format.
+       
+       (resolve_field_lazy): Pass field reference, instead of instruction.
+       Do not perform verification checks here. (Caller will do them.)
+       
+       (resolve_field): Adapted to changed resolve_field_verifier_checks.
+       
+       (create_unresolved_field): Renamed to resolve_create_unresolved_field.
+       
+       (constrain_unresolved_field): Renamed to
+       resolve_constrain_unresolved_field. Removed dependence on instruction
+       format.
+       
+       * src/vm/resolve.h (create_unresolved_field): Renamed to
+       resolve_create_unresolved_field.
+       
+       (resolve_field_lazy): Changed arguments.
+       
+       (resolve_field_verifier_checks): Export.
+       
+       (constrain_unresolved_field): Renamed to
+       resolve_constrain_unresolved_field. Changed arguments.
+       
+       * src/vm/jit/verify/typecheck.c (typecheck): Moved instruction set
+       dependent parts of resolve functions into typecheck.
+       
+       * src/vm/jit/parse.c (resolve_field_lazy): Changed arguments.
+       (create_unresolved_field): Renamed.
+
+2006-10-08 22:49  edwin
+
+       *
+       test/regression/jasmin/test_verify_ok_jsr_subroutine_loops_to_start.j:
+       New test.
+       
+       * test/regression/jasmin/test.j: Small cleanup.
+       
+       * test/regression/jasmin/Makefile.am: Added new test.
+
+2006-10-08 11:39  edwin
+
+       * src/vm/jit/stack.c: Verify that subroutines are not merged.
+       (SBRSTART): New macro.
+       (COPY_VAL_AND_TYPE_VAR): New macro, propagate SBRSTART.
+       (COPY_VAL_AND_TYPE): Use COPY_VAL_AND_TYPE_VAR.
+       (stack_create_invars): Cleaned up, use COPY_VAL_AND_TYPE_VAR.
+       (stack_create_invars_from_outvars): Use COPY_VAL_AND_TYPE_VAR.
+       (stack_check_invars): Check against merging of subroutines. Wrapped
+       verifier checks in #if defined(ENABLE_VERIFIER).
+       (stack_check_invars_from_outvars): Likewise.
+       (stack_reanalyse_block): Wrapped verifier checks in
+       #if defined(ENABLE_VERIFIER).
+       (stack_analyse): Prepare a real variable for the handler stack.
+       Implemented re-analysing of blocks. Set SBRSTART for JSR.
+       
+       * src/vm/jit/parse.c (parse): Reserve extra variables needed by
+       stack_analyse.
+       
+       * src/vm/global.h (STACK_EXTRA_VARS): New macro.
+
+2006-10-08 10:51  edwin
+
+       * src/vm/jit/show.c (show_basicblock): Removed extra newline.
+
+2006-10-08 00:07  edwin
+
+       *
+       tests/regression/jasmin/test_verify_fail_jsr_merge_subroutines_via_stack.j:
+       New test.
+       
+       * tests/regression/jasmin/Makefile.am: Added new test.
+
+2006-10-07 23:56  edwin
+
+       * src/vm/jit/cfg.c (cfg_build): Fixed a bug causing infinite loops.
+       
+       * src/vm/jit/parse.c (parse): Always add a NOP at block ends. This is
+       needed by the JSR elimination in stack.c.
+       
+       * tests/regression/jasmin/test_verify_fail_jsr_merge_subroutines.j:
+       New test.
+       
+       * tests/regression/jasmin/Makefile.am: Added new test.
+
+2006-10-07 23:02  edwin
+
+       * tests/regression/jasmin/test_verify_fail_jsr_polymorphic_pop.j:
+       New test.
+       
+       * tests/regression/jasmin/Makefile.am: Added new test.
+       
+       * src/vm/jit/stack.c (stack_check_invars): Fixed bug exposed by the
+       new test.
+       (stack_check_invars_from_outvars): Likewise.
+
+2006-10-07 22:34  edwin
+
+       *
+       tests/regression/jasmin/test_verify_fail_jsr_called_with_different_stackdepths.j:
+       New test.
+       * tests/regression/jasmin/Makefile.am: Added new test.
+
+2006-10-07 12:54  edwin
+
+       * src/vm/jit/stack.c (GET_NEW_VAR): Fixed macro argument.
+       
+       (SET_TEMPVAR): Call new function stack_change_to_tempvar.
+       
+       (stack_change_to_tempvar): New function.
+       
+       (stack_analyse): Mark pass-through stackslots of INVOKEs instead of
+       resetting them to TEMPVARs.
+       
+       * src/vm/jit/jit.h (PASSTHROUGH): New flag.
+
+2006-10-07 10:22  edwin
+
+       * src/vm/jit/allocator/simplereg.c: Implemented REG_INDEX for
+       architectures with address register file.
+
+2006-10-07 09:44  edwin
+
+       * src/vm/jit/allocator/simplereg.c
+       (simplereg_allocate_locals_leafmethod): Fixed declaration after code.
+
+2006-10-07 00:06  edwin
+
+       * src/vm/jit/allocator/simplereg.c (simplereg_allocate_interface):
+       Copy all flags except SAVEDVAR when reusing an interface slot.
+
+2006-10-06 23:58  edwin
+
+       * src/vm/jit/allocator/simplereg.c: Cleaned up memory slot allocation.
+
+2006-10-06 23:41  edwin
+
+       * src/vm/jit/allocator/simplereg.c (simplereg_allocate_interfaces):
+       Fixed
+       indentation.
+
+2006-10-06 23:03  edwin
+
+       * src/vm/jit/allocator/simplereg.c (simplereg_allocate_temporaries):
+       Minor cleanup, use SIMPLEREG_REG_INDEX.
+
+2006-10-06 22:37  edwin
+
+       * src/vm/jit/allocator/simplereg.c: Reuse interface registers in
+       blocks
+       that don't need them. Abstracted out the free register stacks with
+       macros. Major code cleanup.
+       
+       * src/vm/jit/allocator/simplereg.h (reg_make_statistics): Renamed to
+       simplereg_make_statistics.
+       
+       * src/vm/jit/reg.h (registerdata): Added fields `adrusedinout`,
+       `intusedinout`, `fltusedinout`, and `regisoutvar`.
+       
+       * src/vm/jit/jit.c (simplereg_make_statistics): Renamed to
+       simplereg_make_statistics.
+       
+       * src/vm/jit/jit.h (SAVEDTMP): Renamed to SAVREG.
+       (TMPARG): Renamed to ARGREG.
+       (STCOPY): Removed.
+       (STKEEP): Removed.
+
+2006-10-06 21:30  edwin
+
+       * src/vm/jit/stack.c (stack_analyse): Do not set argintreguse to
+       a value > INT_ARG_CNT, as this breaks some new code that will
+       later be committed to simplereg.c, and does not make sense, anyway.
+
+2006-10-06 20:11  edwin
+
+       * src/vm/jit/intrp/Makefile.am (Changes): Added my name.
+
+2006-10-06 20:09  edwin
+
+       * src/vm/jit/show.h (show_variable): Made global.
+       (show_variable_array): Likewise.
+       
+       * src/vm/jit/show.c (show_variable): Likewise.
+       (show_variable_array): Likewise.
+
+2006-10-05 20:30  edwin
+
+       * src/threads/native/threads.c (threads_attach_current_thread): Rename
+       left-over `t` to `thread` in interpreter code.
+
+2006-10-05 20:21  edwin
+
+       * src/vm/jit/codegen-common.c: Include vm/jit/intrp/intrp.h to prevent
+       a warning.
+
+2006-10-05 20:18  edwin
+
+       * src/vm/jit/intrp/intrp.h: Added missing prototypes.
+       
+       * src/vm/jit/intrp/engine.c: Comment unused variable `ca1`.
+       
+       * src/vm/jit/intrp/java.vmg: Mark the variables `currentsp` as
+       MAYBE_UNUSED.
+
+2006-10-05 20:04  edwin
+
+       * src/vm/jit/intrp/intrp.h: Cleaned up. Defined missing prototypes.
+       
+       * src/vm/jit/intrp/java.vmg: Defined "afi" type prefix.
+
+2006-10-05 19:36  edwin
+
+       * src/vm/jit/intrp/peephole.c: Include interpreter files using < >
+       instead of " ", so they are only searched for in the include path.
+       This avoids using the wrong include files when compiling in a
+       buildir.
+       
+       * src/vm/jit/intrp/codegen.c: Likewise.
+       * src/vm/jit/intrp/engine.c: Likewise.
+       * src/vm/jit/intrp/disasm.c: Likewise.
+       * src/vm/jit/intrp/dynamic-super.c: Likewise.
+       
+       * src/vm/jit/intrp/vmgenx: Fixed to work with builddir, and cleaned
+       up.
+       
+       * src/vm/jit/intrp/Makefile.am: Fixed dependencies for builddir.
+
+2006-10-05 17:52  edwin
+
+       * src/vm/jit/intrp/engine.c (Changes): Added my name.
+       (vim boilerplate): Added.
+
+2006-10-05 17:28  twisti
+
+       * src/native/jni.c (jni_attach_current_thread): New help function.
+       (_Jv_JNI_AttachCurrentThread): Use helper function.
+       (_Jv_JNI_AttachCurrentThreadAsDaemon): Likewise.
+       (_Jv_JNI_DetachCurrentThread): Implemented.
+       
+       * src/threads/native/threads.c (method_thread_init)
+       (method_threadgroup_add_: Made static.
+       (threads_init): Code rearranged.
+       (threads_startup_thread): Removed thread detach code and call
+       threads_detach_thread.
+       (threads_detach_thread): New function.
+       
+       * src/threads/native/threads.h (threads_detach_thread): Added.
+
+2006-10-05 17:23  twisti
+
+       * src/vm/utf8.c (utf_removeThread, utf_java_lang_Thread__V): Added.
+       (utf8_init): Initialize new strings.
+       * src/vm/utf8.h (utf_removeThread, utf_java_lang_Thread__V): Added.
+
+2006-10-05 16:28  edwin
+
+       * src/vm/vm.c (vm_create): Turn off the verifier for -Xint.
+
+2006-10-05 16:18  edwin
+
+       * src/vm/jit/intrp/asmpart.c (intrp_asm_handle_exception): Style fix.
+
+2006-10-05 16:12  edwin
+
+       * src/vm/jit/intrp/codegen.c (codegen): Save synchronized object in
+       a special stackslot and use it for monitorexit.
+       
+       * src/vm/jit/intrp/asmpart.c (intrp_asm_handle_exception): When
+       unwinding a synchronized method, exit the monitor.
+
+2006-10-05 15:43  edwin
+
+       * src/vm/jit/intrp/codegen.c (codegen): Reserve an extra stackslot in
+       synchronized methods.
+       (intrp_createcompilerstub): Likewise.
+       (intrp_createnativestub): Use stackframesize for clarity.
+
+2006-10-05 15:33  edwin
+
+       * src/vm/jit/intrp/codegen.c (codegen): Separate stackframesize from
+       the number of local variables.
+       (intrp_createcompilerstub): Likewise.
+       
+       * src/vm/jit/intrp/engine.c (MAXLOCALS): Changed to FRAMESIZE.
+       
+       * src/vm/jit/intrp/java.vmg (INVOKEVIRTUAL): Use FRAMESIZE.
+       (INVOKESTATIC): Likewise.
+       (INVOKESPECIAL): Likewise.
+       (INVOKEINTERFACE): Likewise.
+
+2006-10-05 14:13  twisti
+
+       * src/native/jni.c (jni_init_localref_table): New function.
+       (AttachCurrentThread): Implemented.
+       (JNI_CreateJavaVM): Use jni_init_localref_table.
+       
+       * src/threads/native/threads.c (method_thread_init)
+       (method_threadgroup_add): New global variables.
+       (threads_init): Store methods resolved in global variables.
+       (threads_attach_current_thread): New function.
+       
+       * src/threads/native/threads.h (MIN_PRIORITY, NORM_PRIORITY)
+       (MAX_PRIORITY): Defined.
+       (threads_attach_current_thread): New function.
+
+2006-10-05 12:23  edwin
+
+       * src/vm/jit/intrp/java.vmg (TRACECALL): Implemented for 32-bit
+       architectures.
+
+2006-10-05 10:50  edwin
+
+       * src/vm/jit/intrp/codegen.c (codegen): Fix off-by-one error in len
+       tests of optimizations.
+
+2006-10-05 10:41  edwin
+
+       * src/vm/jit/show.c (show_icmd): Show constant operand of IFxx, and
+       IF_Lxx.
+
+2006-10-05 10:39  edwin
+
+       * src/vm/jit/show.c (show_basicblock): Fixed deadcode check.
+       
+       * src/vm/jit/intrp/asmpart.c (intrp_asm_handle_exception): Clear
+       global_sp.
+
+2006-10-05 09:04  twisti
+
+       * src/vm/jit/powerpc/emit.c (emit_verbosecall_enter): Darwin build
+       fixes.
+
+2006-10-05 00:21  edwin
+
+       * src/vm/jit/intrp/asmpart.c (intrp_asm_handle_exception): Fixed for
+       catch-all handlers.
+
+2006-10-05 00:06  edwin
+
+       * src/vm/jit/show.c (show_method): Adapted to interpreter.
+       (show_basicblock): Likewise.
+       
+       * src/vm/jit/intrp/disass.c (intrp_disassinstr): Write disassembly to
+       stdout.
+       (intrp_disassemble): Likewise.
+
+2006-10-04 23:08  edwin
+
+       * tests/regression/jctest.java: Also test division/remainder with
+       constant divisor 1.
+       
+       * tests/regression/jctest.output: Updated test output.
+
+2006-10-04 23:05  edwin
+
+       * src/vm/jit/intrp/codegen.c (codegen): Don't ?DIVPOW2 with value 1.
+       The optimization produces the wrong result in this case.
+
+2006-10-04 22:53  edwin
+
+       * src/vm/jit/intrp/codegen.c (codegen): Implemented IDIVPOW2 and
+       LDIVPOW2 optimizations.
+
+2006-10-04 22:39  edwin
+
+       * src/vm/jit/intrp/codegen.c (codegen): Implemented IREMPOW2 and
+       LREMPOW2 optimizations.
+
+2006-10-04 22:12  edwin
+
+       * src/vm/jit/intrp/codegen.c (codegen): Implement optimization of
+       comparisons.
+
+2006-10-04 20:44  edwin
+
+       * src/vm/jit/allocator/simplereg.c (reg_free_temp_func): Fixed indices
+       into regcopycount array.
+       (allocate_scratch_registers): Likewise.
+
+2006-10-04 20:02  edwin
+
+       * src/vm/jit/intrp/codegen.c (codegen): #if 0-ed optimized ICMDs that
+       are currently not used. In order to use these instructions, we could
+       either add the optimization checks directly to codegen.c, or introduce
+       a special pass between parse and intrp_codegen which replaces the
+       instructions.
+
+2006-10-04 19:47  edwin
+
+       * src/vm/jit/intrp/codegen.c (codegen): Removed unoptimized *CONST
+       instructions. Since stack_analyse is no longer performed before the
+       interpreter codegen, these instructions cannot occur.
+
+2006-10-04 19:38  edwin
+
+       * src/vm/jit/stack.c: Removed interpreter-specific code.
+
+2006-10-04 18:44  edwin
+
+       * src/threads/native/lock.c (lock_monitor_exit): Check for NULL
+       object.
+       There is no guarantee that MONITORENTER/EXITs are properly nested, so
+       we cannot rely on the check in lock_monitor_enter here.
+
+2006-10-04 18:39  edwin
+
+       * tests/regression/jasmin/test_nullpointerexception_monitorexit.j:
+       Fixed test case, so it passes if the exception is thrown.
+
+2006-10-04 18:35  edwin
+
+       * tests/regression/jasmin/test_nullpointerexception_monitorexit.j:
+       New test.
+       
+       * tests/regression/jasmin/Makefile.am: Added
+       test_nullpointerexception_monitorexit.j.
+
+2006-10-04 18:25  edwin
+
+       * tests/regression/jasmin/Makefile.am: Properly quote variables.
+
+2006-10-04 18:23  edwin
+
+       * src/vm/jit/intrp/engine.c (THROW_CLASSCASTEXCEPTION): Really throw a
+       ClassCastException, not a NullPointerException.
+       
+       * src/vm/jit/intrp/asmpart.c (intrp_asm_handle_exception): Set
+       global_sp, in case the resolving of the catchtype involves the
+       execution of Java code.
+       
+       * src/vm/jit/intrp/java.vmg (MONITORENTER): Check for exception.
+       (MONITOREXIT): Likewise.
+
+2006-10-04 16:42  edwin
+
+       * src/vm/jit/intrp/java.vmg (LOOKUPSWITCH): No point in using >= 0 on
+       an unsigned variable.
+
+2006-10-04 16:01  edwin
+
+       * src/vm/jit/intrp/codegen.c (nativecall): Store return valud of
+       codegen_finish_native_call in *exceptionptr.
+       
+       * src/vm/jit/intrp/asmpart.c (intrp_asm_handle_exception): Resolve
+       unresolved catchtype references.
+
+2006-10-04 15:14  edwin
+
+       * src/vm/jit/intrp/codegen.c (codegen): Convert JavaPCs to block
+       indices.
+       Do not check for BBREACHED (not set by parse).
+       (gen_branch): Convert JavaPCs to block indices.
+       
+       * src/vm/jit/intrp/java.vmg (RET): restored.
+       
+       * src/vm/jit/jit.c (jit_compile_intern): Do not perform stack_analyse
+       and
+       dependent passes for intrp.
+
+2006-10-04 15:04  twisti
+
+       * src/vm/jit/intrp/md.c (intrp_md_init): Set vm_out to stderr.
+       
+       * src/vm/jit/intrp/engine.c (THROW_CLASSCASTEXCEPTION): Added.
+       (engine): Handle ClassCastExceptions with argument.
+       
+       * src/vm/jit/intrp/asmpart.c (intrp_asm_handle_exception): Indent.
+       
+       * src/vm/jit/intrp/dynamic-super.c: Use LOCK_MONITOR_{ENTER,EXIT}
+       macros.
+       
+       * src/vm/jit/intrp/patcher.c (intrp_patcher_invokestatic_special):
+       Write back method pointer. I wonder how this ever worked before.
+       (intrp_patcher_invokevirtual): Likewise.
+       (intrp_patcher_invokeinterface): Likewise.
+       
+       * src/vm/jit/intrp/java.vmg (RET): Removed.
+       (TABLESWITCH): Changed reading direction of cases. Don't know if that
+       works: NOT TESTED!
+       (CHECKCAST): Use THROW_CLASSCASTEXCEPTION.
+       (ARRAYCHECKCAST): Likewise.
+       (MONITORENTER): Likewise.
+       (MONITOREXIT): Likewise.
+
+2006-10-04 14:50  edwin
+
+       * src/vm/jit/intrp/dynamic-super.c (superreuse_insert): Use
+       lock_monitor_ functions.
+       (patchersuper_rewrite): Likewise.
+       (hashtable_patchersupers_insert): Likewise.
+
+2006-10-04 14:31  edwin
+
+       * src/vm/jit/intrp/codegen.c (codegen): Restored ICMD_RET to really
+       perform a RET (JSR elimination will not be performed for intrp.)
+       Removed a comment that does not apply any more.
+
+2006-10-04 14:20  edwin
+
+       * src/vm/jit/intrp/java.vmg (builtin_monitorenter): Changed to
+       lock_monitor_enter.
+       (builtin_monitorexit): Changed to lock_monitor_exit.
+
+2006-10-04 13:40  edwin
+
+       * src/vm/jit/intrp/codegen.c: Made it compile again.
+
+2006-10-04 13:35  twisti
+
+       * src/vm/jit/intrp/codegen.c: New instruction format fixes.
+
+2006-10-04 12:09  twisti
+
+       * configure.ac (AC_CONFIG_FILES): Removed src/scripts/rmic and
+       src/scripts/rmiregistry.
+       * src/scripts/Makefile.am (bin_SCRIPTS): Removed trailing \.
+
+2006-10-04 10:37  twisti
+
+       * src/scripts/rmic.in: Removed.
+       * src/scripts/rmiregistry.in: Likewise.
+       
+       * src/scripts/Makefile.am (bin_SCRIPTS) Removed rmi.in and
+       rmiregistry.in.
+       * src/scripts/.cvsignore: Likewise.
+       
+       * src/scripts/java.in: Don't call cacao with an absolute path, this
+       would break WITH_JRE_LAYOUT. I think we can expect cacao to be in the
+       PATH.
+
+2006-10-04 10:10  twisti
+
+       * configure.ac (--with-jre-layout): Added.
+       
+       * src/vm/global.h (CLASSPATH_LIBRARY_PATH): Removed.
+       
+       * src/vm/vm.c [WITH_JRE_LAYOUT] (libgen.h, unistd.h): Added.
+       (cacao_prefix, cacao_libjvm, classpath_libdir): New global variables.
+       (version): Print gnu.classpath.boot.library.path instead of
+       java.library.path as this is the interesting one.
+       (vm_create): Added WITH_JRE_LAYOUT stuff.
+       
+       * src/vm/vm.h (stackbottom): Removed.
+       (cacao_prefix, cacao_libjvm, classpath_libdir): Added.
+       
+       * src/cacao/cacao.c [WITH_JRE_LAYOUT] (errno.h, libgen.h, unistd.h):
+       Added.
+       (main): Added WITH_JRE_LAYOUT stuff.
+       
+       * src/native/vm/gnu_classpath_VMSystemProperties.c (vm/vm.h): Added.
+       (preInit): Set env_java_home to cacao_prefix and
+       gnu.classpath.boot.library.path to classpath_libdir.
+       
+       * src/native/native.c (native_init): Use cacao_libjvm in lt_dlopenext
+       call.
+
+2006-10-03 21:19  edwin
+
+       * src/vm/jit/jit.h (jitdata): Renamed c_debug_nr to c_block_nr. (Still
+       not a good name. Should probably be removed entirely.)
+       Added comments.
+       
+       * src/vm/method.h (c_debug_nr): Renamed to c_block_nr.
+       * src/vm/jit/stack.c: Likewise.
+       * src/vm/jit/loop/analyze.c: Likewise.
+       * src/vm/jit/inline/inline.c: Likewise.
+       * src/vm/jit/parse.c: Likewise.
+
+2006-10-03 20:57  edwin
+
+       * src/vm/jit/powerpc/codegen.c: Removed new_ prefix from variable and
+       field names.
+       
+       * src/vm/jit/cfg.c: Likewise.
+       * src/vm/jit/sparc64/codegen.c: Likewise.
+       * src/vm/jit/reorder.c: Likewise.
+       * src/vm/jit/ifconv/ifconv.c: Likewise.
+       * src/vm/jit/alpha/codegen.c: Likewise.
+       * src/vm/jit/stack.c: Likewise.
+       * src/vm/jit/stack.h: Likewise.
+       * src/vm/jit/show.c: Likewise.
+       * src/vm/jit/verify/typecheck.c: Likewise.
+       * src/vm/jit/mips/codegen.c: Likewise.
+       * src/vm/jit/allocator/simplereg.c: Likewise.
+       * src/vm/jit/i386/codegen.c: Likewise.
+       * src/vm/jit/powerpc64/codegen.c: Likewise.
+       * src/vm/jit/parse.c: Likewise.
+       * src/vm/jit/replace.c: Likewise.
+       * src/vm/jit/x86_64/codegen.c: Likewise.
+       * src/vm/jit/parse.h: Likewise.
+       * src/vm/jit/jit.c: Likewise.
+       * src/vm/jit/jit.h: Likewise.
+
+2006-10-03 20:44  edwin
+
+       * src/vm/resolve.c: Removed new_ prefix from function names.
+       * src/vm/resolve.h: Likewise.
+       * src/vm/jit/stack.c: Likewise.
+       * src/vm/jit/stack.h: Likewise.
+       * src/vm/jit/show.c: Likewise.
+       * src/vm/jit/verify/typecheck.c: Likewise.
+       * src/vm/jit/show.h: Likewise.
+       * src/vm/jit/allocator/simplereg.c: Likewise.
+       * src/vm/jit/allocator/simplereg.h: Likewise.
+       * src/vm/jit/parse.c: Likewise.
+       * src/vm/jit/parse.h: Likewise.
+       * src/vm/jit/jit.c: Likewise.
+
+2006-10-03 20:27  edwin
+
+       * src/vm/jit/allocator/simplereg.c: Warning fixed.
+
+2006-10-03 20:26  edwin
+
+       * src/vm/jit/i386/codegen.c (codegen): Use varindex as in other
+       codegens.
+
+2006-10-03 20:22  edwin
+
+       * src/vm/jit/stack.c (new_stack_analyse): Removed obsolete stack depth
+       checking code.
+       
+       * src/vm/jit/stack.h (CHECK_STACK_DEPTH): Removed macro.
+
+2006-10-03 19:11  edwin
+
+       * src/vm/jit/powerpc64/codegen.c (codegen): Unified IINC and
+       IADDCONST.
+
+2006-10-03 18:50  edwin
+
+       * src/vm/jit/powerpc/codegen.c (codegen): Unify IINC and IADDCONST.
+
+2006-10-03 18:34  edwin
+
+       * src/vm/jit/allocator/simplereg.c (reg_make_statistics): Bugfix.
+
+2006-10-03 18:21  twisti
+
+       * src/native/vm/gnu_classpath_VMSystemProperties.c (preInit): We don't
+       need to strcpy the library variables. Don't know where this code came
+       from.
+
+2006-10-03 18:09  edwin
+
+       * src/vm/jit/allocator/simplereg.c (reg_make_statistics): Make it
+       compile again.
+
+2006-10-03 17:44  edwin
+
+       Moved unified_variables branch to trunk.
+
+2006-10-03 17:24  edwin
+
+       * tests/regression/jasmin/test_iinc.j: New test.
+       
+       * tests/regression/jasmin/Makefile.am: Added test_iinc.j
+
+2006-10-03 16:42  edwin
+
+       Merged r5640 from trunk:
+       
+       * src/vm/jit/x86_64/Makefile.am (libarch_la_SOURCES): Renamed
+       md-emit.h to emit.h.
+
+2006-10-03 16:32  edwin
+
+       * src/vm/jit/powerpc/codegen.c: Implemented ICMD_JSR like ICMD_GOTO.
+       * src/vm/jit/powerpc64/codegen.c: Likewise.
+       
+       * src/vm/jit/alpha/codegen.c: Implemented ICMD_JSR like ICMD_GOTO.
+       Unified ICMD_IINC and ICMD_IADDCONST.
+       * src/vm/jit/mips/codegen.c: Likewise.
+       * src/vm/jit/i386/codegen.c: Likewise.
+       * src/vm/jit/x86_64/codegen.c: Likewise.
+
+2006-10-02 19:24  edwin
+
+       Merged r5636, r5637, and r5638 from trunk:
+       
+       * src/native/tools/gennativetable.c: Made it work again.
+       
+       * tests/regression/jasmin/.cvsignore: New file.
+       
+       * src/vm/jit/powerpc/codegen.c (codegen): #if 0 replacement point
+       code.
+       
+       * src/vm/jit/powerpc/emit.c [!NDEBUG] (emit_verbosecall_enter)
+       (emit_verbosecall_exit): #ifdef'ed.
+
+2006-10-02 16:36  christian
+
+       * src/vm/jit/alpha/md-abi.c (md_return_alloc): Activated return value
+       stackslot registers precolouring again.
+
+2006-10-02 14:18  edwin
+
+       * src/vm/jit/powerpc/netbsd/md-abi.c: Blindly ported to
+       unified_variables.
+       
+       * src/vm/jit/powerpc/linux/md-abi.c: Cleaned up.
+       * src/vm/jit/powerpc/darwin/md-abi.c: Likewise.
+       * src/vm/jit/alpha/md-abi.c: Likewise.
+       * src/vm/jit/mips/md-abi.c: Likewise.
+       * src/vm/jit/powerpc64/linux/md-abi.c: Likewise.
+       * src/vm/jit/x86_64/md-abi.c: Likewise.
+
+2006-10-02 13:59  edwin
+
+       * src/vm/jit/powerpc/codegen.c: Changed OUTVAR to INOUT.
+       * src/vm/jit/alpha/codegen.c: Likewise.
+       * src/vm/jit/stack.c: Likewise.
+       * src/vm/jit/show.c: Likewise.
+       * src/vm/jit/mips/codegen.c: Likewise.
+       * src/vm/jit/allocator/simplereg.c: Likewise.
+       * src/vm/jit/i386/codegen.c: Likewise.
+       * src/vm/jit/powerpc64/codegen.c: Likewise.
+       * src/vm/jit/x86_64/codegen.c: Likewise.
+       * src/vm/jit/jit.h: Likewise.
+
+2006-10-02 13:43  edwin
+
+       * src/vm/jit/alpha/codegen.h: Removed M_COPY.
+       * src/vm/jit/mips/codegen.h: Likewise.
+       * src/vm/jit/i386/codegen.h: Likewise.
+       * src/vm/jit/powerpc64/codegen.h: Likewise.
+       * src/vm/jit/x86_64/codegen.h: Likewise.
+       
+       * src/vm/jit/powerpc/codegen.c: Unified ICMD_RET with ICMD_GOTO.
+       * src/vm/jit/alpha/codegen.c: Likewise.
+       * src/vm/jit/mips/codegen.c: Likewise.
+       * src/vm/jit/i386/codegen.c: Likewise.
+       * src/vm/jit/powerpc64/codegen.c: Likewise.
+       * src/vm/jit/intrp/codegen.c: Likewise.
+       * src/vm/jit/x86_64/codegen.c: Likewise.
+
+2006-10-02 13:26  edwin
+
+       * src/vm/jit/powerpc/codegen.c (codegen): Unified LOAD/STORE and
+       COPY/MOVE instructions.
+       
+       * src/vm/jit/powerpc/codegen.h (M_COPY): Removed.
+
+2006-10-02 13:16  edwin
+
+       * src/vm/jit/powerpc/linux/md-abi.c (md_param_alloc): Cleaned up
+       comments.
+       * src/vm/jit/powerpc/darwin/md-abi.c (md_param_alloc): Likewise.
+       
+       * src/vm/jit/powerpc/codegen.c (codegen): Removed obsolete call to
+       codegen_reg_of_var.
+       * 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/x86_64/codegen.c (codegen): Likewise.
+       
+       * src/vm/jit/codegen-common.c (codegen_reg_of_var): Cleaned up.
+       (codegen_reg_of_dst): Implemented using inline codegen_reg_of_var.
+
+2006-10-02 12:10  edwin
+
+       Merged r5626 from trunk:
+       
+       * src/vm/jit/replace.c (replace_create_replacement_points): Return
+       true.
+
+2006-10-02 11:55  edwin
+
+       Merged r5624 from trunk:
+       
+       * src/vm/jit/mips/asmpart.S (asm_vm_call_method): Remove argument
+       stack frame in normal path.
+
+2006-10-02 00:32  edwin
+
+       * src/vm/jit/alpha/codegen.c (codegen): Unified MOVE/COPY with
+       LOAD/STORE instructions.
+
+2006-10-02 00:08  edwin
+
+       * tests/regression/jasmin/runtest: Made it a bash script, so it works
+       on crappy fp98.
+
+2006-10-02 00:06  edwin
+
+       * tests/regression/jasmin/runtest: Do not use grep -o.
+
+2006-10-01 23:51  edwin
+
+       * src/vm/jit/mips/emit.c (emit_copy): Fixed arguments to
+       codegen_reg_of_var.
+       * src/vm/jit/powerpc64/emit.c (emit_copy): Likewise.
+       
+       * src/vm/jit/mips/codegen.c (codegen): Define varindex.
+       * src/vm/jit/powerpc64/codegen.c (codegen): Likewise. Fixed arguments
+       to codegen_reg_of_var. Replaced codegen_reg_of_var with
+       codegen_reg_of_dst.
+
+2006-10-01 23:37  edwin
+
+       * src/vm/jit/powerpc64/codegen.c: Ported to unified_variables.
+       * src/vm/jit/powerpc64/codegen.h: Likewise.
+       * src/vm/jit/powerpc64/emit.c: Likewise.
+       * src/vm/jit/powerpc64/linux/md-abi.c: Likewise.
+
+2006-10-01 23:00  edwin
+
+       Merged r5616 from trunk:
+       
+       * src/native/jni.c: Prefix all JNI functions with _Jv_JNI_, as gcj
+       does. This should prevent any linking problems.
+
+2006-10-01 22:55  edwin
+
+       * src/vm/jit/mips/codegen.c: Ported to unified_variables.
+       * src/vm/jit/mips/codegen.h: Likewise.
+       * src/vm/jit/mips/emit.c: Likewise.
+       * src/vm/jit/mips/md-abi.c: Likewise.
+
+2006-10-01 20:52  edwin
+
+       * src/vm/jit/powerpc/codegen.c (codegen): Cleaned up unified_variables
+       changes.
+
+2006-10-01 20:49  edwin
+
+       * src/vm/jit/i386/codegen.c (codegen): Cleaned up unified_variables
+       changes.
+
+2006-10-01 20:42  edwin
+
+       * src/vm/jit/x86_64/codegen.c (codegen): Cleaned up unified_variables
+       changes.
+
+2006-10-01 20:37  edwin
+
+       * src/vm/jit/alpha/codegen.c (codegen): Cleaned up unified_variables
+       changes.
+
+2006-10-01 20:08  edwin
+
+       * tests/regression/jasmin/runtest: Use default JASMIN_JAR, if given.
+
+2006-10-01 18:01  edwin
+
+       * src/vm/jit/codegen-common.c (codegen_reg_of_var): Fixed typo in
+       ARM code.
+
+2006-10-01 15:44  edwin
+
+       * src/vm/jit/verify/typeinfo.c (typevector_store_retaddr): Do not
+       invalidate the variable at index i-1.
+       (typevector_store_twoword): Removed.
+
+2006-10-01 15:25  edwin
+
+       * src/vm/jit/verify/typecheck.c (typecheck): Added debug print of
+       the reverse local map.
+
+2006-10-01 14:43  edwin
+
+       * src/vm/vm.c (vm_compile_all): Only use if !defined(NDEBUG).
+       (vm_compile_method): Likewise.
+
+2006-10-01 14:37  edwin
+
+       * src/vm/jit/verify/typeinfo.h: Disabled TYPECHECK_VERBOSE.
+
+2006-09-30 23:28  edwin
+
+       * src/vm/jit/jit.c (jit_compile_intern): Removed commented out
+       debugging code.
+
+2006-09-30 23:12  edwin
+
+       * src/vm/jit/allocator/simplereg.c (reg_new_temp): Simplified.
+       (reg_free_temp): Formatted.
+
+2006-09-30 23:06  edwin
+
+       * src/vm/jit/powerpc/linux/md-abi.c: Use VAR and VAROP macros.
+       * src/vm/jit/powerpc/darwin/md-abi.c: Likewise.
+       * src/vm/jit/alpha/codegen.c: Likewise.
+       * src/vm/jit/alpha/codegen.h: Likewise.
+       * src/vm/jit/alpha/md-abi.c: Likewise.
+       * src/vm/jit/show.c: Likewise.
+       * src/vm/jit/verify/typecheck.c: Likewise.
+       * src/vm/jit/allocator/simplereg.c: Likewise.
+       * src/vm/jit/i386/codegen.h: Likewise.
+       * src/vm/jit/parse.c: Likewise.
+       * src/vm/jit/x86_64/emit.c: Likewise.
+       * src/vm/jit/x86_64/codegen.c: Likewise.
+       * src/vm/jit/x86_64/codegen.h: Likewise.
+       * src/vm/jit/x86_64/md-abi.c: Likewise.
+       * src/vm/jit/codegen-common.c: Likewise.
+
+2006-09-30 22:45  edwin
+
+       * src/vm/jit/i386/codegen.c (codegen): Use VAR and VAROP macros.
+       (codegen_insert_phi_moves): Likewise.
+
+2006-09-30 22:24  edwin
+
+       Merged r5591 from trunk:
+       
+       * src/native/jni.c (GetVersion): Prefixed with _Jv_, we should do that
+       with all JNI functions.
+
+2006-09-30 22:22  edwin
+
+       Merged r5589 and r5590 from trunk:
+       
+       * configure.ac: Fixed CFLAGS for cygwin.
+       * src/threads/native/threads.c: Inserted asserts for cygwin.
+       * src/vm/jit/i386/cygwin/Makefile.am: See below.
+       * src/vm/jit/i386/cygwin/md-asm.h: Added.
+       * src/vm/jit/i386/cygwin/md-os.c: Inserted asserts.
+       * src/vm/jit/i386/cygwin/ucontext.c: Added 3rd party file.
+       * src/vm/jit/i386/cygwin/ucontext.h: Added 3rd party file.
+       
+       
+       * src/cacao/.cvsignore, src/cacaoh/.cvsignore,
+       src/vm/jit/tools/.cvsignore: Added ignores for cygwin and
+       modified properties accordingly.
+
+2006-09-30 11:04  christian
+
+       * src/vm/jit/alpha/codegen.c (codegen): Changed to use the macros VAR
+       and VAROP.
+
+2006-09-30 10:16  christian
+
+       * src/vm/jit/x86_64/codegen.c (codegen): Changed to use the macros
+       VAR and VAROP.
+
+2006-09-29 14:02  edwin
+
+       * src/vm/jit/allocator/simplereg.c (reg_free_temp_func): Handle
+       packed registers.
+       (new_allocate_scratch_registers): Likewise.
+
+2006-09-29 13:33  edwin
+
+       Merged r5540 from trunk:
+       
+       * configure.ac: Cygwin OS dir added.
+       * src\lib\Makefile.am: Now checks for "zip.exe" as well
+       * src\vm\jit\i386\Makefile.am: Added Cygwin OS dir.
+       * src\vm\jit\i386\cygwin\Makefile.am: Added.
+       * src\vm\jit\i386\cygwin\md-os.c: Added. Only contains
+       dummy signal handlers.
+       * src\vm\builtin.c: Undefine Bias for Cygwin because
+       Windows uses this define.
+       * src\vm\signal.c: No signal handlers for Cygwin.
+
+2006-09-29 12:46  edwin
+
+       Merged r5573, r5574, r5577, r5578, and r5579 from trunk.
+       
+       * src/cacao/cacao.c (vm/vm.h): Added.
+       * src/cacao/Makefile.am [!ENABLE_LIBJVM] (CACAO_LIB): Link libjvm.la.
+       
+       
+       * src/vm/jit/powerpc/darwin/md-asm.h (md_codegen_get_pv_from_pc):
+       Added stub define.
+       * src/vm/jit/powerpc/asmpart.S (L_md_codegen_get_pv_from_pc$stub):
+       Added.
+       
+       
+       * src/cacaoh/cacaoh.c (cacaoh_options_prepare): Set nOptions, this was
+       deleted accidentally.
+       
+       
+       * src/vm/vm.c (vm_create): Added installation of exit handler.
+       (vm_run): New function.
+       (vm_get_mainclass_from_jar): Likewise.
+       (vm_compile_all): Likewise.
+       (vm_compile_method): Likewise.
+       * src/vm/vm.h (vm_run): New function.
+       
+       * src/vm/options.c (options_prepare): Removed.
+       * src/vm/options.h (options_prepare): Likewise.
+       
+       * src/cacao/cacao.c (getmainclassnamefromjar): Removed.
+       (main): Moved most stuff to vm-functions and load libjvm with dlopen
+       and resolve symbols for ENABLE_LIBJVM.
+       (cacao_options_prepare): New function.
+       
+       * src/cacao/Makefile.am (CACAO_LIBS): New variable.
+       (cacao_LDADD): Use CACAO_LIBS.
+       
+       * src/native/native.c (native_init): Set mainhandle to libjvm for
+       ENABLE_LIBJVM.
+       
+       * src/cacaoh/cacaoh.c (cacaoh_prepare_options): New function.
+       
+       
+       * src/native/jni.c (JNI_CreateJavaVM): Renamed jvm to vm.
+
+2006-09-28 22:33  edwin
+
+       * src/vm/jit/powerpc64: Merged changes from r5403 to r5548 from trunk.
+
+2006-09-28 20:56  edwin
+
+       * src/vm/jit/i386/cygwin: Copied directory from trunk.
+
+2006-09-28 20:38  edwin
+
+       Merged r5547 from trunk:
+       
+       * src/native/jni.c (FindClass): Removed architecture #ifdef's.
+
+2006-09-28 20:33  edwin
+
+       Merged r5543 from trunk:
+       
+       * src/vm/jit/sparc64/codegen.c: Completed port to new instruction
+       format.
+       * src/vm/jit/sparc64/md-abi.h: Likewise.
+       * src/vm/jit/sparc64/emit.c: Likewise.
+
+2006-09-28 20:31  edwin
+
+       Merged r5541 from trunk:
+       
+       * src/vm/jit/powerpc/emit.c (vm/jit/emit.h): Renamed to
+       vm/jit/emit-common.h.
+       (emit_load_s1, emit_load_s2, emit_load_s3, emit_load_s1_low)
+       (emit_load_s2_low, emit_load_s3_low, emit_load_s1_high)
+       (emit_load_s2_high, emit_load_s3_high) (emit_store_dst): Removed.
+       
+       * src/vm/jit/powerpc/codegen.c (vm/jit/emit.h): Renamed to
+       vm/jit/emit-common.h.
+
+2006-09-28 20:29  edwin
+
+       Merged r5540 and r5542 from trunk:
+       
+       * configure.ac: Cygwin OS dir added.
+       * src\lib\Makefile.am: Now checks for "zip.exe" as well
+       * src\vm\jit\i386\Makefile.am: Added Cygwin OS dir.
+       * src\vm\jit\i386\cygwin\Makefile.am: Added.
+       * src\vm\jit\i386\cygwin\md-os.c: Added. Only contains
+       dummy signal handlers.
+       * src\vm\builtin.c: Undefine Bias for Cygwin because
+       Windows uses this define.
+       * src\vm\signal.c: No signal handlers for Cygwin.
+       
+       * src/vm/jit/i386/cygwin/.cvsignore: New file.
+
+2006-09-28 20:23  edwin
+
+       Merged r5539 from trunk:
+       
+       * src/vm/jit/mips/emit.c (emit_exception_stubs): Don't use
+       SIZEOF_VOID_P for getting return address, this is wrong on MIPS32.
+       * src/vm/jit/mips/codegen.c (createnativestub): Likewise.
+
+2006-09-28 20:20  edwin
+
+       Merged r5538 from trunk:
+       
+       * src/native/native.c (native_insert_char): New function.
+       (native_resolve_function): Use native_insert_char function to fill
+       name buffer.
+
+2006-09-28 20:19  edwin
+
+       Merged r5537 from trunk:
+       
+       * src/vm/jit/mips/codegen.c (codegen): Make fieldinfo,
+       unresolved_field local variables, better code for ICMD_PUTFIELD.
+
+2006-09-28 20:18  edwin
+
+       Merged r5536 from trunk:
+       
+       * src/vm/jit/mips/emit.c (vm/jit/emit.h): Renamed to
+       vm/jit/emit-common.h.
+       (emit_load_s1, emit_load_s2, emit_load_s3, emit_store_dst): Removed.
+       
+       * src/vm/jit/mips/codegen.c (vm/jit/emit.h): Renamed to
+       vm/jit/emit-common.h.
+       (codegen): Some updates to field instructions.
+
+2006-09-28 20:17  edwin
+
+       Merged r5535 from trunk:
+       
+       * src/vm/jit/mips/codegen.c (codegen): Moved ICMD_IREMPOW2 and
+       ICMD_LREMPOW2.
+
+2006-09-28 20:16  edwin
+
+       Merged r5534 from trunk:
+       
+       * src/vm/jit/alpha/emit.c (vm/jit/emit.h): Renamed to
+       vm/jit/emit-common.h.
+       (emit_load_s1, emit_load_s2, emit_load_s3, emit_store_dst): Removed.
+       
+       * src/vm/jit/alpha/codegen.c (vm/jit/emit.h): Renamed to
+       vm/jit/emit-common.h.
+
+2006-09-28 20:13  edwin
+
+       Merged r5531 and r5532, ported to unified_variables:
+       
+       * src/vm/jit/i386/md-emit.h: Renamed to src/vm/jit/i386/emit.h.
+       
+       * src/vm/jit/i386/emit.c (vm/jit/i386/md-emit.h): Renamed to
+       vm/jit/i386/emit.h.
+       (vm/jit/emit.h): Renamed to vm/jit/emit-common.h.
+       (emit_load_s1, emit_load_s2, emit_load_s3, emit_load_s1_low)
+       (emit_load_s2_low, emit_load_s1_high, emit_load_s2_high)
+       (emit_store_dst): Removed.
+       
+       * src/vm/jit/i386/codegen.c (vm/jit/i386/md-emit.h): Renamed to
+       vm/jit/i386/emit.h.
+       (vm/jit/emit.h): Renamed to vm/jit/emit-common.h.
+
+2006-09-28 19:53  edwin
+
+       Merged r5530 from trunk:
+       
+       * src/vm/jit/emit.h: Renamed to src/vm/jit/emit-common.h.
+       * src/vm/jit/emit-common.c: New file.
+       
+       * src/vm/jit/Makefile.am (noinst_HEADERS): Removed emit.h.
+       (libjit_la_SOURCES): Added emit-common.[ch].
+       
+       * src/vm/jit/x86_64/emit.c (emit_load_s1, emit_load_s2, emit_load_s3)
+       (emit_store_dst): Removed.
+       
+       * src/vm/jit/x86_64/codegen.c: Changed include names.
+
+2006-09-28 19:46  edwin
+
+       Merged r5529 from trunk:
+       
+       * src/vm/jit/x86_64/md-emit.h: Renamed to src/vm/jit/x86_64/emit.h.
+
+2006-09-28 19:36  edwin
+
+       Merged r5527 from trunk:
+       
+       * src/native/include/.cvsignore: Added sun_misc_Unsafe.h.
+
+2006-09-28 19:33  edwin
+
+       Merged r5526 from trunk:
+       
+       * src/native/vm/sun_misc_Unsafe.c: New file:
+       * src/native/vm/Makefile.am (libnativevm_la_SOURCES): Added
+       sun_misc_Unsafe.c.
+       * src/native/include/Makefile.am (GEN_HEADER_FILES): Added
+       sun_misc_Unsafe.h.
+
+2006-09-28 19:31  edwin
+
+       Merged r5525 from trunk:
+       
+       * tests/regression/clinitexception.2output: Updated to GNU Classpath
+       0.92.
+       * tests/regression/extest.2output: Likewise.
+
+2006-09-28 19:30  edwin
+
+       Merged r5509 from trunk:
+       
+       * src/vm/jit/show.c (new_show_basicblock): Print predecessors only for
+       stage >= SHOW_CFG.
+       * src/vm/jit/show.h (SHOW_CFG): Defined.
+
+2006-09-28 19:24  edwin
+
+       Merged r5506 from trunk:
+       
+       * src/native/jni.c (GetDirectBufferAddress): Check if address is NULL.
+
+2006-09-28 19:22  edwin
+
+       Merged r5502 from trunk, with additional fixes:
+       
+       * src/vm/jit/jit.c (jit_compile_intern): Moved cfg_build call after
+       stack_analyse, because of JSR elimination.
+       
+       * src/vm/jit/cfg.c (cfg_build): Updated to be run after stack_analyse.
+       
+       Fixes:
+       
+       * src/vm/jit/cfg.c (cfg_build): Skip NOPs at the end of the block.
+       Handle JSR and RET correctly. Use bptr->next in the default case
+       of falling into the following block.
+
+2006-09-28 18:45  edwin
+
+       Merged r5489 from trunk:
+       
+       * configure.ac (INTRP_CFLAGS): Moved a bit.
+       * src/vm/jit/intrp/Makefile.am (CFLAGS): Don't define.
+       (AM_CFLAGS): Define as INTRP_CFLAGS, that seems to be the correct way.
+
+2006-09-28 18:42  edwin
+
+       * src/vm/jit/sparc64/codegen.c (codegen): Replaced catchtype.cls
+       with catchtype.any to reflect that it can be a classref or a
+       classinfo. (Also see r5488.)
+
+2006-09-28 18:35  edwin
+
+       Merged r5476 from trunk:
+       
+       Merged sparc64 changes from trunk.
+
+2006-09-28 18:31  edwin
+
+       Merged r5462 from trunk:
+       
+       * src/vm/jit/parse.c (new_parse): Added a ICMD_NOP at the end of each
+       basic block, if we have reorder enabled.
+
+2006-09-28 17:02  edwin
+
+       * src/vm/jit/reg.h (registerdata): New fields regcopycount,
+       memcopycount, and memcopycountsize.
+       
+       * src/vm/jit/allocator/simplereg.c (reg_init_temp): Take jitdata
+       argument, initialize copy counts.
+       (reg_free_temp): Simplified a bit.
+       (reg_free_temp_func): Check if freeing a copy.
+       (reg_alloc_dup): New function.
+       (new_allocate_scratch_registers): Implemented DUP coalescing using a
+       copy count for each register/memory regoff.
+
+2006-09-19 09:41  edwin
+
+       * tests/regression/jasmin/runtest: Display only the basename of tests.
+       * tests/regression/jasmin/Makefile.am: Use $(srcdir) to locate the
+       runtest script.
+
+2006-09-15 20:18  edwin
+
+       * src/vm/jit/stack.c (new_stack_analyse): Set stackslot SAVEDVAR for
+       MULTIANEWARRAY.
+
+2006-09-15 17:19  christian
+
+       src/vm/jit/allocator/simplereg.c (reg_free_temp_func): New var
+       structures also for SUPPORT_COMBINE_INTEGER_REGISTERS.
+
+2006-09-15 17:05  christian
+
+       * src/vm/jit/ppc/emit.c (emit_load): Changed to new variable
+       structure (varinfo * instead of stackptr) and the use of Macros
+       IS_INMEMORY and VAROP.
+       (emit_store): Likewise.
+       (emit_copy): Likewise.
+       (emit_load_high): Likewise.
+       (emit_load_low): Likewise.
+       (emit_load_s1): Likewise.
+       (emit_load_s1_low): Likewise.
+       (emit_load_s1_high): Likewise.
+       (emit_load_s2): Likewise.
+       (emit_load_s2_low): Likewise.
+       (emit_load_s2_high): Likewise.
+       (emit_load_s3): Likewise.
+       (emit_load_s3_low): Likewise.
+       (emit_load_s3_high): Likewise.
+       (emit_store_dst): Likewise.
+       
+       * src/vm/jit/ppc/codegen.c (codegen): Changed to new variable
+       structure (varinfo * instead of stackptr, adapting of Argument
+       handling, no interface copying anymore at BB Boundaries ) and the use
+       of Macros IS_INMEMORY, VAR and VAROP. ICMD_xSTORE and ICMD_xLOAD use
+       now
+       emit_copy. ICMD_DUPx and ICMD_SWAP were replaced by ICMD_MOVE and
+       ICMD_COPY. Invars are now regarded for EXH and JSR
+       Blocks. Changed ICMD_RET handling like with i386.
+       
+       * src/vm/jit/ppc/codegen.h (M_COPY): Changed to new variable
+       structure.
+       
+       * src/vm/jit/ppc/linux/md-abi.c (md_return_alloc): Changed to new
+       variable structure.
+       
+       * src/vm/jit/ppc/darwin/md-abi.c (md_return_alloc): Changed to new
+       variable structure.
+
+2006-09-15 16:55  edwin
+
+       * tests/regression/jasmin/Makefile.am: Added new test.
+       * tests/regression/jasmin/test_dup_x2_interface_slots.j: New test.
+       * tests/regression/jasmin/test_dup_x1_interface_slots.j: Changed
+       second loop to also use DUP_X1.
+
+2006-09-15 16:44  edwin
+
+       * src/vm/jit/stack.c (MOVE_TO_TEMP): New macro.
+       (new_stack_analyse): Use MOVE_TO_TEMP to save sources for all
+       DUP*, SWAP instructions where it is necessary.
+       
+       * src/vm/jit/parse.c (new_parse): Reserve additional NOPs for
+       DUP* instructions.
+
+2006-09-15 16:39  edwin
+
+       * tests/regression/jasmin/test_dup_x1_interface_slots.j: New test.
+       * tests/regression/jasmin/test_dup2_x1.j: Added dup2_x1 with
+       interface slots.
+       * tests/regression/jasmin/Makefile.am: Added new test.
+
+2006-09-15 16:31  christian
+
+       * src/vm/jit/alpha/emit.c (emit_load): Changed to new variable
+       structure (varinfo * instead of stackptr) and the use of Macro
+       IS_INMEMORY.
+       (emit_store): Likewise.
+       (emit_copy): Likewise.
+       (emit_load_s1): Likewise and reuse emit_load.
+       (emit_load_s2): Likewise and reuse emit_load.
+       (emit_load_s3): Likewise and reuse emit_load.
+       (emit_store_dst): Likewise and reuse emit_store.
+       
+       * src/vm/jit/alpha/codegen.c (codegen): Changed to new variable
+       structure (varinfo * instead of stackptr, adapting of Argument
+       handling, no interface copying anymore at BB Boundaries ) and the use
+       of Macro IS_INMEMORY. ICMD_xSTORE and ICMD_xLOAD use now
+       emit_copy. ICMD_DUPx and ICMD_SWAP were replaced by ICMD_MOVE and
+       ICMD_COPY. Invars are now regarded
+       for EXH and JSR Blocks. Changed ICMD_RET handling like with i386.
+       
+       * src/vm/jit/alpha/codegen.h (M_COPY): Changed to new variable
+       structure.
+       
+       * src/vm/jit/alpha/md-abi.c (md_return_alloc): Changed to new
+       variable structure.
+
+2006-09-15 15:52  edwin
+
+       * src/vm/jit/stack.c (new_stack_analyse): Add a third move at the
+       beginning of a swap operation to save the src1 operand, unless it
+       is in a temporary variable.
+       
+       * src/vm/jit/parse.c (new_parse): Reserve three ICMDs for SWAP.
+
+2006-09-15 15:44  edwin
+
+       * tests/regression/jasmin/Makefile.am: Added/renamed tests.
+
+2006-09-15 14:43  edwin
+
+       * src/vm/jit/verify/typecheck.c: Cleanup and documentation.
+
+2006-09-15 14:18  edwin
+
+       * src/vm/jit/verify/typecheck.c (typestate_reach): Removed check
+       against uninitialized object on stack/in locals during backward
+       branch. It is unnecessary, and not done by the RI. Reference:
+       Alessandro Coglio
+       Improving the official specification of Java bytecode verification
+       Proceedings of the 3rd ECOOP Workshop on Formal Techniques for
+       Java Programs
+       June 2001
+       citeseer.ist.psu.edu/article/coglio03improving.html
+       
+       (verify_basic_block): Removed check against uninitialized object in
+       locals within try block. See above.
+       
+       * tests/regression/jasmin/
+       test_verify_fail_backward_with_new_in_local.j: Renamed.
+       * tests/regression/jasmin/test_verify_fail_new_in_local_within_try.j:
+       Renamed.
+       
+       * tests/regression/jasmin/
+       test_verify_unspecced_ok_backward_with_new_on_stack.j: New test.
+       
+       * tests/regression/jasmin/
+       test_verify_fail_backward_with_new_on_stack.j: Fixed.
+
+2006-09-15 13:08  edwin
+
+       * tests/regression/jasmin/runtest: Use [ \t] instead of \s in the
+       regex for sed, as this seems to be more portable.
+
+2006-09-15 13:03  edwin
+
+       * src/vm/jit/verify/typecheck.c (typecheck_reset_flags): Mark
+       unreached
+       blocks as BBDELETED. The only case in which this can happen to a block
+       that was considered reachable by the stack analysis, is in the case of
+       an exception handler which only covers blocks that have no PEIs.
+
+2006-09-15 12:51  edwin
+
+       * src/vm/resolve.c (new_resolve_field_lazy): Check jd->flags instead
+       of opt_verify.
+       (new_resolve_method_lazy): Likewise.
+
+2006-09-15 12:48  christian
+
+       * src/vm/jit/stack.c (new_stack_analyse): Stackslot flags have to be
+       set for SAVEDVARs, too.
+
+2006-09-15 11:02  edwin
+
+       * src/vm/jit/verify/typecheck.c (verify_basic_block): Fix check for
+       active exception handlers. We may not compare pointers here, as the
+       blocks are not allocated with rising memory addresses. Use the
+       block numbers to compare ranges.
+
+2006-09-15 09:19  christian
+
+       * src/vm/jit/x86_64/emit.c (emit_load): Changed to new variable
+       structure (varinfo * instead of stackptr) and the use of Macro
+       IS_INMEMORY.
+       (emit_store): Likewise.
+       (emit_copy): Likewise.
+       (emit_ishift): Likewise.
+       (emit_lshift): Likewise.
+       (emit_load_s1): Likewise and reuse emit_load.
+       (emit_load_s2): Likewise and reuse emit_load.
+       (emit_load_s3): Likewise and reuse emit_load.
+       (emit_store_dst): Likewise and reuse emit_store.
+       
+       * src/vm/jit/x86_64/md-emit.h: Adapded prototypes.
+       
+       * src/vm/jit/x86_64/codegen.c (codegen): Changed to new variable
+       structure (varinfo * instead of stackptr, adapting of Argument
+       handling, no interface copying anymore at BB Boundaries ) and the use
+       of Macro IS_INMEMORY. ICMD_xSTORE and ICMD_xLOAD use now
+       emit_copy. Invars are now regarded for EXH and JSR Blocks.
+       
+       * src/vm/jit/x86_64/codegen.h (M_COPY): Changed to new variable
+       structure.
+       
+       * src/vm/jit/x86_64/md-abi.c (md_return_alloc): Changed to new
+       variable structure.
+       
+       * src/vm/jit/stack.c (new_stack_analyse): Only try to preallocate
+       return stackslots, if they hold a TEMPVAR. Some preparation for SSA.
+       
+       * src/vm/jit/jit.c (jit_compile_intern): Had to disable
+       replace_create_replacement_points(jd).
+       
+       * src/vm/jit/show.c (new_show_icmd): Show s1 of [FIDL]RETURN like for
+       ARETURN.
+
+2006-09-14 22:51  edwin
+
+       * configure.ac: Generate tests/regression/jasmin/Makefile.
+       
+       * tests/regression/Makefile.am: Added subdir jasmin.
+       
+       * tests/regression/jasmin/Makefile.am: New file.
+       
+       * tests/regression/jasmin/runtest: Check if jasmin .jar is available.
+
+2006-09-14 22:49  edwin
+
+       * src/vm/jit/verify/typecheck.c (verify_basic_block): Change
+       destination variable of GETFIELD/GETSTATIC after all checks have been
+       performed, so there is no problem if destination == source.
+
+2006-09-14 21:29  edwin
+
+       * tests/regression/jasmin/test_verify_fail_retaddr_as_object.j:
+       New test.
+
+2006-09-14 21:23  edwin
+
+       *
+       tests/regression/jasmin/test_verify_fail_backward_with_new_in_local.j:
+       New test.
+       * tests/regression/jasmin/test_verify_fail_new_in_local_within_try.j:
+       Likewise.
+       * tests/regression/jasmin/test_verify_fail_double_local_index.j:
+       Likewise.
+       *
+       tests/regression/jasmin/test_verify_fail_backward_with_new_on_stack.j:
+       Likewise.
+
+2006-09-14 20:55  edwin
+
+       * tests/regression/jasmin/test_verify_fail_long_local.j:
+       Added comment.
+       * tests/regression/jasmin/test_verify_fail_double_overwritten.j:
+       New test.
+       * tests/regression/jasmin/test_verify_fail_invoke_basic_type.j:
+       New test.
+       * tests/regression/jasmin/test_verify_fail_long_overwritten.j:
+       New test.
+
+2006-09-14 20:36  edwin
+
+       * src/vm/jit/verify/typecheck.c (typecheck_invalidate_locals):
+       New function.
+       (verify_basic_block): Invalidate locals that share space with the
+       stored local.
+       (typecheck): Build reverse map of locals.
+
+2006-09-14 18:56  edwin
+
+       * src/vm/jit/reg.h (varinfo): Added typeinfo member.
+       
+       * src/vm/jit/verify/typecheck.c: Ported to unified_variables.
+       * src/vm/jit/verify/typeinfo.h: Likewise.
+       * src/vm/jit/verify/typeinfo.c: Likewise.
+
+2006-09-14 18:55  edwin
+
+       * src/vm/resolve.c (resolve_class_from_name): RESOLVE_VERBOSE changes.
+       (resolve_classref_or_classinfo): Likewise.
+       (resolve_class_from_typedesc): Likewise.
+       (resolve_and_check_subtype_set): Likewise.
+       (new_create_unresolved_field): Likewise.
+       (new_create_unresolved_method): Likewise.
+       
+       (new_resolve_field_verifier_checks): Ported to unified_variables.
+       (new_resolve_field_lazy): Likewise.
+       (new_resolve_method_verifier_checks): Likewise.
+       (new_resolve_method_lazy): Likewise.
+       (new_constrain_unresolved_field): Likewise.
+       
+       
+       (unresolved_subtype_set_from_typeinfo): Take classname directly,
+       instead of the constant_classref *.
+       
+       (create_unresolved_class): Pass classname to
+       unresolved_subtype_set_from_typeinfo.
+       
+       (new_constrain_unresolved_method): Ported to unified_variables.
+       Pass classname to unresolved_subtype_set_from_typeinfo. (This should
+       fix a bug when fieldref->p.classref was invalid.)
+       
+       (new_constrain_unresolved_method): Ported to unified_variables.
+       Pass classname to unresolved_subtype_set_from_typeinfo.
+       
+       * src/vm/resolve.h (jit/reg.h): Include this before typeinfo.h
+       (new_resolve_method_lazy): Added jd parameter.
+       (new_resolve_field_lazy): Likewise.
+       (new_constrain_unresolved_field): Likewise.
+       (new_constrain_unresolved_method): Likewise.
+       
+       * src/vm/jit/parse.c (new_parse): Pass jd to resolve functions.
+
+2006-09-14 18:45  edwin
+
+       * src/vm/jit/show.c (new_show_method): Only show allocation of locals
+       if stage is at least SHOW_REGS.
+       (new_show_icmd): Show class for CHECKCAST.
+
+2006-09-14 18:44  edwin
+
+       * src/vm/jit/stack.c (stack_create_invars): Add extra locals needed
+       by the verifier.
+       (stack_create_invars_from_outvars): Likewise.
+       (new_stack_analyse): Create inlocals for first block. Allow ASTORE of
+       returnAddress values.
+
+2006-09-14 18:40  edwin
+
+       * src/vm/jit/parse.c (new_parse): Commented calculation of varcount
+       and added added extra variables that will be needed by the verifier.
+
+2006-09-14 18:36  edwin
+
+       * src/vm/global.h (VERIFIER_EXTRA_LOCALS): New constant.
+       (VERIFIER_EXTRA_VARS): Likewise.
+
+2006-09-14 18:20  edwin
+
+       * src/vm/class.c (class_classref_or_classinfo_print): New function.
+       (class_classref_or_classinfo_println): Likewise.
+       
+       * src/vm/class.h (class_classref_or_classinfo_print): New function.
+       (class_classref_or_classinfo_println): Likewise.
+
+2006-09-14 18:16  edwin
+
+       * src/vm/jit/jit.h (VAROP): New macro for accessing variable operands.
+       (VAR): New macro for getting a variable from a varindex.
+
+2006-09-14 16:46  edwin
+
+       * tests/regression/jasmin/test_verify_fail_load_wrong_type.j:
+       New test.
+       * tests/regression/jasmin/
+       test_verify_fail_load_wrong_type_within_block.j: New test.
+       * tests/regression/jasmin/test_verify_fail_local_index.j: New test.
+       * tests/regression/jasmin/test_verify_fail_long_local_index.j:
+       New test.
+       * tests/regression/jasmin/test_verify_fail_long_local.j: New test.
+       * tests/regression/jasmin/test_verify_fail_split_local.j: New test.
+       * tests/regression/jasmin/test_verify_ok_overwrite_local_type.j:
+       New test.
+       * tests/regression/jasmin/test_verify_ok_untyped_local.j: New test.
+
+2006-09-13 00:21  edwin
+
+       * src/vm/jit/powerpc/codegen.c (codegen): Replaced catchtype.cls with
+       catchtype.any to reflect that it can be a classref or a classinfo.
+       
+       * 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/intrp/asmpart.c (intrp_asm_handle_exception): Added XXX
+       comment warning that classrefs must be resolved here.
+
+2006-09-13 00:03  edwin
+
+       * src/vm/jit/i386/codegen.c (codegen): Use emit_copy for LOAD/STORE
+       instructions. We should also combine this with ICMD_COPY/MOVE, but
+       I was not sure how to deal with the M_COPY macro.
+
+2006-09-12 23:35  edwin
+
+       * tests/regression/jasmin/test_swap_locals.j: New test.
+
+2006-09-12 23:31  edwin
+
+       * tests/regression/jasmin/test_swap_interface_slots.j: New test.
+
+2006-09-12 23:18  edwin
+
+       * tests/regression/jasmin/test_many_monitors.j: New test. (This test
+       case used to fail with old-instruction-format cacao.)
+
+2006-09-12 22:32  christian
+
+       * src/vm/jit/i386/codegen.c (codegen): Corrected handling of taking
+       arguments out of stack frame. Some changes to adapt SSA to unified
+       variables.
+
+2006-09-12 21:34  edwin
+
+       * src/vm/jit/parse.c (parse_check_instructions): Renamed to
+       parse_realloc_instructions to reflect what it really does. Fixed so
+       it adds at least as many instructions as required by the check.
+       
+       * src/vm/jit/parse.h (INSTRUCTIONS_CHECK): Use
+       parse_realloc_instructions.
+       (MARK_BASICBLOCK): Cleaned up backslashes.
+
+2006-09-12 21:23  edwin
+
+       * src/vm/jit/stack.c (new_stack_analyse): Fixed test for existing
+       coalescing for *STORE.
+       Properly use the return value of stack_mark_reached when analysing
+       a block for the first time.
+       
+       * tests/regression/jasmin/test_simple_load_store.j: Added a test
+       that just does ILOAD 1, ISTORE 1.
+
+2006-09-12 00:21  edwin
+
+       * tests/regression/jasmin/test_verify_ok_jsr_handler_in_sub.j:
+       Renamed to test_verify_fail_jsr_handler_in_sub.j, as it fails on the
+       reference implementation.
+       
+       * tests/regression/jasmin/test_verify_ok_jsr_exceptions.j: Renamed to
+       test_verify_fail_jsr_exceptions.j, likewise.
+       
+       * tests/regression/jasmin/test_verify_fail_ret_uninit_var.j,
+       tests/regression/jasmin/test_verify_fail_aload_retaddress.j,
+       tests/regression/jasmin/test_verify_fail_ret_bad_type.j: Made
+       expected error match both CACAO's message and the reference
+       implementation's message.
+
+2006-09-11 23:32  edwin
+
+       * src/vm/jit/stack.c (stack_reanalyse_block): Removed unused
+       variable.
+
+2006-09-11 23:24  edwin
+
+       * src/vm/jit/stack.c: Added JSR elimination by block specialization.
+       
+       * src/vm/jit/i386/codegen.c (codegen): Treat ICMD_RET as a GOTO.
+
+2006-09-11 23:17  edwin
+
+       * tests/regression/jasmin/runtest: Add --color option.
+
+2006-09-11 22:17  edwin
+
+       * tests/regression/jasmin/test_verify_ok_jsr_handler_in_sub2.j: Added
+       a second call of the subroutine, so cacao has to clone the exception
+       handler.
+
+2006-09-11 14:59  edwin
+
+       * tests/regression/jasmin/test_verify_ok_jsr_handler_in_sub.j:
+       New test.
+       * tests/regression/jasmin/test_verify_ok_jsr_exceptions.j: Likewise.
+       * tests/regression/jasmin/test_verify_ok_jsr_through_variable.j:
+       Likewise.
+       * tests/regression/jasmin/test_verify_ok_jsr_handler_in_sub2.j:
+       Likewise.
+       * tests/regression/jasmin/test_verify_ok_jsr_swap.j: Likewise.
+
+2006-09-11 14:57  edwin
+
+       * tests/regression/jasmin/test_dup2.j: Fix stackdepth.
+       * tests/regression/jasmin/test_load_store_conflict.j: Likewise.
+
+2006-09-11 14:55  edwin
+
+       * tests/regression/jasmin/runtest: Only show PASS if status is ok.
+
+2006-09-11 14:54  edwin
+
+       * src/vm/jit/allocator/simplereg.c (new_allocate_scratch_registers):
+       Zero destination of ICMD_JSR to avoid problems when showing the IR.
+
+2006-09-11 14:52  edwin
+
+       * src/vm/jit/show.h (show_jit_type_letters): New variable.
+       (show_jit_type_names): Likewise.
+       
+       * src/vm/jit/show.c (jit_type): Renamed to show_jit_type_names and
+       exported.
+       (show_jit_type_letters): New variable.
+       (new_show_method): Improved.
+       (new_show_icmd): Likewise.
+
+2006-09-11 14:45  edwin
+
+       * src/toolbox/logging.h (log_text): Fixed for strings containing %.
+
+2006-09-11 14:37  edwin
+
+       * src/vm/jit/reg.h (varinfo): Put regoff inside a union (vv) so it
+       can share space with the constant values put in varinfo. Also made
+       type and flags s4.
+       
+       * src/vm/jit/stack.c (new_stack_analyse): Replace regoff with
+       vv.regoff.
+       
+       * src/vm/jit/show.c (new_show_method): Likewise.
+       (new_show_variable): Likewise.
+       
+       * src/vm/jit/allocator/simplereg.c (local_regalloc): Likewise.
+       (reg_new_temp_func): Likewise.
+       (reg_free_temp_func): Likewise.
+       (new_allocate_scratch_registers): Likewise.
+       (reg_make_statistics): Likewise.
+       
+       * src/vm/jit/i386/emit.c: Likewise.
+       * src/vm/jit/i386/codegen.c: Likewise.
+       * src/vm/jit/codegen-common.c: Likewise.
+
+2006-09-11 00:33  edwin
+
+       * src/vm/global.h (TYPE_RET): New constant.
+       
+       * src/vm/exceptions.c (exceptions_throw_verifyerror_for_stack):
+       Display TYPE_RET correctly.
+
+2006-09-11 00:30  edwin
+
+       * src/vm/jit/jit.h (basicblock): Added fields `inlocals` and
+       `original` (for JSR elimination).
+
+2006-09-11 00:03  edwin
+
+       * tests/regression/jasmin/test_verify_fail_aload_retaddress.j: New
+       test.
+       * tests/regression/jasmin/test_verify_fail_ret_uninit_var.j: New
+       test.
+       * tests/regression/jasmin/test_verify_ok_jsr_pop.j: New test.
+       * tests/regression/jasmin/test_verify_ok_jsr_push.j: New test.
+
+2006-09-10 13:51  edwin
+
+       * tests/regression/jasmin/runtest: Return correct exit code.
+
+2006-09-10 13:45  edwin
+
+       * tests/regression/jasmin/runtest: Delete temporary files.
+       * tests/regression/jasmin/test_verify_ok_jsr.j: New test.
+       * tests/regression/jasmin/test_verify_ok_jsr_multiple_blocks.j: New
+       test.
+       * tests/regression/jasmin/test_verify_fail_ret_bad_type.j: New test.
+
+2006-09-10 13:43  edwin
+
+       * tests/regression/jasmin/runtest: Added harness code for expecting
+       errors.
+
+2006-09-10 11:35  christian
+
+       * src/vm/jit/i386/codegen.c (codegen): Corrected handling of taking
+       arguments out of stack frame.
+
+2006-09-10 11:20  edwin
+
+       * src/vm/jit/stack.c (DUP_SLOT): Removed code for direct coalescing.
+       (DUP coalescing will be done in simplereg, probably.)
+
+2006-09-10 09:11  edwin
+
+       * src/vm/jit/show.c (new_show_method): Use class_print and
+       class_classref_print for showing the catch type.
+
+2006-09-09 22:33  edwin
+
+       * src/vm/jit/stack.c: Fixed macro backslashes.
+
+2006-09-09 22:05  edwin
+
+       * src/vm/jit/show.c (new_show_method): Show hexadecimal offsets in
+       stack slot table.
+
+2006-09-09 21:58  edwin
+
+       * src/vm/jit/stack.c (new_stack_analyse): Reset the sd.new pointer at
+       the beginning of each basic block.
+
+2006-09-09 21:50  edwin
+
+       * src/vm/jit/stack.c (new_stack_analyse): Made control-flow easier
+       to read. The majority of the code is now indented one level too much.
+       I did not change this, yet, to avoid a giant diff. We can do this
+       when all the branches are merged together.
+
+2006-09-09 21:41  edwin
+
+       * src/vm/jit/stack.c (new_stack_analyse): Combined calls to
+       stack_create_instack.
+
+2006-09-09 21:33  edwin
+
+       * src/vm/jit/jit.h (basicblock): Removed members instack and
+       outstack.
+       
+       * src/vm/jit/stack.c (stack_check_invars): New function.
+       (stack_create_instack): New function.
+       (stack_mark_reached): Use new functions.
+       (new_stack_analyse): Likewise.
+       
+       * src/vm/jit/stack.h (COPYCURSTACK): Removed macro.
+
+2006-09-09 20:05  edwin
+
+       * src/vm/jit/stack.h (COPYCURSTACK): Do not create invars here.
+       
+       * src/vm/jit/stack.c (stack_create_invars): New function.
+       (stack_mark_reached): Use stack_create_invars.
+       (new_stack_analyse): Likewise.
+
+2006-09-09 19:37  edwin
+
+       * src/vm/jit/jit.h (basicblock): Added fields varstart and varcount.
+       Reordered fields for clarity and alignment.
+       
+       * src/vm/jit/stack.c (new_stack_analyse): Set varstart and varcount
+       of each basic block.
+
+2006-09-09 19:25  edwin
+
+       * src/vm/exceptions.c (exceptions_handle_exception): Added comment on
+       why we have to do eager resolving here. Check for exceptions while
+       resolving the catch class reference.
+       
+       * src/vm/linker.c (link_class_intern): Resolve exception classes
+       in handler entries lazily, instead of eagerly.
+
+2006-09-09 14:49  edwin
+
+       * src/vm/jit/stack.h (CURKIND): Removed macro.
+       (CURTYPE): Removed macro.
+       
+       * src/vm/jit/stack.c (new_stack_analyse): Removed the single use of
+       CURKIND.
+
+2006-09-09 14:45  edwin
+
+       * src/vm/jit/stack.h (Changes): Added my name.
+
+2006-09-09 14:41  edwin
+
+       * src/vm/jit/stack.h (REQUIRE_1, REQUIRE_2, REQUIRE_3, REQUIRE_4):
+       Removed.
+       * src/vm/jit/stack.c (new_stack_analyse): Use the general REQUIRE
+       macro.
+
+2006-09-08 23:59  edwin
+
+       * src/vm/jit/stack.c (IS_TEMPVAR): Fix bug spotted
+       (and produced ;) by c_u.
+
+2006-09-08 20:54  edwin
+
+       * src/vm/jit/stack.c (new_stack_analyse): Added some assertion.
+       When we do a STORE coalescing, the stackslot must have a creator.
+
+2006-09-08 20:50  edwin
+
+       * src/vm/jit/stack.c (new_stack_analyse): Unified last_dup_boundary
+       and last_pei_boundary to coalescing_boundary.
+       Activated STORE coalescing. Change destination operand of creator, if
+       any.
+
+2006-09-08 20:41  edwin
+
+       * src/vm/jit/stack.h (COPYCURSTACK): Use GET_NEW_VAR.
+       Removed SET_OUTVAR.
+       * src/vm/jit/stack.c (GET_NEW_VAR): New macro.
+       (various macros): Use GET_NEW_VAR, so the variable type is set.
+       Reset coalescing for non-consuming uses.
+       (SET_TEMPVAR): Fix: do not use "copy". Change the destination operand
+       of the creator, if any.
+       (DST_LOCAL): Activate LOAD coalescing.
+       (new_stack_analyse): Reset coalescing for pass-through operands.
+
+2006-09-08 19:48  edwin
+
+       * src/vm/jit/jit.h (stackelement): Added creator field.
+       * src/vm/jit/stack.h (COPYCURSTACK): Set creator = NULL.
+       * src/vm/jit/stack.c (DST, DST_LOCALVAR, MOVE_COPY_UP, COPY_DOWN):
+       Set creator to current iptr.
+       * src/vm/jit/stack.h: Cleaned up macros.
+       * src/vm/jit/stack.c: Likewise.
+
+2006-09-08 18:14  edwin
+
+       * src/vm/jit/codegen-common.h: Removed the NEW_VAR define.
+       * src/vm/jit/stack.c: Likewise.
+       * src/vm/jit/verify/typecheck.c: Likewise.
+       * src/vm/jit/i386/codegen.c: Likewise.
+       * src/vm/jit/parse.c: Likewise.
+       * src/vm/jit/reg.c: Likewise.
+       * src/vm/jit/reg.h: Likewise.
+       * src/vm/jit/jit.c: Likewise.
+       * src/vm/jit/codegen-common.c: Likewise.
+       * src/vm/jit/jit.h: Likewise, and removed the dupslots member from
+       the dst_operand_t union.
+
+2006-09-08 18:12  edwin
+
+       * src/vm/jit/show.c (new_show_icmd): Removed code for DUPs.
+
+2006-09-08 17:59  edwin
+
+       * src/vm/jit/verify/typecheck.c: Removed code for DUPs.
+
+2006-09-08 17:57  edwin
+
+       * src/vm/jit/i386/codegen.c (codegen): Removed code for DUPs.
+
+2006-09-08 17:50  edwin
+
+       * src/vm/jit/i386/codegen.c (*LOAD, *STORE): Normalized the source ==
+       dest check so it always looks the same.
+       (LLOAD, LSTORE): Use M_LNGMOVE, not M_INTMOVE.
+       (DSTORE): Combined with FSTORE, because it now has the same code.
+
+2006-09-08 17:37  edwin
+
+       * src/vm/jit/i386/codegen.c (codegen): Fix LSTORE: The source == dest
+       test was broken.
+
+2006-09-08 16:41  edwin
+
+       * src/vm/jit/show.c (new_show_method): Fix display of local table.
+
+2006-09-08 16:26  edwin
+
+       * src/vm/jit/stack.c (new_stack_analyse): Fix ICMD_RET: The variable
+       index has to be mapped.
+
+2006-09-08 16:07  edwin
+
+       * src/vm/jit/stack.c (DUP_SLOT): Turn off coalescing.
+       (MOVE_COPY_UP): New macro.
+       (COPY_DOWN): New macro.
+       (interface_map): Changed to array of interface_info.
+       (*STORE): Fix index into last_store_boundary (must be javaindex).
+       (DUP*, SWAP): Eliminate DUPs.
+       (new_stack_analyse): Mark invar interfaces used.
+       
+       * src/vm/jit/show.c (new_show_method): Adapted to new
+       interface_map layout.
+       
+       * src/vm/jit/allocator/simplereg.c (interface_regalloc): Adapted
+       to new interface_map layout.
+       (new_allocate_scratch_registers): Likewise.
+       (new_allocate_scratch_registers): Removed code for DUP* instructions.
+       (ICMD_MOVE, ICMD_COPY): Added.
+
+2006-09-08 16:02  edwin
+
+       * src/vm/jit/i386/codegen.h (M_FLTMOVE): Only assert(0) if move would
+       have to be performed.
+
+2006-09-08 14:17  edwin
+
+       * src/vm/jit/show.c (show_variable): Check for invalid flags.
+
+2006-09-08 14:16  edwin
+
+       * src/vm/jit/i386/codegen.c (codegen): Removed a debug print.
+
+2006-09-08 14:15  edwin
+
+       * src/vm/jit/stack.c (DST_LOCALVAR): _Really_ turn off coalescing
+       temporarily.
+
+2006-09-08 12:19  edwin
+
+       * src/vm/jit/allocator/simplereg.c (interface_regalloc): Changed
+       allocation of interface registers. interface_map now contains the
+       necessary flags, and receives a combination of allocated flags
+       and regoff.
+       
+       (new_allocate_scratch_registers): Copy the allocation of the
+       invars and outvars for each basic block.
+
+2006-09-08 12:17  edwin
+
+       * src/vm/jit/jit.h (LOCAL_UNUSED): Changed (in comment) to UNUSED.
+
+2006-09-08 12:16  edwin
+
+       * src/vm/jit/stack.c (stackdata_t): New struct for keeping internal
+       data of the stack analysis. This is necessary for converting macros
+       to functions.
+       (various macros): Adapted to use stackdata_t. Removed old code.
+       (DST_LOCALVAR): Temporarily turned off local variable coalescing.
+       (MARKREACHED): Converted to a function.
+       (stack_mark_reached): New function.
+       (last_store_boundary): Use java indices instead of internal local
+       indices into this table.
+       (new_stack_analyse): Removed old code.
+       
+       * src/vm/jit/stack.h (various macros): Adapted to use stackdata_t.
+       (MARKREACHED): Converted to a function.
+
+2006-09-08 12:10  edwin
+
+       * src/vm/jit/parse.h: Removed old code.
+       * src/vm/jit/parse.c (new_parse): Do not modify m->maxlocals and
+       cd->maxlocals.
+       They refer to the number of javalocals, and that's ok. We have
+       jd->localcount
+       to keep the number of internal locals.
+
+2006-09-08 12:07  edwin
+
+       * src/vm/jit/show.c (new_show_method): Show isleafmethod.
+       (new_show_method): Pretty interface map printing (prepared for
+       interface register allocation changes).
+       (new_show_method): Print allocation of stack slots.
+       (show_allocation): New function.
+       (show_variable): Mark SAVEDVARs with an exclamation mark.
+
+2006-09-08 01:05  edwin
+
+       * src/vm/jit/show.c (new_show_method): Only show local table if there
+       are locals.
+
+2006-09-07 23:17  edwin
+
+       * src/vm/jit/show.c (jit_type): Made types uppercase.
+       (new_show_method): Prettier printing of locals_map and interface_map.
+       (SHOW_STACKVAR): Renamed to SHOW_VARIABLE.
+       (new_show_stackvar): Renamed to show_variable. Cleaned up.
+
+2006-09-07 22:44  edwin
+
+       * src/vm/jit/allocator/simplereg.c (reg_new_temp_func): Removed old
+       version.
+       (reg_free_temp_func): Likewise.
+       (allocate_scratch_registers): Likewise.
+
+2006-09-07 22:39  edwin
+
+       * src/vm/jit/allocator/simplereg.c (reg_alloc_dup): Removed.
+       (new_reg_mark_copy): Likewise.
+
+2006-09-07 14:41  edwin
+
+       * src/vm/jit/i386/codegen.c (ICMD_COPY): Added.
+       (ICMD_MOVE): Likewise.
+
+2006-09-07 14:38  edwin
+
+       * src/vm/jit/reg.h (varinfo): New field copycount.
+       * src/vm/jit/parse.c (new_parse): Zero jd->var array.
+
+2006-09-07 14:31  edwin
+
+       * src/vm/jit/parse.c (new_parse): Allocate extra NOPs for stack
+       operations.
+
+2006-09-07 14:25  edwin
+
+       * src/vm/jit/show.c (ICMD_COPY): Uncommented.
+       (ICMD_MOVE): Likewise.
+
+2006-09-07 14:24  edwin
+
+       * src/vm/jit/jit.h, src/vm/jit/jit.c (ICMD_COPY): New ICMD.
+       (ICMD_MOVE): Likewise.
+
+2006-09-07 14:00  christian
+
+       * src/vm/jit/allocator/simplreg: Removed #if defined(NEW_VAR) over
+       some functions.
+
+2006-09-07 13:41  edwin
+
+       * src/vm/jit/jit.c (ENABLE_VERIFY): Corrected to ENABLE_VERIFIER.
+
+2006-09-07 13:29  christian
+
+       Unified variables changes for common/i386.
+
+2006-09-07 13:01  edwin
+
+       Branch for developing unified variables.
+
+2006-09-07 12:52  twisti
+
+       * src/vm/jit/i386/emit.c: Use IS_INMEMORY macro.
+       * src/vm/jit/i386/codegen.c: Likewise.
+
+2006-09-07 12:26  twisti
+
+       * src/vm/jit/powerpc/codegen.c (codegen): Use IS_INMEMORY macro.
+
+2006-09-07 12:24  twisti
+
+       * src/vm/jit/powerpc/emit.c (emit_copy): Eliminate register move if
+       one of the variables resides in memory.
+
+2006-09-07 11:14  twisti
+
+       * src/vm/jit/alpha/emit.c (emit_copy): Only one not-equal comparison.
+
+2006-09-07 11:09  twisti
+
+       * src/vm/jit/powerpc64/emit.c (emit_copy): Eliminate register move if
+       one of the variables resides in memory.
+
+2006-09-07 10:59  twisti
+
+       * src/vm/jit/mips/emit.c (emit_copy): Eliminate register move if one
+       of the variables resides in memory.
+
+2006-09-07 10:46  twisti
+
+       * src/vm/jit/i386/emit.c (emit_copy): Eliminate register move if one
+       of the variables resides in memory.
+
+2006-09-07 10:16  twisti
+
+       * src/vm/jit/x86_64/emit.c (emit_copy): Eliminate register move if one
+       of the variables resides in memory.
+
+2006-09-07 10:03  twisti
+
+       * src/vm/jit/alpha/emit.c (emit_copy): Eliminate register move if one
+       of the variables resides in memory.
+
+2006-09-07 09:40  twisti
+
+       * src/vm/jit/jit.h (IS_SAVEDVAR): Added.
+       (IS_INMEMORY): Likewise.
+
+2006-09-07 00:32  edwin
+
+       * src/vm/jit/show.c (new_show_icmd): Separate real arguments and
+       pass-through variables for INVOKE*.
+
+2006-09-07 00:29  edwin
+
+       * src/vm/jit/show.c (new_show_icmd): Separate real arguments and
+       pass-through variables for BUILTIN.
+
+2006-09-06 23:18  twisti
+
+       * src/vm/jit/powerpc64/linux/md-abi.h: Bugfixes and changes for new
+       instruction format.
+       * src/vm/jit/powerpc64/linux/md-abi.c: Likewise.
+       * src/vm/jit/powerpc64/emit.c: Likewise.
+       * src/vm/jit/powerpc64/codegen.c: Likewise.
+       * src/vm/jit/powerpc64/codegen.h: Likewise.
+
+2006-09-06 22:34  twisti
+
+       * src/vm/jit/mips/linux/md-abi.h (REG_A0, REG_A1, REG_A2, REG_A3):
+       Defined.
+       * src/vm/jit/mips/codegen.c: Use REG_A? defines instead of
+       rd->argintreg[] loads.
+
+2006-09-06 22:16  twisti
+
+       * src/vm/jit/alpha/linux/md-abi.h (REG_A0, REG_A1, REG_A2, REG_A3):
+       Defined.
+       * src/vm/jit/alpha/codegen.c: Use REG_A? defines instead of
+       rd->argintreg[] loads.
+
+2006-09-06 21:56  twisti
+
+       * src/vm/jit/x86_64/md-abi.h (REG_A0, REG_A1, REG_A2, REG_A3):
+       Defined.
+       * src/vm/jit/x86_64/codegen.c: Use REG_A? defines instead of
+       rd->argintreg[] loads.
+
+2006-09-06 21:40  twisti
+
+       * src/vm/jit/stack.c (new_stack_analyse): Removed obsolete precedessor
+       calucation.
+
+2006-09-06 21:32  edwin
+
+       * tests/regression/jasmin/test_dup_x2.j: Split second test into
+       separate file.
+       * tests/regression/jasmin/test_dup_x2_to_dup_x1: New test.
+
+2006-09-06 21:30  edwin
+
+       * tests/regression/jasmin/runtest: Improved harness script.
+
+2006-09-06 21:17  twisti
+
+       * src/vm/jit/powerpc/linux/md-abi.h (REG_A0, REG_A1, REG_A2, REG_A3):
+       Defined.
+       * src/vm/jit/powerpc/darwin/md-abi.h: Likewise.
+       
+       * src/vm/jit/powerpc/codegen.c: Use REG_A? defines instead of
+       rd->argintreg[] loads.
+
+2006-09-06 17:05  twisti
+
+       * src/vm/jit/mips/codegen.c (codegen): Generate the INVOKE/BUILTIN
+       call code in a common place.
+
+2006-09-06 16:43  twisti
+
+       * src/vm/jit/x86_64/codegen.c (codegen): Generate the INVOKE/BUILTIN
+       call code in a common place.
+
+2006-09-06 16:41  twisti
+
+       * src/vm/jit/i386/codegen.c (codegen): Don't move the function address
+       into disp for ICMD_BUILTIN.
+
+2006-09-06 16:30  twisti
+
+       * src/vm/jit/i386/codegen.c (codegen): Generate the INVOKE/BUILTIN
+       call code in a common place.
+       (createnativestub): Removed unused disp variable.
+
+2006-09-06 16:24  twisti
+
+       * src/vm/jit/alpha/codegen.c (codegen): Generate the INVOKE/BUILTIN
+       call code in a common place.
+
+2006-09-06 16:06  twisti
+
+       * src/vm/jit/powerpc/codegen.c (codegen): Generate the INVOKE/BUILTIN
+       call code in a common place.
+
+2006-09-06 16:01  edwin
+
+       * src/vm/jit/jit.h (INS_FLAG_NOCHECK): Reversed to INS_FLAG_CHECK.
+       * src/vm/jit/stack.c: Likewise.
+       * src/vm/jit/stack.h: Likewise.
+       * src/vm/jit/parse.c: Likewise.
+       * src/vm/jit/parse.h: Likewise.
+
+2006-09-06 15:22  edwin
+
+       * src/vm/jit/parse.h (INSTRUCTIONS_CHECK): New macro.
+       * src/vm/jit/parse.c (new_parse): Merged twisti's reallocation of the
+       instruction array.
+
+2006-09-06 14:38  twisti
+
+       * src/vm/jit/alpha/codegen.c (ICMD_I2L): Use REG_ITMP1 for dst, this
+       can save a move.
+       (ICMD_LDIV, ICMD_LREM): Use argument registers for s1 and s2 when
+       loaded.
+
+2006-09-06 14:32  edwin
+
+       Checked in jasmin tests.
+
+2006-09-06 14:01  edwin
+
+       * src/vm/jit/parse.c (parserdata_t): New type.
+       (parse_setup): New function.
+       (parse_check_instructions): New function.
+
+2006-09-06 13:46  christian
+
+       * src/vm/jit/stack.c (new_stack_analyse): Ifdeffed handling of new var
+       system.
+       
+       * src/vm/jit/stack.h: Likewise.
+       
+       * src/vm/jit/parse.c (new_parse) : Likewise.
+       
+       * src/vm/jit/parse.h: Likewise.
+       
+       * src/vm/jit/jit.h: Ifdeffed structure entries for new var system.
+
+2006-09-06 12:37  twisti
+
+       * src/vm/jit/powerpc/codegen.c (codegen): Use M_ISUB in ICMD_ISUBCONST
+       instead of M_IADD.
+
+2006-09-06 11:58  twisti
+
+       * src/vm/jit/mips/emit.c (emit_copy): Removed accidentally pasted
+       code.
+
+2006-09-06 11:12  edwin
+
+       * src/vm/jit/stack.h: Removed macros for old instruction format.
+
+2006-09-06 11:01  edwin
+
+       * src/vm/jit/parse.h: Removed NEW_ prefix from macros.
+       * src/vm/jit/parse.c: Likewise.
+
+2006-09-06 10:56  edwin
+
+       * src/vm/jit/stack.h (CHECKOVERFLOW): Removed.
+       (NEW_CHECKOVERFLOW): Renamed to CHECKOVERFLOW.
+       
+       * src/vm/jit/stack.c (new_stack_analyse): Removed NEW_ prefix from
+       macro names.
+
+2006-09-06 10:48  edwin
+
+       * src/vm/jit/x86_64/emit.c: Renamed new_instruction to instruction.
+       * src/vm/jit/x86_64/md-emit.h: Likewise.
+       * src/vm/jit/x86_64/codegen.c: Likewise.
+
+2006-09-06 10:20  christian
+
+       * src/vm/stack.c (new_stack_analyse): Removed assert to check, that
+       all outvars are STACKVARS. Would be a possible conflict with swap
+       
+       * src/vm/parse.c (new_parse): Data colletion for local var
+       renaming(de-coalescing)
+       
+       * src/vm/parse.h (new_pase): Likewise.
+       
+       * src/vm/jit.h: Likewise.
+       
+       * src/vm/jit/i386/codegen.c (codegen): Ifdefed interface copy in
+       regard to new
+       var system.
+
+2006-09-06 10:16  edwin
+
+       * src/vm/jit/mips/emit.c (emit_load_s1): Removed obsolete src param.
+       (emit_load_s2): Likewise.
+       (emit_load_s3): Likewise.
+
+2006-09-06 10:14  edwin
+
+       * src/vm/jit/powerpc64/emit.c (emit_load): New function.
+       (emit_load_s1): Implemented in terms of emit_load.
+       (emit_load_s2): Likewise.
+       (emit_load_s3): Likewise.
+       (emit_store_dst): New function.
+
+2006-09-06 10:09  edwin
+
+       * src/vm/jit/mips/emit.c (emit_load): New function.
+       (emit_load_s1): Implemented in terms of emit_load.
+       (emit_load_s2): Likewise.
+       (emit_load_s3): Likewise.
+       (emit_store_dst): New function.
+
+2006-09-06 09:57  edwin
+
+       * src/vm/jit/stack.c (new_stack_analyse): Implement conflict checking
+       and coalescing for *STORE.
+       * src/vm/jit/show.c (new_show_stackvar): Show coalescing info.
+
+2006-09-06 00:18  christian
+
+       * src/vm/jit/stack.c (new_stack_analyse): Mark all in and out
+       Stackslots of Basic Blocks as STACKVAR.
+       
+       * src/vm/jit/i386/codegen.c (codegen): Removed copy of interfaces
+       to in and from out stackslots.
+
+2006-09-06 00:07  edwin
+
+       * src/vm/jit/powerpc64/codegen.c (codegen): ++lookup in LOOKUPSWITCH
+       loop.
+       * src/vm/jit/powerpc64/codegen.c (codegen): Ported to new instruction
+       format.
+
+2006-09-05 23:37  edwin
+
+       * src/vm/jit/i386/codegen.c (codegen): Port LASTORECONST, PUT*CONST.
+
+2006-09-05 23:10  edwin
+
+       * src/vm/jit/mips/codegen.c (codegen): Ported to new instruction
+       format.
+
+2006-09-05 23:08  twisti
+
+       * src/vm/jit/powerpc/emit.c: Updated to new instruction format.
+       * src/vm/jit/powerpc/codegen.c: Likewise.
+
+2006-09-05 23:07  twisti
+
+       * src/vm/builtin.c (builtin_print_argument): Print decimal values for
+       int and long arguments.
+
+2006-09-05 22:51  christian
+
+       * i386/emit.c: Changed to new instruction format.
+       * i386/codegen.c: Likewise.
+       * i386/codegen.h: Likewise.
+       * parse.c: Likewise.
+       * parse.h: Likewise.
+       * jit.h: Likewise.
+
+2006-09-05 22:42  edwin
+
+       * src/vm/jit/show.c (new_show_icmd): Show LOOKUPSWITCH targets.
+
+2006-09-05 22:27  edwin
+
+       * src/vm/jit/alpha/codegen.c (codegen): Port MULTIANEWARRAY.
+
+2006-09-05 22:23  edwin
+
+       * sarc/vm/jit/parse.c (parse): Check return value of
+       lock_monitor_enter.
+
+2006-09-05 22:22  edwin
+
+       * src/threads/native/lock.h (lock_monitor_enter): Return bool.
+       * src/threads/native/lock.c (lock_monitor_enter): Check for
+       NullPointerException.
+
+2006-09-05 22:05  twisti
+
+       * src/vm/jit/cfg.c (cfg_build): It's better to not reuse the loop
+       variable.
+
+2006-09-05 21:53  edwin
+
+       * src/vm/jit/show.c (new_show_icmd): Show BLOCK_OF tableswitch
+       targets.
+
+2006-09-05 21:50  edwin
+
+       * src/vm/jit/show.c (new_show_icmd): Show TABLESWITCH targets.
+
+2006-09-05 21:20  edwin
+
+       * src/vm/jit/alpha/codegen.c (codegen): Port ICMD_CHECKCAST.
+
+2006-09-05 21:20  twisti
+
+       * src/vm/method.h (methodinfo): Removed members basicblockcount,
+       basicblocks, basicblockindex, instructioncount, instructions,
+       stackcount, and stack.
+       
+       * src/vm/jit/cfg.c: Use jitdata variables instead of methodinfo ones.
+       * src/vm/jit/reorder.c: Likewise.
+       * src/vm/jit/ifconv/ifconv.c: Likewise.
+       * src/vm/jit/allocator/simplereg.c: Likewise.
+       * src/vm/jit/replace.c: Likewise.
+       * src/vm/jit/jit.c: Likewise.
+
+2006-09-05 21:17  twisti
+
+       * src/vm/jit/powerpc/Makefile.am (libarch_la_SOURCES): Added
+       accidentally removed codegen.c.
+
+2006-09-05 21:16  twisti
+
+       * src/vm/jit/x86_64/codegen.c (codegen): Use d for return type checks.
+
+2006-09-05 21:15  twisti
+
+       * src/cacaoh/headers.c: Use a dummy flag for natively overloaded
+       methods.
+
+2006-09-05 21:14  edwin
+
+       * src/vm/jit/alpha/codegen.c (codegen): Deactivate replacement points.
+       * src/vm/jit/x86_64/codegen.c (codegen): Likewise.
+
+2006-09-05 21:06  edwin
+
+       * src/vm/jit/alpha/codegen.c (codegen): Set fieldtype in all cases.
+
+2006-09-05 20:58  edwin
+
+       * src/vm/jit/show.c (new_show_basicblock): Prettier if.
+
+2006-09-05 20:57  edwin
+
+       * src/vm/jit/alpha/codegen.c (codegen): Use jd->new_basicblocks.
+
+2006-09-05 20:50  edwin
+
+       * src/vm/jit/alpha/codegen.c: Use invars/outvars instead of
+       instack/outstack.
+
+2006-09-05 20:17  edwin
+
+       * src/vm/jit/alpha/codegen.c (codegen): Port handling of INVOKE*
+       arguments.
+
+2006-09-05 20:11  edwin
+
+       * src/vm/jit/alpha/emit.c: Ported to new instruction format.
+       * src/vm/jit/alpha/codegen.c: Likewise.
+
+2006-09-05 19:38  twisti
+
+       * src/vm/jit/jit.h (instruction): Removed.
+       (new_instruction): Renamed to instruction.
+       
+       * src/vm/builtin.c: Renamed new_instruction to instruction.
+       * src/vm/builtin.h: Likewise.
+       * src/vm/resolve.c: Likewise.
+       * src/vm/resolve.h: Likewise.
+       * src/vm/jit/powerpc/emit.c: Likewise.
+       * src/vm/jit/powerpc/Makefile.am: Likewise.
+       * src/vm/jit/codegen-common.h: Likewise.
+       * src/vm/jit/cfg.c: Likewise.
+       * src/vm/jit/reorder.c: Likewise.
+       * src/vm/jit/emit.h: Likewise.
+       * src/vm/jit/stack.c: Likewise.
+       * src/vm/jit/stack.h: Likewise.
+       * src/vm/jit/show.c: Likewise.
+       * src/vm/jit/dseg.c: Likewise.
+       * src/vm/jit/verify/typecheck.c: Likewise.
+       * src/vm/jit/verify/typeinfo.c: Likewise.
+       * src/vm/jit/show.h: Likewise.
+       * src/vm/jit/allocator/simplereg.c: Likewise.
+       * src/vm/jit/parse.c: Likewise.
+       * src/vm/jit/codegen-common.c: Likewise.
+
+2006-09-05 19:06  edwin
+
+       * src/vm/jit/powerpc/codegen.c (codegen): Converted with
+       portcodegen.pl.
+       * 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.
+
+2006-09-05 18:43  edwin
+
+       Merge changes from trunk (powerpc64).
+
+2006-09-05 17:42  edwin
+
+       * src/vm/jit/powerpc/codegen.c (codegen): Use emit_load instead of
+       emit_load_s1/s2 for variable arguments and interface copying.
+       * 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.
+
+2006-09-05 17:21  edwin
+
+       Merged changes from trunk.
+
+2006-09-05 16:45  edwin
+
+       * src/vm/jit/powerpc/codegen.c (codegen): ICMD_PUTSTATIC: Use
+       emit_load_s1 to load the first operand.
+       * 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.
+
+2006-09-05 16:12  edwin
+
+       * src/vm/jit/jit.h (basicblock): Changed type of iinstr to
+       new_instruction *.
+       * src/vm/jit/stack.c (new_stack_analyse): Removed obsolete casts.
+       * src/vm/jit/show.c (new_show_basicblock): Likewise.
+       * src/vm/jit/verify/typecheck.c (verify_basic_block): Likewise.
+       * src/vm/jit/allocator/simplereg.c (new_allocate_scratch_registers):
+       Likewise.
+       * src/vm/jit/parse.c (new_parse): Likewise.
+       * src/vm/jit/x86_64/codegen.c (new_parse): Likewise.
+
+2006-09-05 12:42  edwin
+
+       * src/vm/jit/jit.h (s3_operand_t): Removed arrayvftbl.
+       * src/vm/jit/x86_64/codegen.c (codegen): ICMD_MULTIANEWARRAY:
+       Use s3.c.cls instead of s3.arrayvftbl.
+
+2006-09-05 12:29  edwin
+
+       * src/vm/jit/jit.h (jitdata): Removed field new_rd.
+       * src/vm/jit/jit.c (jit_compile): Use rd instead of new_rd.
+       (jit_compile_intern): Likewise.
+       * src/vm/jit/verify/typecheck.c (typecheck): Likewise.
+       (verify_basic_block): Removed unused variables.
+       * src/vm/jit/allocator/simplereg.c (new_regalloc):
+       Use rd instead of new_rd.
+       * src/vm/jit/x86_64/codegen.c (codegen): Likewise.
+
+2006-09-05 11:53  edwin
+
+       * src/vm/jit/x86_64/codegen.c: Ported to new instruction format.
+       * src/vm/jit/x86_64/emit.c: Likewise.
+       * src/vm/jit/x86_64/md-emit.h: Likewise.
+
+2006-09-05 11:50  edwin
+
+       * src/vm/jit/jit.h (s3_operand_t): Added union field arrayvftbl.
+
+2006-09-05 11:47  edwin
+
+       * src/vm/jit/jit.c (jit_compile): Test setup for the new x86_64
+       codegen.
+       (jit_compile_intern): Likewise.
+
+2006-09-05 11:42  edwin
+
+       * src/vm/jit/emit.h (emit_load*): Changed for new instruction format.
+       (emit_store*): Likewise.
+       (emit_copy*): Likewise.
+       (emit_store_dst): New function.
+
+2006-09-05 11:40  edwin
+
+       * src/vm/jit/jit.h (basicblock): Added fields invars and outvars.
+       * src/vm/jit/stack.h (MARKREACHED): Set invars.
+       * src/vm/jit/stack.c (new_stack_analyse): Set invars and outvars.
+       * src/vm/jit/show.c (new_show_basicblock): Show invars and outvars.
+
+2006-09-05 11:34  edwin
+
+       * src/vm/jit/jit.h (NEW_INSTRUCTION_*): Renamed to INSTRUCTION_.
+       The old INSTRUCTION_ and ICMD_ macros are removed.
+       * src/vm/resolve.c (NEW_INSTRUCTION_*): Replaced with INSTRUCTION_.
+       * src/vm/jit/show.c (new_show_icmd): Likewise.
+       * src/vm/jit/allocator/simplereg.c (new_allocate_scratch_registers):
+       Likewise.
+       * src/vm/jit/stack.c (new_stack_analyse): Likewise, and add a call
+       of builtintable_replace_function.
+
+2006-09-05 11:20  edwin
+
+       * src/vm/jit/verify/typecheck.c: Ported to new instruction format.
+       * src/vm/jit/verify/typeinfo.c (typeinfo_print): Likewise.
+       (typeinfo_print_short): Likewise.
+
+2006-09-05 11:16  edwin
+
+       * src/vm/builtin.h (builtintable_replace_function): Ported to new
+       instruction format.
+       * src/vm/builtin.c (builtintable_replace_function): Likewise.
+
+2006-09-05 11:13  edwin
+
+       * src/vm/jit/show.c (new_show_variable_array): New function.
+       (new_show_method): Fixed calculation of lastbptr.
+       Only show code lengths if stage >= SHOW_CODE.
+
+2006-09-05 10:52  edwin
+
+       * src/vm/resolve.h: Removed code for old instruction format.
+       * src/vm/resolve.c: Likewise.
+
+2006-09-05 10:47  edwin
+
+       * src/vm/jit/allocator/simplereg.h: Removed code for old instruction
+       format.
+       * src/vm/jit/allocator/simplereg.c: Likewise.
+
+2006-09-05 10:44  edwin
+
+       * src/vm/jit/show.h: Removed code for old instruction format.
+       * src/vm/jit/show.c: Likewise.
+
+2006-09-05 10:39  edwin
+
+       * src/vm/jit/stack.h: Removed code for old instruction format.
+       * src/vm/jit/stack.c: Likewise.
+
+2006-09-05 10:37  edwin
+
+       * src/vm/jit/parse.h: Removed code for old instruction format.
+       * src/vm/jit/parse.c: Likewise.
+
+2006-09-05 10:20  edwin
+
+       Branch for porting the new instruction format.
+
+2006-09-05 10:15  twisti
+
+       * src/vm/jit/i386/Makefile.am (noinst_HEADERS): Removed
+       icmd_uses_reg_res.inc.
+
+2006-09-05 10:10  twisti
+
+       * src/vm/jit/i386/icmd_uses_reg_res.inc: Removed.
+
+2006-09-05 10:09  edwin
+
+       * src/vm/jit/x86_64/codegen.h (ICONST): Fix this macro so it properly
+       uses its arguments.
+       (LCONST): Likewise.
+
+2006-09-05 10:04  twisti
+
+       * src/tests/Howdy.java: Removed.
+
+2006-09-05 10:03  twisti
+
+       * src/vm/jit/x86_64/codegen.c (codegen): Use cd->stackframesize
+       instead of stackframesize (bugfix).
+       (createnativestub): Likewise.
+
+2006-09-05 09:59  edwin
+
+       * src/vm/jit/codegen-common.h (codegen_reg_of_dst): New function.
+       * src/vm/jit/codegen-common.c (codegen_reg_of_dst): Likewise.
+       Right now this duplicates codegen_reg_of_var's body. We should
+       probably make one of these functions inline the other.
+
+2006-09-05 00:12  edwin
+
+       * src/vm/jit/ifconv/ifconv.c (ifconv_static): Deactivated
+       show_basicblock calls that will become a problem when code for the
+       old instruction format is removed.
+       (check): Likewise.
+
+2006-09-05 00:02  edwin
+
+       * src/vm/resolve.c (resolve_field): new_resolve_field_verifier_checks
+       used instead of the old function that will be removed soon.
+       (resolve_method): Use new_resolve_method_verifier_checks instead of
+       the
+       old function that will be removed soon.
+       (new_resolve_method_verifier_checks): Port handling of
+       TYPEINFO_IS_NEWOBJECT.
+       (new_resolve_method_verifier_checks): Likewise.
+       (new_constrain_unresolved_field): Likewise.
+       (new_constrain_unresolved_method): Likewise.
+
+2006-09-04 23:24  edwin
+
+       * src/vm/jit/parse.c (new_parse): Changed leftover "OP" macro uses
+       to "NEW_OP".
+
+2006-09-04 17:45  twisti
+
+       * src/vm/jit/mips/emit.c (config.h): Added.
+       [ENABLE_THREADS] (threads/native/lock.h): Likewise.
+       (vm/exceptions.h): Likewise.
+       (vm/stringlocal.h): Likewise.
+       (vm/jit/asmpart.h): Likewise.
+       (vm/jit/dseg.h): Likewise.
+       (vm/jit/replace.h): Likewise.
+       (emit_exception_stubs): New method.
+       (emit_patcher_stubs): Likewise.
+       (emit_replacement_stubs): Likewise.
+       
+       * src/vm/jit/mips/codegen.c (codegen): Use cd->stackframesize instead
+       of stackframesize, use emit functions to generate stubs and call trace
+       code.
+       (createnativestub): Likewise.
+
+2006-09-04 17:12  christian
+
+       * src/vm/jit/alpha/patcher.c (patcher_wrapper): Patch back machine
+       code.
+       (patcher_aconst): Renamed to patcher_resolve_classref_to_classinfo.
+       (patcher_clinit): Renamed to patcher_initialize_class.
+       (patcher_resolve_native): Renamed to patcher_resolve_native_function.
+       (patcher_athrow_areturn): Renamed to patcher_resolve_class.
+       (patcher_checkcast_instanceof_class): Renamed to
+       patcher_resolve_classref_to_vftbl.
+       (patcher_checkcast_instanceof_flags): Renamed to
+       patcher_resolve_classref_to_flags.
+       (patcher_builtin_multianewarray): Removed.
+       (patcher_builtin_arraycheckcast): Likewise.
+       
+       * src/vm/jit/alpha/codegen.c (codegen): Use new patcher functions.
+
+2006-09-04 16:33  twisti
+
+       * src/vm/jit/alpha/emit.c (vm/builtin.h): Added.
+       (vm/jit/abi-asm.h): Likewise.
+       (vm/jit/replace.h): Likewise.
+       (emit_verbosecall_enter): New method.
+       (emit_verbosecall_exit): Likewise.
+       
+       * src/vm/jit/alpha/codegen.c (codegen): Use emit functions to generate
+       call trace code.
+       (createnativestub): Likewise.
+
+2006-09-04 15:48  twisti
+
+       * src/vm/jit/powerpc/emit.c (config.h): Added.
+       [ENABLE_THREADS] (threads/native/lock.h): Likewise.
+       (vm/builtin.h): Likewise.
+       (vm/jit/abi-asm.h): Likewise.
+       (vm/jit/asmpart.h): Likewise.
+       (vm/jit/replace.h): Likewise.
+       (emit_exception_stubs): New method.
+       (emit_patcher_stubs): Likewise.
+       (emit_replacement_stubs): Likewise.
+       (emit_verbosecall_enter): Likewise.
+       (emit_verbosecall_exit): Likewise.
+       
+       * src/vm/jit/powerpc/codegen.c (codegen): Use emit functions to
+       generate stubs and call trace code.
+       (createnativestub): Likewise.
+
+2006-09-04 14:21  twisti
+
+       * src/vm/jit/powerpc/asmpart.S (asm_call_jit_compiler): We don't save
+       an argument on the stack anymore, offsets adjusted.
+       (asm_handle_exception): Use md_codegen_get_pv_from_pc instead of
+       assembler code and temporary variables as on other RISC architectures.
+
+2006-09-04 12:38  tbfg
+
+       * src/vm/jit/powerpc64/emit.c (emit_verbosecall_enter): Fixed off
+       by one stackslot overwrite some stuff bug.
+       
+       * src/vm/jit/powerpc64/codegen.c (codegen): Fix parameter passing
+       in.
+
+2006-09-02 14:26  tbfg
+
+       * src/vm/jit/powerpc64/arch.h: Reenabled platfrom features.
+       
+       * src/vm/jit/powerpc64/codegen.c (codegen): Fixed native calls.
+       (createnativestub): Likewise.
+
+2006-08-31 19:58  tbfg
+
+       * srv/vm/jit/powerpc64/asmpart.S (asm_vm_call_method): Fixed argument
+       handling.
+
+2006-08-31 13:32  tbfg
+
+       * src/vm/jit/powerpc64/emit.c (emit_verbosecall_enter): Moved from
+       codegen.c refactored into function, and made it work.
+       (emit_verbosecall_exit): Likewise.
+       
+       * src/vm/jit/powerpc64/codegen.c (codegen_trace_args): Moved into
+       emit.c and renamed it to emit_verbosecall_enter.
+       (codegen): Using emit_verbosecall_* instead of inline code, and
+       various fixes to make verbose:call work.
+       (createnativestub): Likewise.
+
+2006-08-28 19:31  tbfg
+
+       * src/vm/jit/powerpc64/linux/md-abi.h: New REG_TOC name needed to
+       call builtins due to ppc64 function descriptors (ELF ABI).
+       
+       * src/vm/jit/powerpc64/codegen.c (createnativestub): Big endian
+       requires M_LLD and M_IST to copy s4 values from dseg to stack.
+       (codegen): gen_method needs to create function descriptor call.
+       
+       * src/vm/jit/powerpc64/asmpart.S: When linking statically
+       non function descriptor calls are generated by compiler.
+       Some ifdefs added to fix static linking.
+
+2006-08-28 15:18  twisti
+
+       * src/vm/jit/patcher.h (patcher_resolve_class): Added.
+       (patcher_initialize_class): Likewise.
+       (patcher_resolve_classref_to_classinfo): Likewise.
+       (patcher_resolve_classref_to_vftbl): Likewise.
+       (patcher_resolve_classref_to_flags): Likewise.
+       (patcher_resolve_native_function): Likewise.
+       
+       * src/vm/jit/powerpc/patcher.c (patcher_wrapper): Patch back machine
+       code.
+       (patcher_aconst): Renamed to patcher_resolve_classref_to_classinfo.
+       (patcher_clinit): Renamed to patcher_initialize_class.
+       (patcher_resolve_native): Renamed to patcher_resolve_native_function.
+       (patcher_athrow_areturn): Renamed to patcher_resolve_class.
+       (patcher_checkcast_class): Renamed to
+       patcher_resolve_classref_to_vftbl.
+       (patcher_checkcast_instanceof_flags): Renamed to
+       patcher_resolve_classref_to_flags.
+       (patcher_builtin_multianewarray): Removed.
+       (patcher_builtin_arraycheckcast): Likewise.
+       (patcher_instanceof_class): Likewise.
+       
+       * src/vm/jit/powerpc/codegen.c (codegen): Use new patcher functions
+       (some of them were already commited accidentally in the last commit).
+
+2006-08-28 13:05  twisti
+
+       * src/vm/jit/emit.h (emit_verbosecall_enter): Added.
+       (emit_verbosecall_exit): Likewise.
+       
+       * src/vm/jit/powerpc/emit.c (vm/builtin.h): Added.
+       (vm/jit/asmpart.h): Likewise.
+       (vm/jit/replace.h): Likewise.
+       (emit_exception_stubs): New method.
+       (emit_patcher_stubs): Likewise.
+       (emit_replacement_stubs): Likewise.
+       (emit_verbosecall_enter): Likewise.
+       (emit_verbosecall_exit): Likewise.
+       
+       * src/vm/jit/powerpc/codegen.c (vm/jit/abi-asm.h): Added.
+       (codegen_trace_args): Removed.
+       (codegen): Use cd->stackframesize instead of stackframesize, use emit
+       functions to generate stubs and call trace code.
+       (createnativestub): Likewise.
+
+2006-08-25 11:55  tbfg
+
+       * src/vm/jit/show.c (show_method): Stubs are printed green when
+       using -debug-color.
+       
+       * src/vm/jit/powerpc64/linux/md-os.c (md_signal_handler_sigusr2):
+       Moved into #ifdef ENABLE_THREADS conditional compile, as it depends
+       on threadobject.
+       
+       * src/vm/jit/powerpc64/codegen.h: Added M_LADD_IMM and M_AADD_IMM
+       for better reading of code. Fixed M_CLR.
+       
+       * src/vm/jit/powerpc64/codegen.c (codegen): Some fixes with ?RETURN,
+       some fixes for -verbose:call (still defunc),
+       (createnativestub): Lots of fixes in stackframe calculations.
+       
+       * src/vm/jit/powerpc64/patcher.c (patch_aconst): Correct asm comment.
+       
+       * src/vm/jit/powerpc64/disass.c (disassinstr): Display 64 bit
+       addresses in disassembled code (-sa).
+       
+       * src/vm/jit/powerpc64/asmpart.S (L_asm_vm_call_method_return):
+       Fixed path for methods returning a value.
+       (L_asm_handle_exception): Fixed path for exception handling.
+       (asm_patcher_wrapper): Fixed path for codepatching.
+
+2006-08-25 07:54  twisti
+
+       * src/vm/exceptions.c (new_illegalmonitorstateexception): Renamed to
+       exceptions_new_illegalmonitorstateexception.
+       (exceptions_throw_illegalmonitorstateexception): New method.
+       * src/vm/exceptions.h: Likewise.
+       
+       * src/threads/native/lock.c (lock_monitor_exit): Use
+       exceptions_throw_illegalmonitorstateexception instead of
+       new_illegalmonitorstateexception.
+       (lock_monitor_wait): Likewise.
+       (lock_monitor_notify): Likewise.
+       
+       * src/cacaoh/headers.c (new_illegalmonitorstateexception): Renamed to
+       exceptions_throw_illegalmonitorstateexception.
+
+2006-08-25 07:29  twisti
+
+       * src/vm/jit/alpha/emit.c (emit_exception_stubs): Bugfix when
+       reallocating the code area.
+       (emit_patcher_stubs): Reuse the asm_patcher_wrapper call code.
+       (emit_replacement_stubs): Removed savedmcodeptr.
+
+2006-08-25 07:14  twisti
+
+       * src/vm/jit/alpha/emit.c (emit_exception_stubs): Bugfix when
+       reallocating the code area.
+       (emit_patcher_stubs): Likewise.
+
+2006-08-24 18:42  twisti
+
+       * src/vm/jit/codegen-common.h (codegendata): Added stackframesize. I
+       think this is more obvious than in jitdata.
+       
+       * src/vm/jit/jit.h (jitdata): Removed stackframesize.
+       
+       * src/vm/jit/alpha/emit.c (emit_exception_stubs): Replaced
+       jd->stackframesize with cd->stackframesize.
+       
+       * src/vm/jit/alpha/codegen.c (codegen): Likewise.
+       (createnativestub): Likewise.
+       
+       * src/vm/jit/i386/emit.c (emit_exception_stubs): Likewise.
+       
+       * src/vm/jit/i386/codegen.c (codegen): Likewise.
+       (createnativestub): Likewise.
+
+2006-08-24 09:29  tbfg
+
+       srv/vm/jit/powerpc/linux/md-os.c (md_signal_handler_sigusr2): Moved
+       inside
+       ENABLE_THREADS ifdef as is depends on threads.
+
+2006-08-23 16:04  twisti
+
+       * src/vm/jit/alpha/emit.c [ENABLE_THREADS] (threads/native/lock.h):
+       Added.
+       (vm/jit/asmpart.h): Likewise.
+       (vm/jit/dseg.h): Likewise.
+       (emit_exception_stubs): New function.
+       (emit_patcher_stubs): Likewise.
+       (emit_replacement_stubs): Likewise.
+       
+       * src/vm/jit/i386/codegen.c (codegen): Use jd->stackframesize, removed
+       stub generation code.
+       (createnativestub): Likewise.
+
+2006-08-23 15:55  twisti
+
+       * src/vm/jit/alpha/asmpart.S (asm_handle_exception): Fixed bug with
+       maybe-leaf stack and use same registers as on MIPS.
+
+2006-08-23 15:45  twisti
+
+       * src/vm/jit/alpha/asmpart.S (asm_handle_exception): Use
+       md_codegen_get_pv_from_pc.
+
+2006-08-23 15:10  twisti
+
+       * src/vm/jit/mips/asmpart.S (asm_handle_exception): Changed some
+       comments.
+
+2006-08-23 14:55  twisti
+
+       * src/vm/jit/alpha/asmpart.S (L_asm_handle_exception_stack_loop):
+       Don't save xpc.
+
+2006-08-23 14:23  twisti
+
+       * src/boehm-gc/configure.in (AC_C_INLINE): Set CFLAGS properly before.
+
+2006-08-23 14:07  twisti
+
+       * configure.ac (AC_CONFIG_SUBDIRS): Moved to the end of the file and
+       export OPT_CFLAGS/ARCH_CFLAGS instead of CFLAGS.
+       
+       * src/boehm-gc/configure.in: Pass CFLAGS to Makefile's as for CACAO.
+       * src/boehm-gc/Makefile.am (AM_CXXFLAGS, AM_CFLAGS): Commented.
+       (AM_CPPFLAGS): Added.
+
+2006-08-23 12:57  twisti
+
+       * src/vm/jit/alpha/emit.c (config.h): Added.
+       [ENABLE_THREADS] (threads/native/lock.h): Likewise.
+       (vm/jit/asmpart.h): Likewise.
+       (vm/jit/dseg.h): Likewise.
+       (emit_exception_stubs): New function.
+       (emit_patcher_stubs): Likewise.
+       (emit_replacement_stubs): Likewise.
+       
+       * src/vm/jit/alpha/codegen.c (codegen): Use jd->stackframesize, use
+       new desg_add_* functions, removed stub generation code.
+       (createnativestub): Likewise.
+
+2006-08-23 12:29  twisti
+
+       * src/vm/vm.c (OPT_ALL, OPT_METHOD, OPT_SIGNATURE): #ifndef NDEBUG.
+       (usage): Don't print -all, -m, -sig options.
+
+2006-08-23 12:12  twisti
+
+       * src/vm/jit/emit.h (emit_replacement_stubs): Added.
+
+2006-08-22 20:48  twisti
+
+       * src/vm/jit/i386/md-emit.h (vm/jit/codegen-common.h): Added.
+
+2006-08-22 19:53  twisti
+
+       * src/vm/jit/emit.h (emit_exception_stubs): Added.
+       (emit_patcher_stubs): Likewise.
+       
+       * src/vm/jit/jit.h (jitdata): Added member stackframesize.
+
+2006-08-22 15:49  tbfg
+
+       * src/vm/jit/powerpc64/linux/md-abi.h: Added PA_SIZE and
+       PA_SIZE_IN_POINTERS defines.
+       
+       * src/vm/jit/powerpc64/arch.h: Enabled machine dependend
+       compare_and_swap implementation for ppc64.
+       
+       * src/vm/jit/powerpc64/codegen.c (codegen): Remove lot of PACK_REGS
+       usages, changed stack address calculations from *4 -> *8, added
+       a M_NOP for debugging.
+       
+       * src/vm/jit/powerpc64/machine-instr.h (compare_and_swap): Ported
+       for 64 bit.
+       (atomic_add): Removed.
+       
+       * src/vm/jit/powerpc64/patcher.c (patcher_wrapper): Fixed stack
+       calculations from *4 -> *8
+       (patcher_aconst): Likewise.
+       (patcher_athrow_areturn): Likewise.
+       (patcher_builtin_arraycheckcast): Likewise.
+       (patcher_builtin_multianewarray): Likewise.
+       (patcher_checkcast_class): Likewise.
+       (patcher_checkcast_instanceof_flags): Likewise.
+       (patcher_checkcast_instanceof_interf): Likewise.
+       (patcher_clinit): Likewise.
+       (patcher_get_putfield): Likewise.
+       (patcher_get_putstatic): Likewise.
+       (patcher_instanceof_class): Likewise.
+       (patcher_invokeinterface): Likewise.
+       (patcher_invokestatic_special): Likewise.
+       (patcher_invokevirtual): Likewise.
+       (patcher_resolve_native): Likewise.
+       
+       * src/vm/jit/powerpc64/asmpart.S (asm_patcher_wrapper): Fixed
+       calling convetions, as we callback C. Fixed 32 bit issues.
+       (asm_call_jit_compiler): PPC64 has additional PA_SIZE
+       on stack - fixed that.
+
+2006-08-22 14:39  twisti
+
+       * src/native/vm/java_lang_VMThrowable.c (fillInStackTrace): Removed
+       architecture #ifdef's.
+       (getStackTrace): Likewise.
+
+2006-08-22 12:43  twisti
+
+       * src/native/native.c (dummynativetable): Made non-static, GCC 4.1
+       optimized the table away.
+       (native_init): Removed dummynativetable-hack.
+
+2006-08-22 09:02  tbfg
+
+       * src/vm/options.h: Renamed -verbosecolor to -debug-color,
+       opt_colorverbose to opt_debugcolor and OPT_COLORVERBOSE to
+       OPT_DEBUGCOLOR
+       * src/vm/method.c: Same as above.
+       * src/vm/jit/dseg.c: Same as above.
+       * src/vm/vm.c: Same as above.
+       * src/vm/options.c: Same as above.
+       * src/vm/jit/Makefile.am: Removed options.h dependecy, as deps are
+       tracked automatically.
+
+2006-08-21 17:37  twisti
+
+       * src/lib/vm/reference/gnu/classpath/VMStackWalker.java
+       (firstNonNullClassLoader): Added and made native.
+       
+       * src/native/vm/gnu_classpath_VMStackWalker.c (getClassContext):
+       Removed architecture #ifdef's, as most stacktrace stuff is
+       architecture independent and the dependent stuff is very simple to
+       implement.
+       (getCallingClass): Likewise.
+       (getCallingClassLoader): Likewise.
+       (firstNonNullClassLoader): Added.
+
+2006-08-21 15:25  twisti
+
+       * src/vm/jit/i386/asmpart.S (L_asm_patcher_wrapper_exception): Removed
+       duplicate add line.
+
+2006-08-21 15:17  twisti
+
+       * configure.ac (AC_CONFIG_FILES): Added
+       src/vm/jit/i386/darwin/Makefile.
+       
+       * src/vm/jit/i386/codegen.c (createnativestub): Align stack to
+       16-bytes.
+       
+       * src/vm/jit/i386/darwin/md-os.c: Darwin specific functions.
+       * src/vm/jit/i386/darwin/md-asm.h: Darwin specific assembler defines.
+       * src/vm/jit/i386/darwin/Makefile.am: New file.
+       * src/vm/jit/i386/darwin/.cvsignore: Likewise.
+       
+       * src/vm/jit/i386/linux/md-asm.h: Linux specific assembler defines.
+       * src/vm/jit/i386/freebsd/md-asm.h: FreeBSD specific assembler
+       defines.
+       
+       * src/vm/jit/i386/md-asm.h: Removed.
+       
+       * src/vm/jit/i386/asmpart.S (asm_handle_exception): Align stack to
+       16-bytes.
+       (asm_abstractmethoderror): Likewise.
+       (asm_patcher_wrapper): Likewise.
+       (asm_builtin_f2i, asm_builtin_d2i, asm_builtin_f2l, asm_builtin_d2l):
+       Likewise.
+       
+       * src/vm/jit/i386/Makefile.am (DIST_SUBDIRS): Added darwin.
+       (AM_CPPFLAGS): Added OS_DIR as include.
+       (noinst_HEADERS): Removed md-asm.h.
+       
+       * src/threads/native/threads.c (threads_cast_darwinstop): Use generic
+       defines and machine dependent structures.
+
+2006-08-21 14:52  twisti
+
+       * src/vm/jit/powerpc/darwin/md-asm.h (asm_initialize_thread_stack):
+       Define removed.
+       (asm_perform_threadswitch): Likewise.
+       (asm_switchstackandcall): Likewise.
+
+2006-08-18 18:37  tbfg
+
+       src/vm/options.h: Added the commandlineswitch --verbosecolor which
+       enables
+       colored output of show: -si prints method names in red -sd shows
+       datasegment
+       dump in blue. (use | less -R)
+       
+       src/vm/options.c (options_get): There is a nasty bug in there, read
+       comment.
+
+2006-08-18 13:07  twisti
+
+       * src/toolbox/util.c (util_current_time_millis): Removed.
+       * src/toolbox/util.h: Likewise.
+       
+       * src/vm/vm.c (vm_create): Use builtin_currenttimemillis instead of
+       util_current_time_millis.
+
+2006-08-18 13:01  twisti
+
+       * src/vm/exceptions.c (new_arraystoreexception): Renamed to
+       exceptions_new_arraystoreexception.
+       (exceptions_throw_arraystoreexception): New function.
+       * src/vm/exceptions.h: Likewise.
+       
+       * src/vm/builtin.c (builtintable_init): Reimplemented and added
+       builtintable_function.
+       (builtintable_replace_function): New function.
+       (builtin_arraycopy): Likewise.
+       (builtin_currenttimemillis): Likewise.
+       
+       * src/vm/builtin.h (builtintable_entry): Added some extra members.
+       (builtin_asm_get_exceptionptrptr): Removed.
+       (builtintable_replace_function): Added.
+       (builtin_arraycopy): Likewise.
+       (builtin_currenttimemillis): Likewise.
+       
+       * src/vm/builtintable.inc (builtintable_internal): Use new
+       builtintable_entry structure.
+       (builtintable_automatic): Likewise.
+       (builtintable_function): Added.
+       
+       * src/vm/jit/stack.c (stack_analyse): Call
+       builtintable_replace_function.
+       
+       * src/vm/jit/show.c (new_show_icmd): Print correct variable of builtin
+       calls.
+       (show_icmd): Likewise.
+       
+       * src/vm/jit/stacktrace.c (stacktrace_inline_arraystoreexception): Use
+       exceptions_new_arraystoreexception.
+       
+       * src/native/vm/java_lang_VMSystem.c (arraycopy): Removed
+       implementation and use builtin_arraycopy.
+       
+       * src/cacaoh/headers.c
+       (exceptions_throw_arrayindexoutofboundsexception): Added.
+       (exceptions_new_arraystoreexception): Likewise.
+       (exceptions_throw_arraystoreexception): Likewise.
+
+2006-08-18 12:24  twisti
+
+       * src/vm/class.c (class_java_lang_VMSystem): Added.
+       * src/vm/class.h: Likewise.
+       * src/vm/loader.c (loader_init): Likewise.
+       * src/vm/linker.c (linker_init): Likewise.
+
+2006-08-18 10:22  tbfg
+
+       src/vm/jit/powerpc64/linux/md-os.c: Ported signal handlers to ppc64
+       ucontext.
+
+2006-08-17 17:51  tbfg
+
+       src/vm/jit/powerpc64/md.c (md_get_method_patch_address): Fixed
+       opcodes in
+       casetests.
+       
+       src/vm/jit/powerpc64/arch.h: Temporarily disabled all hardwarefeaturs
+       to
+       make porting easier.
+       
+       src/vm/jit/powerpc64/codegen.c: Started to fix 32/64 bit issues.
+       
+       src/vm/jit/powerpc64/codegen.h: Removing special long handling.
+       
+       src/vm/jit/powerpc64/patcher.c: Changed comment only.
+
+2006-08-17 09:59  twisti
+
+       * src/vm/jit/i386/asmpart.S (asm_patcher_wrapper): Restore REG_ITMP3
+       from stub stack. I missed this when I did the last changes.
+
+2006-08-17 09:26  twisti
+
+       * src/vm/jit/optimizing: Added ignore property.
+
+2006-08-16 15:35  christian
+
+       * src/vm/jit/optimizing/.cvsignore: New file.
+
+2006-08-16 12:21  christian
+
+       * src/vm/jit/stack.c (stack_analyse): Use of real PEI data
+       (op_data[opcode][PEI]) to prevent copy propagation to LOCALVAR with
+       ICMD_XSTORE instead of just regarding INVOKES as PEI's.
+
+2006-08-16 12:11  christian
+
+       * src/toolbox/worklist.h: Comments added.
+
+2006-08-16 12:10  christian
+
+       * src/toolbox/bitvector.c: Comments added.
+       
+       * src/toolbox/bitvector.h: Comments added.
+       
+       * src/toolbox/worklist.c: Comments added.
+
+2006-08-16 11:35  christian
+
+       * src/toolbox/worklist.c: Corrected Header information.
+       
+       * src/toolbox/worklist.h: Likewise.
+       
+       * src/toolbox/bitvector.c: Likewise.
+       
+       * src/toolbox/bitvector.h: Likewise.
+
+2006-08-16 11:31  christian
+
+       * src/vm/jit/allocator/liveness.c: Corrected Header information.
+       
+       * src/vm/jit/allocator/liveness.h: Likewise.
+       
+       * src/vm/jit/allocator/lsra.c: Likewise.
+       
+       * src/vm/jit/allocator/lsra.h: Likewise.
+
+2006-08-16 11:26  christian
+
+       * src/vm/jit/optimizing/dominators.c: Corrected Header information.
+       
+       * src/vm/jit/optimizing/dominators.h: Likewise.
+       
+       * src/vm/jit/optimizing/graph.c: Likewise.
+       
+       * src/vm/jit/optimizing/graph.h: Likewise.
+       
+       * src/vm/jit/optimizing/lifetimes.c: Likewise.
+       
+       * src/vm/jit/optimizing/lifetimes.h: Likewise.
+       
+       * src/vm/jit/optimizing/lsra.c: Likewise.
+       
+       * src/vm/jit/optimizing/lsra.h: Likewise.
+       
+       * src/vm/jit/optimizing/ssa.c: Likewise.
+       
+       * src/vm/jit/optimizing/ssa.h: Likewise.
+
+2006-08-16 11:18  christian
+
+       * src/vm/jit/optimizing/ssa.c (ssa_print_phi): Printing now phi
+       functions correctly for debug output.
+       
+       * src/vm/jit/optimizing/ssa.c (dead_code_elimination): No removal of
+       potential exception throwing instructions (PEI) anymore.
+       
+       * src/vm/jit/jit.h: Renamed op_needs_saved[] to op_data[][NEEDS_SAVED]
+       and introduced the new op_data[][PEI].
+       
+       * src/vm/jit/jit.c (jit_init): Added init of op_data[NEEDS_SAVED|PEI]
+       
+       * src/vm/jit/optimizing/lifetimes.c (LifeOutAtStatement): Renamed
+       op_needs_saved[] to the new op_data[][NEEDS_SAVED]
+
+2006-08-15 14:54  christian
+
+       * src/vm/jit/optimizing/lifetimes.c (LifenessAnalysis): Ignore
+       variables used in phi functions, if they define itself (x =
+       phi(...,x,...)).
+       
+       * src/vm/jit/i386/codegen.c (codegen): Bugfix in code created for
+       ICMD_IINC for SSA.
+       
+       * src/vm/jit/show.c (new_show_method): Regard ENABLE_SSA like
+       ENABLE_LSRA to suppress output of interfaces.
+       
+       * src/vm/jit/show.c (show_method): likewise.
+       
+       * src/vm/jit/show.c (show_icmd): Regard special operand format for
+       ICMD_IINC with SSA.
+
+2006-08-14 18:14  christian
+
+       * src/vm/jit/optimizing/: New directory for optimizing compiler (SSA
+       by now - does not work by now, code merging with svn head introduced
+       some hazardous faults).
+       
+       * src/vm/jit/optimizing/dominators.c: Computation of dominators and
+       domination frontier for SSA.
+       
+       * src/vm/jit/optimizing/dominators.h: Include file for dominators.c.
+       
+       * src/vm/jit/optimizing/graph.c: CFG functions needed for SSA.
+       
+       * src/vm/jit/optimizing/graph.h: Include file for graph.c
+       
+       * src/vm/jit/optimizing/lifetimes.c: Scanning lifetimes for SSA.
+       
+       * src/vm/jit/optimizing/lifetimes.h: Include file for lifetimes.c
+       
+       * src/vm/jit/optimizing/lsra.c: LSRA based on SSA.
+       
+       * src/vm/jit/optimizing/lsra.h: Include file for lsra.c.
+       
+       * src/vm/jit/optimizing/Makefile.am: New Makefile.am for this
+       directory.
+       
+       * src/vm/jit/optimizing/ssa.c: Computation of SSA form.
+       
+       * src/vm/jit/optimizing/ssa.h: Include File for ssa.c.
+
+2006-08-14 18:10  christian
+
+       * src/vm/jit/optimizing: New directory
+
+2006-08-14 17:50  christian
+
+       * src/vm/jit/optimizing/: New directory for optimizing compiler (SSA
+       by now - does not work by now, code merging with svn head introduced
+       some hazardous faults).
+       
+       * src/vm/jit/optimizing/dominators.c: Computation of dominators and
+       domination frontier for SSA.
+       
+       * src/vm/jit/optimizing/dominators.h: Include file for dominators.c.
+       
+       * src/vm/jit/optimizing/graph.c: CFG functions needed for SSA.
+       
+       * src/vm/jit/optimizing/graph.h: Include file for graph.c
+       
+       * src/vm/jit/optimizing/lifetimes.c: Scanning lifetimes for SSA.
+       
+       * src/vm/jit/optimizing/lifetimes.h: Include file for lifetimes.c
+       
+       * src/vm/jit/optimizing/lsra.c: LSRA based on SSA.
+       
+       * src/vm/jit/optimizing/lsra.h: Include file for lsra.c.
+       
+       * src/vm/jit/optimizing/Makefile.am: New Makefile.am for this
+       directory.
+       
+       * src/vm/jit/optimizing/ssa.c: Computation of SSA form.
+       
+       * src/vm/jit/optimizing/ssa.h: Include File for ssa.c.
+       
+       * src/vm/jit/allocator/lsra.c: Moved from src/vm/jit. Quite complete
+       code change (including: no more allocation of unused reserved
+       registers, possibility of exact lifetime analysis, removal of old
+       lifetime test functions).
+       
+       * src/vm/jit/allocator/lsra.h: Moved from src/vm/jit.
+       
+       * src/vm/jit/allocator/liveness.c: New File. Exact lifetime analysis
+       for LSRA.
+       
+       * src/vm/jit/allocator/liveness.h: New File. Include File for
+       liveness.c. The #define LV enables by now the exact liveness analysis.
+       
+       * src/vm/jit/allocator/Makefile.am: Adopted for new/moved files in
+       src/vm/jit/allocator.
+       
+       * sc/vm/jit/Makefile.am: Adopted for above new/moved files.
+       
+       * configure.ac: Introduced ENABLE_SSA: new option --enable-ssa.
+       Changes for ENABLE_LSRA (--enable-lsra). New Makefile in
+       src/vm/jit/optimizing added.
+       
+       * src/vm/jit/allocator/simplereg.c (reg_make_statistics): Support for
+       ENABLE_SSA for statistics.
+       
+       * src/vm/options.h: opt_lsra is used with ENABLE_SSA like with
+       ENABLE_LSRA.
+       
+       * src/vm/options.c: opt_lsra is used with ENABLE_SSA like with
+       ENABLE_LSRA.
+       
+       * src/vm/global.h: New struct imm for union imm_union to get another
+       operand for IINC in combination with SSA added.
+       
+       * src/vm/vm.c: opt_lsra and the option -lsra is used with ENABLE_SSA
+       like with ENABLE_LSRA.
+       
+       * src/vm/jit/stack.c (stack_analyse): No stack element lifetimes
+       counting anymore for lsra/ssa (m->maxlifetimes).
+       
+       * src/vm/jit/stack.h: No stack lifetime counting anymore for lsra/ssa
+       (m->maxlifetimes).
+       
+       * src/vm/jit/i386/codegen.c: Support for ENABLE_SSA added.
+       
+       * src/vm/jit/i386/codegen.c (codegen_insert_phi_moves): New function
+       to insert phi moves for SSA at the end of Basic Blocks.
+       
+       * src/vm/jit/i386/codegen.c (cg_move): New function to create the
+       instructions for the actual move for codegen_insert_phi_moves).
+       
+       * src/vm/jit/i386/codegen.c (codegen): Logic and calls to use
+       codegen_insert_phi_moves for SSA added. With SSA for parameters in
+       memory this memory positions cannot be reused to avoid copying. Checks
+       added to prevent moves to or from stackslots removed by the dead code
+       elimination. Special handling for the new ICMD_IINC operand format
+       used by SSA added.
+       
+       * src/vm/jit/i386/codegen.h (M_COPY): Checks added to prevent moves to
+       or from stackslots removed by the dead code elimination. Original
+       M_COPY renamed to _M_COPY.
+       
+       * src/vm/jit/jit.c (jit_init): Populate op_needs_saved. Regard
+       ENABLE_SSA.
+       
+       * src/vm/jit/jit.h: Support for ENABLE_SSA added. Added an array which
+       shows which ICMD's need a SAVEDVAR for SSA and the new LSRA with exact
+       liveness analysis. src/toolbox/Makefile.am: Changed to include the
+       following new files:
+       
+       * src/toolbox/bitvector.c: Bitvector implementation for SSA.
+       
+       * src/toolbox/bitvector.h: Include file for bitvector.c.
+       
+       * src/toolbox/worklist.c: Worklist implementation for SSA.
+       
+       * src/toolbox/worklist.h: Include file for worklist.c.
+
+2006-08-14 10:59  twisti
+
+       * src/vm/jit/codegen-common.c (codegen_findmethod): Renamed to
+       codegen_get_pv_from_pc.
+       
+       * src/vm/jit/codegen-common.h (codegen_findmethod): Likewise.
+       (md_codegen_findmethod): Renamed to md_codegen_get_pv_from_pc.
+       
+       * src/vm/jit/stacktrace.c (stacktrace_create_stackframeinfo):
+       Likewise.
+       (stacktrace_create_inline_stackframeinfo): Likewise.
+       (stacktrace_create_extern_stackframe): Likewise.
+       (stacktrace_create): Likewise.
+       
+       * src/vm/jit/alpha/md.c (md_codegen_findmethod): Renamed to
+       md_codegen_get_pv_from_pc.
+       * src/vm/jit/i386/md.c: Likewise.
+       * src/vm/jit/mips/md.c: Likewise.
+       * src/vm/jit/powerpc/md.c: Likewise.
+       * src/vm/jit/powerpc64/md.c: Likewise.
+       * src/vm/jit/sparc64/md.c: Likewise.
+       * src/vm/jit/x86_64/md.c: 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/x86_64/asmpart.S: Likewise.
+       * src/vm/jit/intrp/asmpart.c: Likewise.
+       
+       * src/vm/jit/i386/patcher.c (patcher_wrapper): Fixed comment.
+       * src/vm/jit/x86_64/patcher.c: Likewise.
+
+2006-08-11 13:11  tbfg
+
+       * src/vm/jit/powerpc64/linux/md-abi.h: LA_WORD_SIZE renamed to
+       LA_SIZE_IN_POINTERS, value fixed
+       * src/vm/jit/powerpc64/linux/md-abi.c: LA_SIZE_IN_POINTERS rename
+       * src/vm/jit/powerpc64/linux/md.c (md_codegen_findmethod): PPC64 uses
+       r14
+       instead of r13 (as PPC) for PV so opcodes changed.
+       * src/vm/jit/powerpc64/asmpart.S: Using LA_SIZE instead of
+       LA_WORD_SIZE,
+       LA_SIZE_IN_POINTERS for SAVE_*_REGISTERS macros only.
+
+2006-08-11 10:13  twisti
+
+       * src/vm/jit/powerpc/linux/md-abi.h (LA_WORD_SIZE): Renamed to
+       LA_SIZE_IN_POINTERS.
+       
+       * src/vm/jit/powerpc/darwin/md-abi.h (LA_WORD_SIZE): Likewise.
+       
+       * src/vm/jit/powerpc/linux/md-abi.c (md_param_alloc): Use
+       LA_SIZE_IN_POINTERS instead of LA_WORD_SIZE.
+       
+       * src/vm/jit/powerpc/darwin/md-abi.c (md_param_alloc): Likewise.
+       
+       * src/vm/jit/powerpc/asmpart.S: Likewise.
+       
+       * src/vm/jit/stack.c (new_stack_analyse): Likewise.
+       (stack_analyse): Likewise.
+       
+       * src/vm/jit/reg.c (reg_setup): Likewise.
+
+2006-08-10 19:45  tbfg
+
+       * src/vm/jit/powerpc64/linux/md-abi.h: fixed linkage area defines for
+       64bit abi.
+       * src/vm/jit/powerpc64/linux/md-asm.h: fixed register name defines
+       and
+       SAVE/RESTORE macros.
+       * src/vm/jit/powerpc64/asmpart.S (asm_vm_call_method): fixed no
+       argument method
+       call path, coming back to C now.
+
+2006-08-10 09:10  twisti
+
+       * src/boehm-gc/darwin_stop_world.c: Updated to version 6.8.
+       * src/boehm-gc/doc/README.changes: Likewise.
+       * src/boehm-gc/doc/README: Likewise.
+       * src/boehm-gc/include/gc.h: Likewise.
+       * src/boehm-gc/include/gc_config_macros.h: Likewise.
+       * src/boehm-gc/include/private/gcconfig.h: Likewise.
+       * src/boehm-gc/configure.in: Likewise.
+       * src/boehm-gc/version.h: Likewise.
+       * src/boehm-gc/malloc.c: Likewise.
+       * src/boehm-gc/pthread_support.c: Likewise.
+       * src/boehm-gc/os_dep.c: Likewise.
+       * src/boehm-gc/dyn_load.c: Likewise.
+
+2006-08-09 15:11  twisti
+
+       * src/vm/jit/i386/codegen.c (codegen): Fixed ICMD_LMUL bug.
+
+2006-08-09 15:10  twisti
+
+       * src/vm/jit/i386/emit.c (emit_load_s1): Coding style changes.
+       (emit_load_s2): Likewise.
+       (emit_load_s3): Likewise.
+       (emit_load_s1_low): Likewise.
+       (emit_load_s2_low): Likewise.
+       (emit_load_s1_high): Likewise.
+       (emit_store): Likewise.
+
+2006-08-08 19:57  edwin
+
+       * src/vm/jit/jit.c (stackreq): Initialize this table statically.
+       (jit_init): Removed dynamic initialization of stackreq table.
+
+2006-08-08 19:23  edwin
+
+       * src/native/vm/java_lang_reflect_Method.c
+       (Java_java_lang_reflect_Method_invokeNative): Removed unused
+       variables.
+       
+       * src/native/vm/java_lang_reflect_Constructor.c (vm/access.h):
+       Include to fix warning.
+
+2006-08-08 19:18  edwin
+
+       * src/native/vm/java_lang_reflect_Field.c (cacao_get_field_address):
+       Use access_check_caller.
+
+2006-08-08 16:21  edwin
+
+       * src/vm/access.h, src/vm/access.c (access_check_caller): Added.
+       
+       * src/native/vm/java_lang_reflect_Method.c
+       (Java_java_lang_reflect_Method_invokeNative): Use access_check_caller
+       for the access check.
+       
+       * src/native/vm/java_lang_reflect_Constructor.c
+       (Java_java_lang_reflect_Constructor_constructNative): Likewise. This
+       should fix the mauve test case
+       java.lang.reflect.AccessibleObject.security.
+       
+       * src/cacaoh/headers.c (stacktrace_getClassContext): Added dummy
+       implementation.
+
+2006-08-08 14:24  twisti
+
+       * src/vm/jit/parse.h (new_block_insert): Renamed to
+       NEW_MARK_BASICBLOCK.
+       (block_insert): Renamed to MARK_BASICBLOCK.
+       
+       * src/vm/jit/parse.c (new_fillextable): Likewise.
+       (fillextable): Likewise.
+       (new_parse): Likewise.
+       (parse): Likewise.
+
+2006-08-08 13:25  twisti
+
+       * src/vm/jit/stack.c (new_stack_analyse): Replaced debug_nr with nr.
+       
+       * src/vm/jit/verify/typecheck.c (typestate_reach): Likewise.
+       (verify_basic_block): Likewise.
+       
+       * src/vm/jit/i386/codegen.c (codegen): Likewise.
+       * src/vm/jit/powerpc/codegen.c (codegen): Likewise.
+       * src/vm/jit/x86_64/codegen.c (codegen): Likewise.
+
+2006-08-08 13:03  twisti
+
+       * src/vm/jit/cfg.c (cfg_insert_predecessors): New method.
+       (cfg_build): Use cfg_insert_predecessors for TABLESWITCH and
+       LOOKUPSWITCH.
+
+2006-08-08 13:01  edwin
+
+       * src/vm/resolve.h, src/vm/resolve.c (new_resolve_method_lazy):
+       Removed curstack parameter.
+       (new_resolve_field_lazy): Likewise.
+       (new_constrain_unresolved_field): New function.
+       (new_constrain_unresolved_method): Likewise.
+       
+       * src/vm/jit/parse.c (new_parse): Use new_resolve_field_lazy and
+       new_resolve_method_lazy.
+
+2006-08-08 12:56  edwin
+
+       * src/vm/jit/stack.c (new_stack_analyse): For INVOKE* instructions,
+       store the live-through stack slots as additional arguments after
+       the live-in slots. These live-through slots are needed by the
+       verifier and by on-stack replacement in order to create a replacement
+       point at the call site.
+       NOTE: Currently the live-through slots are also stored for builtins.
+       This should change in the final version.
+
+2006-08-08 12:46  edwin
+
+       * src/vm/jit/jit.h (NEW_INSTRUCTION_IS_RESOLVED): New macro.
+       (NEW_INSTRUCTION_IS_UNRESOLVED): Likewise.
+       (NEW_INSTRUCTION_MUST_CHECK): Likewise.
+
+2006-08-08 12:45  twisti
+
+       * src/vm/jit/cfg.h (CFG_UNKNOWN_PREDECESSORS): Defined.
+       
+       * src/vm/jit/stack.c (vm/jit/cfg.h): Added.
+       (new_stack_analyse): Set predecessorcount for EXH blocks to
+       CFG_UNKNOWN_PREDECESSORS.
+       (stack_analyse): Likewise.
+       
+       * src/vm/jit/show.c (new_show_basicblock): Print predecessor block
+       numbers.
+       (show_basicblock): Likewise.
+
+2006-08-07 16:10  twisti
+
+       * src/vm/jit/reorder.c (reorder): Iterate to m->basicblockcount + 1,
+       so we kind of set the last basic block too.
+
+2006-08-07 15:30  twisti
+
+       * src/vm/jit/jit.h (basicblock): Renamed debug_nr to nr.
+       (BASICBLOCK_INIT): Likewise.
+       
+       * src/vm/jit/reorder.c (reorder_place_next_unplaced_block): Likewise.
+       (reorder): Likewise.
+       
+       * src/vm/jit/show.c (new_show_method): Likewise.
+       (show_method): Likewise.
+       (new_show_basicblock): Likewise.
+       (show_basicblock): Likewise.
+       (SHOW_TARGET): Likewise.
+       (show_icmd): Likewise.
+       
+       * src/vm/jit/ifconv/ifconv.c (check): Likewise.
+       
+       * src/vm/jit/loop/analyze.c (insert_exception): Likewise.
+       (copy_handler): Likewise.
+       (create_static_checks): Likewise.
+       
+       * src/vm/jit/verify/typecheck.c (verify_basic_block): Likewise.
+       (typecheck_reset_flags): Likewise.
+       (typecheck): Likewise.
+       
+       * src/vm/jit/verify/typeinfo.c (typeinfo_print): Likewise.
+       (typeinfo_print_short): Likewise.
+       (typeinfo_print_stacktype): Likewise.
+
+2006-08-07 15:12  tbfg
+
+       * src/vm/jit/powerpc64/asmpart.S (asm_vm_call_method, asm_cacheflush):
+       ppc64 abi needs function descriptor for function called from other
+       relocateable modules and uses direct calling for module intern calls.
+
+2006-08-07 11:15  twisti
+
+       * src/vm/jit/reorder.c (reorder): #ifdef debug output.
+
+2006-08-07 11:12  twisti
+
+       * src/vm/jit/Makefile.am (libjit_la_SOURCES): Add cfg.[ch] and
+       reorder.[ch] for debugging.
+
+2006-08-07 11:10  twisti
+
+       * src/vm/jit/jit.c (vm/jit/cfg.h): Added.
+       (vm/jit/reorder.h): Likewise.
+       (jit_recompile): Set JITDATA_FLAG_REORDER flag.
+       (jit_compile_intern): Call cfg_build and reorder.
+       (jit_complement_condition): New function.
+       
+       * src/vm/jit/jit.h (basicblock): Changed type of predecessors and
+       successors.
+       (jit_complement_condition): Added.
+       
+       * src/vm/jit/cfg.c (cfg_allocate_predecessors): New method.
+       (cfg_allocate_successors): Likewise.
+       (cfg_build): Finished implementation.
+       
+       * src/vm/jit/reorder.c (reorder_place_next_unplaced_block): New
+       function.
+       (reorder): Improved, still not working.
+       
+       * src/vm/jit/show.c (new_show_method): Walk the basic block chain to
+       find the last block, as this may change.
+       (show_method): Likewise.
+
+2006-08-04 14:50  twisti
+
+       * src/vm/jit/reorder.c: New file.
+       * src/vm/jit/reorder.h: Likewise.
+
+2006-08-04 14:42  twisti
+
+       * src/vm/jit/parse.c (new_parse): MZERO basicblock array.
+       (parse): Likewise.
+       
+       * src/vm/jit/jit.h (JITDATA_FLAG_REORDER): Added.
+       (JITDATA_HAS_FLAG_REORDER): Likewise.
+       (basicblock): Removed pre_count and added predecessorcount,
+       successorcount, predecessors, successors.
+       (BASICBLOCK_INIT): Don't zero fields.
+       
+       * src/vm/jit/stack.c (new_stack_analyse): Renamed pre_count to
+       predecessorcount.
+       (stack_analyse): Likewise and removed predecessor count calculation.
+       
+       * src/vm/jit/show.c (new_show_basicblock): Likewise.
+       (show_basicblock): Likewise.
+       
+       * src/vm/jit/ifconv/ifconv.c (ifconv_static): Likewise.
+
+2006-08-04 14:27  twisti
+
+       * src/vm/jit/cfg.c: New file.
+       * src/vm/jit/cfg.h: Likewise.
+
+2006-08-04 14:10  twisti
+
+       * src/vm/options.c (opt_foo): Added. This is a development option.
+       * src/vm/options.h (opt_foo): Likewise.
+       
+       * src/vm/vm.c (vm_create): Added OPT_FOO.
+
+2006-08-01 20:38  twisti
+
+       * autogen.sh: Recognize autoconf 2.60.
+
+2006-08-01 15:51  twisti
+
+       * src/vm/jit/codegen-common.c (codegen_createnativestub): Set
+       JITDATA_FLAG_INSTRUMENT for opt_prof.
+
+2006-08-01 15:08  twisti
+
+       * src/vm/jit/recompile.c (recompile_thread): Check return value of
+       jit_recompile and print the exception in error case.
+
+2006-08-01 13:10  twisti
+
+       * src/vm/jit/parse.c (new_parse): Replaced opt_verify with
+       JITDATA_HAS_FLAG_VERIFY, because on recompilation we don't turn
+       verifying on.
+
+2006-07-31 20:42  twisti
+
+       * src/vm/jit/x86_64/codegen.c (codegen): Load address for INVOKESTATIC
+       from data segment and pass the displacement to the patcher.
+       
+       * src/vm/jit/x86_64/patcher.c (patcher_get_putstatic): Use
+       displacement from patcher, not from the instruction.
+       (patcher_builtin_multianewarray): Don't patch BUILTIN_multianewarray
+       address, it's not required.
+       (patcher_invokestatic_special): Use displacement passed and patch the
+       data segment.
+       
+       * src/vm/jit/x86_64/md.c (md_stacktrace_get_returnaddress): Changed to
+       new INVOKESTATIC calling sequence.
+
+2006-07-31 16:30  twisti
+
+       * src/native/native.c
+       (native/include/java_lang_management_VMManagementFactory.h): Added.
+       (dummynativetable): Added VMManagementFactory methods.
+
+2006-07-31 16:26  twisti
+
+       * src/native/include/.cvsignore: Added
+       java_lang_management_VMManagementFactory.h.
+
+2006-07-31 16:25  twisti
+
+       * src/native/vm/java_lang_management_VMManagementFactory.c: New file.
+       
+       * src/native/vm/Makefile.am (libnativevm_la_SOURCES): Added
+       java_lang_management_VMManagementFactory.c.
+       
+       * src/native/include/Makefile.am
+       (ADDITIONAL_IMPLEMENTED_VM_CLASSES_HEADERS): Added
+       java_lang_management_VMManagementFactory.h.
+
+2006-07-31 15:35  twisti
+
+       * src/native/include/Makefile.am (DO_HEADER_FILES): Do not depend on
+       CACAO_VM_ZIP.
+
+2006-07-31 15:27  twisti
+
+       * src/native/include/.cvsignore: Added
+       gnu_java_lang_management_VMThreadMXBeanImpl.h and
+       java_lang_management_ThreadInfo.h.
+
+2006-07-31 15:26  twisti
+
+       * src/native/vm/gnu_java_lang_management_VMThreadMXBeanImpl.c: New
+       file.
+       
+       * src/native/vm/Makefile.am (libnativevm_la_SOURCES): Added
+       gnu_java_lang_management_VMThreadMXBeanImpl.c.
+       
+       * src/native/include/Makefile.am
+       (ADDITIONAL_IMPLEMENTED_VM_CLASSES_HEADERS): Added
+       gnu_java_lang_management_VMThreadMXBeanImpl.h and
+       java_lang_management_ThreadInfo.h.
+       (VM_ZIP): Removed.
+       
+       * src/native/jni.h (_Jv_JavaVM): Added total_started_thread_count.
+       
+       * src/threads/native/threads.c (threads_startup_thread): Count
+       total_started_thread_count.
+       
+       * src/cacao/cacao.c (main): Likewise.
+       
+       * src/cacaoh/headers.c (_Jv_jvm): Added.
+
+2006-07-31 14:43  twisti
+
+       * src/native/include: Updated ignore property.
+
+2006-07-31 14:35  twisti
+
+       * src/native/vm/gnu_java_lang_management_VMClassLoadingMXBeanImpl.c:
+       New file.
+       
+       * src/native/vm/Makefile.am (libnativevm_la_SOURCES): Added
+       gnu_java_lang_management_VMClassLoadingMXBeanImpl.c.
+       
+       * src/native/include/Makefile.am
+       (ADDITIONAL_IMPLEMENTED_VM_CLASSES_HEADER_FILES): Added
+       gnu_java_lang_management_VMClassLoadingMXBeanImpl.h.
+       
+       * src/native/include/.cvsignore: Likewise.
+       
+       * src/native/jni.h (_Jv_JavaVM): Added
+       Java_gnu_java_lang_management_VMClassLoadingMXBeanImpl_verbose.
+       
+       * src/native/native.c
+       (native/include/gnu_java_lang_management_VMClassLoadingMXBeanImpl.h):
+       Added.
+       (native/include/gnu_java_lang_management_VMMemoryMXBeanImpl.h):
+       Likewise.
+       (dummynativetable): Added VMClassLoadingMXBeanImpl and
+       VMMemoryMXBeanImpl functions.
+
+2006-07-31 14:21  twisti
+
+       * src/vm/classcache.c (classcache_number_of_loaded_classes): New
+       internal function.
+       (classcache_get_loaded_class_count): New function.
+       (classcache_jvmti_GetLoadedClasses): Renamed to
+       classcache_get_loaded_classes and reimplemented.
+       
+       * src/vm/classcache.h (classcache_get_loaded_class_count): Added.
+       (classcache_jvmti_GetLoadedClasses): Renamed to
+       classcache_get_loaded_classes.
+
+2006-07-31 12:29  twisti
+
+       * src/native/include/.cvsignore: Added
+       gnu_java_lang_management_VMMemoryMXBeanImpl.h and
+       java_lang_management_MemoryUsage.h.
+
+2006-07-31 12:28  twisti
+
+       *
+       src/lib/vm/reference/gnu/java/lang/management/VMMemoryMXBeanImpl.java:
+       New file.
+       
+       * src/lib/Makefile.am (VM_JAVA_FILES): Added
+       gnu/java/lang/management/VMMemoryMXBeanImpl.java.
+       (VM_CLASS_FILES): Likewise.
+       
+       * src/native/include/Makefile.am
+       (ADDITIONAL_IMPLEMENTED_VM_CLASSES_HEADERS): Added
+       gnu_java_lang_management_VMMemoryMXBeanImpl.h and
+       java_lang_management_MemoryUsage.h.
+       
+       * src/native/vm/Makefile.am (libnativevm_la_SOURCES): Added
+       gnu_java_lang_management_VMMemoryMXBeanImpl.c.
+       
+       * src/native/vm/gnu_java_lang_management_VMMemoryMXBeanImpl.c
+       (vm/loader.h): Added.
+
+2006-07-31 12:25  twisti
+
+       * src/mm/boehm.c (gc_get_total_bytes): New function.
+       * src/mm/boehm.h (gc_get_total_bytes): Added.
+
+2006-07-31 12:17  twisti
+
+       * src/lib/vm/reference/java/lang/VMClassLoader.java: Merged GNU
+       Classpath changes.
+
+2006-07-31 12:15  twisti
+
+       * src/native/Makefile.am (nativetable.inc): Renamed VM_ZIP to
+       CACAO_VM_ZIP.
+
+2006-07-28 13:24  twisti
+
+       * src/vm/jit/dseg.c (desg_increase): Removed.
+       (dseg_finish): New function.
+       (dseg_find_s4): Likewise.
+       (dseg_find_s8): Likewise.
+       (dseg_find_float): Likewise.
+       (dseg_find_double): Likewise.
+       (dseg_find_address): Likewise.
+       (dseg_add_s4_intern): Likewise.
+       (dseg_add_unique_s4): Likewise.
+       (dseg_add_s4): Likewise.
+       (dseg_add_s8_intern): Likewise.
+       (dseg_add_unique_s8): Likewise.
+       (dseg_add_s8): Likewise.
+       (dseg_add_float_intern): Likewise.
+       (dseg_add_unique_float): Likewise.
+       (dseg_add_float): Likewise.
+       (dseg_add_double_intern): Likewise.
+       (dseg_add_unique_double): Likewise.
+       (dseg_add_double): Likewise.
+       (dseg_add_address_intern): Likewise.
+       (dseg_add_unique_address): Likewise.
+       (dseg_add_address): Likewise.
+       
+       * src/vm/jit/dseg.h (dsegentry): New structure.
+       
+       * src/vm/jit/codegen-common.c (codegen_setup): Don't allocate memory
+       for data segment.
+       (codegen_finish): Call dseg_finish.
+       
+       * src/vm/jit/codegen-common.h (codegendata): Removed dsegtop and
+       dsegsize, added dseg.
+       
+       * src/vm/jit/powerpc/codegen.c: Use new dseg function names.
+       
+       * src/vm/jit/powerpc/emit.c (vm/jit/dseg.h): Added.
+       (emit_iconst): Use new dseg function names.
+
+2006-07-28 10:54  twisti
+
+       * src/vm/jit/powerpc/linux/md-abi.h (REG_ITMP23_PACKED): New define.
+       * src/vm/jit/powerpc/darwin/md-abi.h (REG_ITMP23_PACKED): Likewise.
+
+2006-07-28 10:12  twisti
+
+       * src/vm/loader.c (load_class_from_classbuffer): Enable "Extra bytes
+       at the end of class file"-check, since we are something like Java 1.5.
+
+2006-07-26 15:20  twisti
+
+       * src/vm/jit/jit.h (INSTRUCTION_UNRESOLVED_CLASS): Defined.
+       
+       * src/vm/jit/alpha/codegen.c (codegen): First changes for duplicate
+       patcher removal.
+
+2006-07-26 14:50  twisti
+
+       * src/vm/jit/show.c (new_show_method): Print stub length in method
+       header.
+       (show_method): Likewise.
+       
+       * src/vm/jit/codegen-common.c (codegen_addpatchref): Don't cast to
+       u1*.
+
+2006-07-26 13:27  twisti
+
+       * src/vm/jit/parse.h (code_get_u1, code_get_s1, code_get_u2)
+       (code_get_s2, code_get_u4, code_get_s4): Removed.
+       
+       * src/vm/suck.h (SUCK_BE_S1, SUCK_BE_S2, SUCK_BE_S4, SUCK_BE_S8):
+       Defined.
+       
+       * src/vm/jit/parse.c (vm/suck.h): Added.
+       (new_parse): Use SUCK_BE_* macros instead of code_get_*.
+       (parse): Likewise.
+
+2006-07-26 11:04  twisti
+
+       * src/vm/builtin.c (builtin_print_argument): #ifndef NDEBUG.
+
+2006-07-26 10:16  twisti
+
+       * src/vm/jit/powerpc/linux/md-asm.h: Added register defines.
+
+2006-07-26 10:06  twisti
+
+       * src/vm/jit/powerpc/darwin/md-asm.h: Added fr register defines again,
+       we need them.
+       
+       * src/vm/jit/powerpc/asmpart.S (asm_replacement_out): Use internal
+       register defines instead of numbers, as darwin does not understand it.
+       (asm_replacement_in): Likewise.
+
+2006-07-26 09:59  twisti
+
+       * src/vm/jit/powerpc/darwin/md-asm.h (mach/ppc/asm.h): Removed. Don't
+       define the fr register names.
+
+2006-07-26 09:43  twisti
+
+       * src/vm/jit/powerpc/linux/md-asm.h (asm/ppc_asm.h): Removed, it's not
+       an official kernel header.
+       
+       * src/vm/jit/powerpc/asmpart.S: Use CACAO internal register defines or
+       simple register numbers.
+
+2006-07-25 18:30  twisti
+
+       * src/vm/global.h (IS_FLT_TYPE): Added.
+       (IS_DBL_TYPE): Likewise.
+
+2006-07-25 16:00  twisti
+
+       * src/vm/jit/i386/md-emit.h (emit_ialu): Removed.
+       (emit_ialuconst): Likewise.
+       (emit_lalu): Likewise.
+       (emit_laluconst): Likewise.
+       (emit_ishift): Likewise.
+       (emit_ishiftconst): Likewise.
+       (emit_ifcc_iconst): Likewise.
+
+2006-07-25 15:57  twisti
+
+       * src/vm/jit/jit.h (ICMD_ELSE_ICONST): Removed.
+       (ICMD_IFEQ_ICONST): Likewise.
+       (ICMD_IFNE_ICONST): Likewise.
+       (ICMD_IFLT_ICONST): Likewise.
+       (ICMD_IFGE_ICONST): Likewise.
+       (ICMD_IFGT_ICONST): Likewise.
+       (ICMD_IFLE_ICONST): Likewise.
+       
+       * src/vm/jit/jit.c (icmd_names): Set removed ICMDs to UNDEF.
+       
+       * src/vm/jit/allocator/simplereg.c (new_allocate_scratch_registers):
+       Removed ICMDs.
+       (allocate_scratch_registers): Likewise.
+       
+       * src/vm/jit/verify/typecheck.c (verify_basic_block): Likewise.
+       
+       * src/vm/jit/stack.c (new_stack_analyse): Likewise.
+       (stack_analyse): Likewise.
+       
+       * src/vm/jit/show.c (new_show_icmd): Likewise.
+       (show_icmd): Likewise.
+       
+       * src/vm/jit/alpha/arch.h (CONDITIONAL_LOADCONST): Removed.
+       * src/vm/jit/i386/arch.h: Likewise.
+       * src/vm/jit/mips/arch.h: Likewise.
+       * src/vm/jit/powerpc/arch.h: Likewise.
+       * src/vm/jit/powerpc64/arch.h: Likewise.
+       * src/vm/jit/sparc64/arch.h: Likewise.
+       * src/vm/jit/x86_64/arch.h: Likewise.
+       
+       * src/vm/jit/alpha/codegen.c (codegen): Removed ICMDs.
+       * src/vm/jit/i386/codegen.c: Likewise.
+       * src/vm/jit/mips/codegen.c: Likewise.
+       * src/vm/jit/sparc64/codegen.c: Likewise.
+       * src/vm/jit/x86_64/codegen.c: Likewise.
+       
+       * src/vm/jit/i386/emit.c (emit_ifcc_iconst): Removed.
+
+2006-07-25 15:33  twisti
+
+       * src/vm/jit/x86_64/md.c (md_signal_handler_sigusr2): Fixed comment.
+       
+       * src/vm/jit/i386/linux/md-os.c (md_signal_handler_sigusr2): New
+       function.
+
+2006-07-25 13:52  twisti
+
+       * src/vm/jit/jit.h (TYPE_INT, TYPE_LNG, TYPE_FLT, TYPE_DBL, TYPE_ADR)
+       (IS_INT_LNG_TYPE, IS_FLT_DBL_TYPE, IS_2_WORD_TYPE)
+       (IS_INT_TYPE, IS_LNG_TYPE, IS_ADR_TYPE, IS_VOID_TYPE): Removed.
+       
+       * src/vm/global.h (TYPE_LONG, TYPE_FLOAT, TYPE_DOUBLE, TYPE_ADDRESS):
+       Removed.
+       (TYPE_INT, TYPE_LNG, TYPE_FLT, TYPE_DBL, TYPE_ADR)
+       (IS_INT_LNG_TYPE, IS_FLT_DBL_TYPE, IS_2_WORD_TYPE)
+       (IS_INT_TYPE, IS_LNG_TYPE, IS_ADR_TYPE, IS_VOID_TYPE): Added.
+       
+       * src/vm/loader.c (load_field): Use short TYPE_* defines.
+       (load_newly_created_array): Likewise.
+       
+       * src/vm/descriptor.c (descriptor_to_basic_type): Likewise.
+       (descriptor_typesize): Likewise.
+       (descriptor_to_typedesc): Likewise.
+       (descriptor_pool_parse_method_descriptor): Likewise.
+       (descriptor_debug_print_typedesc): Likewise.
+       
+       * src/vm/jit/verify/typecheck.c (typestack_copy): Likewise.
+       (typestack_put_retaddr): Likewise.
+       (typestack_merge): Likewise.
+       (verify_basic_block): Likewise.
+       (verify_init_locals): Likewise.
+       
+       * src/vm/jit/verify/typeinfo.c (typevectorset_copymergedtype):
+       Likewise.
+       (typevectorset_store_retaddr): Likewise.
+       (typevectorset_store_twoword): Likewise.
+       (typevector_merge): Likewise.
+       (typeinfos_init_from_methoddesc): Likewise.
+       (typeinfo_test_parse): Likewise.
+       (typeinfo_print_type): Likewise.
+       (typeinfo_print_stacktype): Likewise.
+       
+       * src/vm/jit/verify/typeinfo.h (TYPE_IS_RETURNADDRESS): Likwise.
+       (TYPE_IS_REFERENCE): Likwise.
+       
+       * src/native/jni.c (_Jv_jni_vmargs_from_objectarray): Likewise.
+
+2006-07-25 12:33  twisti
+
+       * src/mm/memory.c (memory_cnew): When MAP_ANONYMOUS and MAP_ANON are
+       not defined, we use simply malloc. This is required for IRIX.
+
+2006-07-25 11:38  twisti
+
+       * configure.ac (AC_FUNC_MMAP): Added.
+       (AC_CHECK_FUNCS): Removed mprotect.
+       
+       * src/mm/memory.c (DEFAULT_CODEMEM_SIZE): Renamed to
+       DEFAULT_CODE_MEMORY_SIZE.
+       (codememlock): Renamed to lock_code_memory.
+       (codememptr): Renamed to code_memory.
+       (codememsize): Renamed to code_memory_size.
+       (pagesize): Added global static variable.
+       (memory_init): Use new variable names and set pagesize.
+       (memory_cnew): Don't use malloc/mprotect as this makes some problems
+       with selinux enabled distributions. Instead use mmap.
+
+2006-07-21 14:40  twisti
+
+       * src/boehm-gc/configure.in (MY_CFLAGS): Commented. We want to use the
+       top-level CFLAGS.
+       * src/boehm-gc/Makefile.am (LTCOMPILE): Likewise.
+       (LINK): Likewise.
+
+2006-07-21 14:15  twisti
+
+       * src/vm/jit/powerpc/linux/md-asm.h (__ASSEMBLY__): Defined. It's
+       required for <asm/ppc_asm.h> on my Debian system.
+
+2006-07-21 10:09  twisti
+
+       * src/vm/exceptions.c (new_verifyerror): Renamed to
+       exceptions_new_verifyerror.
+       (exceptions_throw_verifyerror): New function.
+       * src/vm/exceptions.h (new_verifyerror): Renamed to
+       exceptions_new_verifyerror.
+       (exceptions_throw_verifyerror): Added.
+       
+       * src/vm/resolve.c: Use exceptions_throw_verifyerror instead of
+       new_verifyerror.
+       * src/vm/jit/parse.c: Likewise.
+       * src/vm/jit/stack.c: Likewise.
+       * src/vm/jit/verify/typecheck.c: Likewise.
+       * src/vm/jit/verify/typeinfo.c: Likewise.
+       
+       * src/cacaoh/headers.c (new_verifyerror): Renamed to
+       exceptions_throw_verifyerror.
+
+2006-07-21 09:24  twisti
+
+       * src/vm/builtin.c (builtin_asm_get_exceptionptrptr): Removed.
+       * src/vm/builtin.h (builtin_get_exceptionptrptr): Likewise.
+
+2006-07-19 15:54  twisti
+
+       * src/vm/jit/mips/patcher.c (assert.h): Added.
+       (vm/exceptions.h): Added.
+       (vm/jit/methodheader.h): Likewise.
+       (patcher_wrapper): New function.
+       (patcher_get_putstatic): Removed monitor enter/exit, this is now done
+       by the wrapper.
+       (patcher_get_putfield): Likewise.
+       (patcher_aconst): Likewise.
+       (patcher_builtin_multianewarray): Likewise.
+       (patcher_builtin_arraycheckcast): Likewise.
+       (patcher_invokestatic_special): Likewise.
+       (patcher_invokevirtual): Likewise.
+       (patcher_invokeinterface): Likewise.
+       (patcher_checkcast_instanceof_flags): Likewise.
+       (patcher_checkcast_instanceof_interface): Likewise.
+       (patcher_checkcast_instanceof_class): Likewise.
+       (patcher_clinit): Likewise.
+       (patcher_athrow_areturn): Likewise.
+       (patcher_resolve_native): Likewise.
+       
+       * src/vm/jit/mips/asmpart.S (asm_call_jit_compiler): Use
+       exceptions_get_and_clear_exception.
+       (asm_abstractmethoderror): Added missing .ent/.end.
+       (asm_wrapper_patcher): Use patcher_wrapper.
+
+2006-07-19 13:38  twisti
+
+       * src/vm/jit/show.c (new_show_method): Print data length.
+       (show_method): Likewise.
+
+2006-07-19 13:07  tbfg
+
+       * src/vm/jit/powerpc64/* (global): changed all powerpc references to
+       powerpc64.
+
+2006-07-19 12:09  twisti
+
+       * src/vm/jit/show.c (new_show_method): Print method's code length.
+       (show_method): Likewise.
+
+2006-07-19 09:13  twisti
+
+       * src/vm/jit/alpha/patcher.c (patcher_wrapper): Patch back the
+       original instruction on successful returns.
+       (patcher_get_putstatic): Removed instruction patching.
+       (patcher_get_putfield): Likewise.
+       (patcher_aconst): Likewise.
+       (patcher_builtin_multianewarray): Likewise.
+       (patcher_builtin_arraycheckcast): Likewise.
+       (patcher_invokestatic_special): Likewise.
+       (patcher_invokevirtual): Likewise.
+       (patcher_invokeinterface): Likewise.
+       (patcher_checkcast_instanceof_flags): Likewise.
+       (patcher_checkcast_instanceof_interface): Likewise.
+       (patcher_checkcast_instanceof_class): Likewise.
+       (patcher_clinit): Likewise.
+       (patcher_athrow_areturn): Likewise.
+       (patcher_resolve_native): Likewise.
+
+2006-07-18 18:38  tbfg
+
+       * src/vm/jit/powerpc64/linux/md-abi.c (md_return_alloc): isleafmethod
+       has been moved to jitdata.
+       
+       * src/vm/jjit/powerpc64/codegen.c (global): fixes for isleafmethod
+       changes, BUILTIN_monitor* renamed to LOCK_monitor_*
+       codegen_add_classcastexception_ref api changed.
+       
+       * src/vm/jit/powerpc64/asmpart.S (global): fixed R_PPC64_ADDR32
+       issues (32 bit adresses) all jump tables data types from
+       long to quad and synched with powerpc asmpart.S.
+
+2006-07-18 14:05  twisti
+
+       * src/mm/memory.c (memory_cfree): New function.
+       * src/mm/memory.h (CFREE): Define to memory_cfree.
+       (memory_cfree): Added.
+
+2006-07-18 11:09  twisti
+
+       * src/native/jvmti/Makefile.am (lib_LTLIBRARIES): Removed libjdwp.la.
+       (libjdwp_la_SOURCES): Removed.
+       
+       * src/native/jvmti/VMjdwp.c: Removed.
+       * src/native/jvmti/VMjdwp.h: Likewise.
+       
+       * src/native/vm/Makefile.am [ENABLE_JVMTI] (lib_LTLIBRARIES): Added
+       libjdwp.la.
+       (libjdwp_la_SOURCES): Added.
+       
+       * src/native/vm/VMFrame.c: Removed.
+       * src/native/vm/VMMethod.c: Likewise.
+       * src/native/vm/VMVirtualMachine.c: Likewise.
+       
+       * src/native/vm/VMjdwp.c: Added.
+       * src/native/vm/VMjdwp.h: Likewise.
+       * src/native/vm/gnu_classpath_jdwp_VMVirtualMachine.c: Likewise.
+       * src/native/vm/gnu_classpath_jdwp_VMFrame.c: Likewise.
+       * src/native/vm/gnu_classpath_jdwp_VMMethod.c: Likewise.
+
+2006-07-18 11:02  motse
+
+       * src/native/jvmti/VMjdwp.c (Breakpoint): adapt BreakpointEvent
+       signature to changed gnu classpath jdwp implementation.
+       (fillidcache): idem
+
+2006-07-18 08:56  twisti
+
+       * src/vm/builtin.c (builtin_trace_args): Added missing
+       TRACE_ARGS_NUM >= 4 case.
+
+2006-07-18 08:36  twisti
+
+       * src/vm/jit/powerpc/darwin/md-asm.h (asm_wrapper_patcher): Renamed to
+       asm_patcher_wrapper.
+
+2006-07-18 08:19  twisti
+
+       * src/native/vm/Makefile.am (libnativevm_la_SOURCES): Added package
+       prefix to filenames.
+       
+       * src/native/vm/VMClassLoader.c: Removed.
+       * src/native/vm/VMThrowable.c: Likewise.
+       * src/native/vm/VMAccessController.c: Likewise.
+       * src/native/vm/VMString.c: Likewise.
+       * src/native/vm/VMObject.c: Likewise.
+       * src/native/vm/VMStackWalker.c: Likewise.
+       * src/native/vm/Field.c: Likewise.
+       * src/native/vm/VMSystem.c: Likewise.
+       * src/native/vm/VMSystemProperties.c: Likewise.
+       * src/native/vm/VMClass.c: Likewise.
+       * src/native/vm/VMThread.c: Likewise.
+       * src/native/vm/Method.c: Likewise.
+       * src/native/vm/VMProxy.c: Likewise.
+       * src/native/vm/Constructor.c: Likewise.
+       * src/native/vm/VMRuntime.c: Likewise.
+       
+       * src/native/vm/gnu_classpath_VMStackWalker.c: Added.
+       * src/native/vm/java_lang_VMSystem.c: Likewise.
+       * src/native/vm/java_lang_reflect_Method.c: Likewise.
+       * src/native/vm/java_lang_VMObject.c: Likewise.
+       * src/native/vm/java_lang_VMString.c: Likewise.
+       * src/native/vm/gnu_classpath_VMSystemProperties.c: Likewise.
+       * src/native/vm/java_lang_VMRuntime.c: Likewise.
+       * src/native/vm/java_lang_reflect_Field.c: Likewise.
+       * src/native/vm/java_lang_VMThrowable.c: Likewise.
+       * src/native/vm/java_lang_VMClassLoader.c: Likewise.
+       * src/native/vm/java_lang_VMClass.c: Likewise.
+       * src/native/vm/java_lang_VMThread.c: Likewise.
+       * src/native/vm/java_security_VMAccessController.c: Likewise.
+       * src/native/vm/java_lang_reflect_VMProxy.c: Likewise.
+       * src/native/vm/java_lang_reflect_Constructor.c: Likewise.
+
+2006-07-18 08:16  twisti
+
+       * src/native/vm/gnu_java_lang_management_VMMemoryMXBeanImpl.c: New
+       file.
+
+2006-07-18 08:14  twisti
+
+       * src/native/vm/gnu_java_lang_management_VMRuntimeMXBeanImpl.c
+       (vm/vm.h): Added.
+       (getStartTime): Implemented.
+
+2006-07-18 08:05  twisti
+
+       * src/native/vm/VMSystemProperties.c (preInit): Added
+       gnu.java.compiler.name property.
+
+2006-07-17 16:11  twisti
+
+       * src/vm/jit/jit.h (IS_VOID_TYPE): Added.
+       
+       * src/vm/builtin.c (builtin_print_argument): New function.
+       (builtin_trace_args): Rewritten. Uses builtin_trace_args and prints
+       arguments much better.
+       (builtin_displaymethodstop): Likewise.
+
+2006-07-17 15:14  twisti
+
+       * src/native/jvmti/.cvsignore (TAGS): Added.
+       (cacaodbgserver): Likewise.
+
+2006-07-17 15:11  twisti
+
+       * configure.ac (CACAO_LIBDIR): Added.
+       
+       * src/vm/classcache.c [ENABLE_JVMTI] (lock_hashtable_classcache):
+       Don't export it.
+       (classcache_jvmti_GetLoadedClasses): New method.
+       
+       * src/vm/classcache.h (CLASSCACHE_LOCK): Don't define it.
+       (CLASSCACHE_UNLOCK): Likewise.
+       (lock_hashtable_classcache): Don't export it.
+       (classcache_jvmti_GetLoadedClasses): Added.
+       
+       * src/vm/vm.c (vm_create): Use CACAO_LIBDIR in OPT_XRUNJDWP.
+       
+       * src/native/jvmti/jvmti.c (GetLoadedClasses): Use
+       classcache_jvmti_GetLoadedClasses.
+       (jvmti_agentload): Some code cleanup.
+
+2006-07-17 13:50  twisti
+
+       * src/native/include/include/Makefile.am (GEN_JVMTI_HEADER_FILES):
+       Reordered.
+       
+       * src/native/include/include/.cvsignore
+       (gnu_classpath_jdwp_VMMethod.h): Added.
+       (gnu_classpath_jdwp_util_VariableTable.h): Likewise.
+
+2006-07-17 11:48  twisti
+
+       * src/vm/jit/asmpart.h (asm_wrapper_patcher): Renamed to
+       asm_patcher_wrapper.
+       
+       * src/vm/jit/alpha/codegen.c (codegen): Likewise.
+       (createnativestub): Likewise.
+       * src/vm/jit/alpha/asmpart.S (asm_wrapper_patcher): Likewise.
+       
+       * src/vm/jit/i386/codegen.c (codegen): Likewise.
+       (createnativestub): Likewise.
+       * src/vm/jit/i386/asmpart.S (asm_wrapper_patcher): Likewise.
+       
+       * src/vm/jit/mips/codegen.c (codegen): Likewise.
+       (createnativestub): Likewise.
+       * src/vm/jit/mips/asmpart.S (asm_wrapper_patcher): Likewise.
+       
+       * src/vm/jit/powerpc/codegen.c (codegen): Likewise.
+       (createnativestub): Likewise.
+       * src/vm/jit/powerpc/asmpart.S (asm_wrapper_patcher): Likewise.
+       
+       * src/vm/jit/powerpc64/codegen.c (codegen): Likewise.
+       (createnativestub): Likewise.
+       * src/vm/jit/powerpc64/asmpart.S (asm_wrapper_patcher): Likewise.
+       
+       * src/vm/jit/x86_64/codegen.c (codegen): Likewise.
+       (createnativestub): Likewise.
+       * src/vm/jit/x86_64/asmpart.S (asm_wrapper_patcher): Likewise.
+
+2006-07-17 11:09  twisti
+
+       * src/mm/boehm.c (heap_allocate): Changed signature. Some cleanup.
+       * src/mm/boehm.h (heap_allocate): Likewise.
+
+2006-07-17 10:00  twisti
+
+       * src/native/vm/VMRuntime.c (maxMemory): Comment fix.
+       (availableProcessors): Likewise.
+
+2006-07-17 09:47  twisti
+
+       * src/vm/jit/x86_64/patcher.c (vm/jit/x86_64/codegen.h): Added.
+       (vm/exceptions.h): Likewise.
+       (patcher_get_putstatic): Removed monitor enter/exit and return address
+       calculation, this is now done by the wrapper.
+       (patcher_get_putfield): Likewise.
+       (patcher_putfieldconst): Likewise.
+       (patcher_aconst): Likewise.
+       (patcher_builtin_multianewarray): Likewise.
+       (patcher_builtin_arraycheckcast): Likewise.
+       (patcher_invokestatic_special): Likewise.
+       (patcher_invokevirtual): Likewise.
+       (patcher_invokeinterface): Likewise.
+       (patcher_checkcast_instanceof_flags): Likewise.
+       (patcher_checkcast_instanceof_interface): Likewise.
+       (patcher_checkcast_class): Likewise.
+       (patcher_instanceof_class): Likewise.
+       (patcher_clinit): Likewise.
+       (patcher_athrow_areturn): Likewise.
+       (patcher_resolve_native): Likewise.
+       
+       * src/vm/jit/x86_64/asmpart.S (asm_wrapper_patcher): Use
+       patcher_wrapper.
+
+2006-07-16 15:58  twisti
+
+       * src/native/jvmti/jvmti.c (DestroyRawMonitor): Don't pass
+       threadobject to lock_monitor_exit.
+       (RawMonitorEnter): Changed builtin_monitorenter to lock_monitor_enter.
+       (RawMonitorExit): Changed builtin_monitorexit to lock_monitor_exit.
+
+2006-07-16 15:38  twisti
+
+       * src/vm/jit/recompile.c (recompile_threadobject): Renamed to
+       recompile_vmthread and changed type to java_lang_VMThread.
+       (recompile_start_thread): Changed initialization of the thread
+       object. This fixes the not-exit bug.
+       
+       * src/vm/jit/profile/profile.c (profile_threadobject): Renamed to
+       profile_vmthread.
+       (profile_thread): Call codegen_get_pv_from_pc_nocheck instead of
+       codegen_findmethod.
+       (profile_start_thread): Changed initialization of the thread
+       object.
+       
+       * src/vm/jit/codegen-common.c (codegen_findmethod): Print a stacktrace
+       if no function was found and exit the VM.
+       (codegen_get_pv_from_pc_nocheck): New function. Like
+       codegen_findmethod, but can return NULL.
+       * src/vm/jit/codegen-common.h (codegen_get_pv_from_pc_nocheck): Added.
+
+2006-07-14 17:08  edwin
+
+       * src/vm/jit/allocator/simplereg.c (new_allocate_scratch_registers):
+       Fixed dupslots indices for ICMD_SWAP.
+
+2006-07-14 17:07  edwin
+
+       * src/vm/jit/show.c (new_show_icmd): General handling of
+       INS_FLAG_UNRESOLVED.
+
+2006-07-14 17:06  edwin
+
+       * src/vm/jit/show.c (new_show_icmd): Fixed showing of LASTORECONST.
+
+2006-07-14 17:05  edwin
+
+       * src/vm/jit/stack.c (new_stack_analyse): Fixed propagation of
+       INS_FLAG_UNRESOLVED for PUTFIELDCONST/PUTSTATICCONST.
+
+2006-07-14 17:03  edwin
+
+       * src/vm/jit/stack.c (DUP_SLOT): Copy only TEMPVARs directly.
+
+2006-07-14 17:02  edwin
+
+       * src/vm/jit/parse.c (new_parse): No exception check for
+       MONITORENTER.
+
+2006-07-14 16:58  edwin
+
+       * src/vm/jit/show.c (new_show_stackvar): Show varkind and varnum for
+       variables with an invalid varkind.
+
+2006-07-14 16:56  edwin
+
+       * src/vm/jit/stack.c (new_stack_analyse): Use POPANY for DUP*
+       instructions, in order to set varkind correctly. The repeated
+       POPANY macros should probably be replaced by more efficient
+       code.
+
+2006-07-14 16:54  edwin
+
+       * src/vm/jit/allocator/simplereg.c (new_allocate_scratch_registers):
+       Fixed dupslots indices for ICMD_DUP_X1.
+
+2006-07-14 16:52  edwin
+
+       * src/vm/jit/parse.h (NEW_OP_STORE_ONEWORD): Store index in dst,
+       not in s1.
+       (NEW_OP_STORE_TWOWORD): Likewise.
+
+2006-07-13 11:54  twisti
+
+       * src/vm/jit/powerpc/codegen.c (codegen): Use lock_monitor_enter/exit
+       instead of builtin_monitorenter/exit.
+
+2006-07-13 11:17  motse
+
+       * doc/handbook/jvmti.tex: documentation of the cacao jvmti
+       implementation added to the cacao handbook
+       * doc/handbook/arch.eps: idem
+       * doc/handbook/cacao.tex: idem
+       * doc/handbook/java.bib: idem
+       * doc/handbook/arm.tex: added bounding box for arm-double-memory.png
+
+2006-07-13 10:26  twisti
+
+       * src/vm/jit/mips/codegen.c (codegen): Use lock_monitor_enter/exit
+       instead of builtin_monitorenter/exit.
+       (createnativestub): Don't use builtin_get_exceptionptrptr, but
+       codegen_finish_native_call for exception check.
+
+2006-07-12 22:55  twisti
+
+       * src/mm/memory.c (vm/vm.h): Added.
+       (memory_cnew): Replaced throw_cacao_exception_exit with vm_abort.
+       (dump_release): Likewise.
+       
+       * src/toolbox/util.c (_Jv_getcwd): Likewise.
+
+2006-07-12 22:12  twisti
+
+       * src/vm/jit/alpha/codegen.c (codegen): Use lock_monitor_enter/exit
+       instead of builtin_monitorenter/exit.
+
+2006-07-12 21:59  twisti
+
+       * src/vm/jit/i386/codegen.c (codegen): Use lock_monitor_enter/exit
+       instead of builtin_monitorenter/exit.
+
+2006-07-12 21:45  twisti
+
+       * src/vm/builtin.c (builtin_monitorenter): Removed.
+       (builtin_staticmonitorenter): Likewise.
+       (builtin_monitorexit): Likewise.
+       * src/vm/builtin.h: Likewise.
+       
+       * src/threads/native/lock.c (lock_monitor_enter): Don't pass
+       threadobject, get it in this function.
+       (lock_monitor_exit): Likewise.
+       
+       * src/threads/native/lock.h (lock_monitor_enter): Changed signature.
+       (lock_monitor_exit): Likewise.
+       (LOCK_monitor_enter): Defined.
+       (LOCK_monitor_exit): Likewise.
+       (LOCK_MONITOR_ENTER): Likewise.
+       (LOCK_MONITOR_EXIT): Likewise.
+       
+       * src/vm/suck.c: Use lock_monitor_enter/exit instead of
+       builtin_monitorenter/exit.
+       * src/vm/string.c: Likewise.
+       * src/vm/finalizer.c: Likewise.
+       * src/vm/classcache.c: Likewise.
+       * src/vm/initialize.c: Likewise.
+       * src/vm/jit/recompile.c: Likewise.
+       * src/vm/jit/show.c: Likewise.
+       * src/vm/jit/patcher.h: Likewise.
+       * src/vm/jit/parse.c: Likewise.
+       * src/vm/jit/x86_64/md.c: Likewise.
+       * src/vm/jit/x86_64/codegen.c: Likewise.
+       * src/vm/jit/jit.c: Likewise.
+       * src/vm/builtintable.inc: Likewise.
+       * src/vm/exceptions.c: Likewise.
+       * src/vm/linker.c: Likewise.
+       * src/vm/utf8.c: Likewise.
+       * src/native/jni.c: Likewise.
+       * src/native/native.c: Likewise.
+       * src/toolbox/avl.c: Likewise.
+       * src/toolbox/list.c: Likewise.
+       * src/mm/memory.c: Likewise.
+       * src/cacaoh/headers.h: Likewise.
+
+2006-07-12 21:33  twisti
+
+       * src/threads/Makefile.am: Added path to header.
+
+2006-07-12 21:32  twisti
+
+       * src/vm/jit/Makefile.am (RECOMPILE_SOURCES): Added, compile recompile
+       only if threads are enabled.
+       
+       * src/vm/vm.c (vm_create): Call recompile_init only if threads are
+       enabled.
+
+2006-07-12 21:27  twisti
+
+       * src/threads/none/.cvsignore: New file.
+
+2006-07-12 21:26  twisti
+
+       * src/threads/none/Makefile.am: New file.
+       * src/threads/none/lock.h: Likewise.
+       * src/threads/Makefile.am (DIST_SUBDIRS): Added.
+       * configure.ac (AC_CONFIG_FILES): Added src/threads/none/Makefile.
+
+2006-07-12 20:27  twisti
+
+       * src/vm/jit/powerpc/darwin/md-abi.c (md_return_alloc): Use
+       jd->isleafmethod.
+
+2006-07-12 20:14  twisti
+
+       * src/vm/jit/powerpc/codegen.c (codegen): Use jd->isleafmethod.
+       * src/vm/jit/powerpc/linux/md-abi.c (md_return_alloc): Likewise.
+
+2006-07-12 15:02  twisti
+
+       * src/vm/jit/recompile.c (recompile_replace_vftbl): #ifndef NDEBUG
+       debugging code.
+
+2006-07-12 14:55  twisti
+
+       * src/vm/jit/powerpc/linux/md-abi.c (vm/jit/abi.h): Added.
+       * src/vm/jit/powerpc/netbsd/md-abi.c: Likewise.
+       * src/vm/jit/powerpc/darwin/md-abi.c: Likewise.
+       * src/vm/jit/alpha/md-abi.c: Likewise.
+       * src/vm/jit/powerpc64/linux/md-abi.c: Likewise.
+       * src/vm/jit/i386/md-abi.c: Likewise.
+       
+       * src/vm/jit/sparc64/md-abi.c: Added GNU header.
+       (vm/jit/abi.h): Added.
+
+2006-07-12 14:53  twisti
+
+       * src/vm/jit/mips/codegen.c (codegen): Use jd->isleafmethod. Pass
+       register number to codegen_add_classcastexception_ref.
+       
+       * src/vm/jit/mips/md-abi.c (vm/jit/abi.h): Added.
+       (md_return_alloc): Changed signature.
+
+2006-07-12 14:42  edwin
+
+       * src/vm/jit/emit.h (emit_load): New function. This is a general
+       function for emitting loads that will keep its stackvar argument
+       after switching to the new instruction format. It will be used
+       for instructions with variable arguments, for example.
+       
+       * src/vm/jit/x86_64/emit.c (emit_load): New function.
+
+2006-07-12 13:52  twisti
+
+       * src/vm/jit/x86_64/codegen.c (codegen): Use jd->isleafmethod.
+       * src/vm/jit/x86_64/md-abi.c (md_return_alloc): Likewise.
+
+2006-07-12 13:47  twisti
+
+       * src/vm/jit/code.c (code_get_stack_frame_size): Commented code, we
+       need another implementation.
+
+2006-07-11 22:23  twisti
+
+       * src/vm/jit/x86_64/asmpart.S (asm_call_jit_compiler): Use
+       exceptions_get_and_clear_exception.
+       (asm_wrapper_patcher): Likewise.
+
+2006-07-11 19:17  twisti
+
+       * src/vm/jit/i386/emit.c: Changed prefix from i386_ to emit_.
+       (vm/jit/emit.h): Added.
+       (emit_load_s1_low): New function.
+       (emit_load_s2_low): New function.
+       
+       * src/vm/jit/i386/md.c (md_get_method_patch_address): Changed
+       instruction byte.
+       
+       * src/vm/jit/i386/md-emit.h: Changed prefix from i386_ to emit_. Added
+       architecture defines.
+       
+       * src/vm/jit/i386/codegen.c Changed the code generator to produce
+       RISC-like code. These are way too much changes to name them.
+       
+       * src/vm/jit/i386/codegen.h: Removed a lot of architecture stuff.
+       
+       * src/vm/jit/i386/patcher.c (vm/exceptions.h): Added.
+       (patcher_wrapper): New function.
+       (patcher_get_putstatic): Removed monitor enter/exit and return address
+       calculation, this is now done by the wrapper.
+       
+       (patcher_getfield): Likewise.
+       (patcher_putfield): Likewise.
+       (patcher_putfieldconst): Likewise.
+       (patcher_aconst): Likewise.
+       (patcher_builtin_multianewarray): Likewise.
+       (patcher_builtin_arraycheckcast): Likewise.
+       (patcher_invokestatic_special): Likewise.
+       (patcher_invokevirtual): Likewise.
+       (patcher_invokeinterface): Likewise.
+       (patcher_checkcast_instanceof_flags): Likewise.
+       (patcher_checkcast_instanceof_interface): Likewise.
+       (patcher_checkcast_class): Likewise.
+       (patcher_instanceof_class): Likewise.
+       (patcher_clinit): Likewise.
+       (patcher_athrow_areturn): Likewise.
+       (patcher_resolve_native): Likewise.
+       
+       * src/vm/jit/i386/asmpart.S (asm_vm_call_method): Changed calling
+       sequence of asm_call_jit_compiler.
+       (asm_call_jit_compiler): Use jit_asm_compile.
+       (asm_wrapper_patcher): Use patcher_wrapper.
+
+2006-07-11 18:39  twisti
+
+       * src/vm/jit/emit.h [SIZEOF_VOID_P == 4] (emit_store_low): Added.
+       [SIZEOF_VOID_P == 4] (emit_store_high): Likewise.
+
+2006-07-11 18:35  twisti
+
+       * src/vm/jit/i386/md-asm.h (mptr): Added.
+
+2006-07-11 18:34  twisti
+
+       * src/vm/jit/i386/md-abi.h (REG_METHODPTR): Added.
+       (REG_ITMP12_PACKED): Likewise.
+       (REG_ITMP13_PACKED): Likewise.
+       (REG_ITMP23_PACKED): Likewise.
+       (REG_RESULT_PACKED): Likewise.
+       (EAX_EDX_PACKED): Likewise.
+
+2006-07-11 17:10  twisti
+
+       * src/vm/jit/alpha/patcher.c (patcher_wrapper): Added return address
+       calculation.
+       (patcher_get_putstatic): Removed return address calculation.
+       (patcher_get_putfield): Likewise.
+       (patcher_aconst): Likewise.
+       (patcher_builtin_multianewarray): Likewise.
+       (patcher_builtin_arraycheckcast): Likewise.
+       (patcher_invokestatic_special): Likewise.
+       (patcher_invokevirtual): Likewise.
+       (patcher_invokeinterface): Likewise.
+       (patcher_checkcast_instanceof_flags): Likewise.
+       (patcher_checkcast_instanceof_interface): Likewise.
+       (patcher_checkcast_instanceof_class): Likewise.
+       (patcher_clinit): Likewise.
+       (patcher_athrow_areturn): Likewise.
+       (patcher_resolve_native): Likewise.
+
+2006-07-10 17:22  twisti
+
+       * configure.ac (disassembler): Disabled by default, made too many
+       problems.
+       
+       * src/vm/vm.c (toolbox/util.h): Added.
+       (vm_create): Save VM start time, #ifdef disassembler stuff.
+       
+       * src/native/jni.h (_Jv_JavaVM): Added starttime and
+       Java_gnu_java_lang_management_VMMemoryMXBeanImpl_verbose.
+       
+       * src/toolbox/util.c (config.h): Added.
+       (sys/time.h): Likewise.
+       (vm/vm.h): Likewise.
+       (util_current_time_millis): New function.
+       
+       * src/toolbox/util.h (config.h): Added.
+       (vm/types.h): Likewise.
+       (util_current_time_millis): New function.
+
+2006-07-10 14:47  twisti
+
+       * src/vm/jit/alpha/codegen.c codegen): CHECKCAST: Load s1 again before
+       exception check.
+
+2006-07-10 14:42  twisti
+
+       * src/vm/jit/i386/emit.c (i386_call_mem): Removed.
+
+2006-07-10 14:41  twisti
+
+       * src/vm/jit/i386/codegen.c (codegen): CHECKCAST: Load s1 again before
+       exception check.
+       (callgetexceptionptrptr): Removed.
+
+2006-07-10 14:22  twisti
+
+       * src/vm/jit/i386/codegen.c (codegen): Use jd->isleafmethod.
+
+2006-07-10 14:20  twisti
+
+       * src/vm/jit/jit.c (jit_jitdata_new): New function.
+       (jit_compile): Use jit_jitdata_new.
+       (jit_recompile): Likewise.
+
+2006-07-10 14:11  twisti
+
+       * NEWS: Added ClassCastException and system assertions.
+       * src/vm/jit/stack.c (new_stack_analyse): Changed missing
+       jd->isleafmethod.
+       (stack_analyse): Likewise.
+
+2006-07-10 14:02  twisti
+
+       * src/vm/jit/code.h (codeinfo): Removed basicblocks and isleafmethod.
+       * src/vm/jit/jit.h (jitdata): Added isleafmethod.
+       
+       * src/vm/jit/alpha/codegen.c (codegen): Use jd->isleafmethod. Pass
+       register number to codegen_add_classcastexception_ref.
+       
+       * src/vm/jit/allocator/simplereg.c (interface_regalloc): Use
+       jd->isleafmethod.
+       (local_regalloc): Likewise.
+       
+       * src/vm/jit/parse.c (new_parse): Likewise.
+       (parse): Likewise.
+       
+       * src/vm/jit/parse.h (NEW_OP_BUILTIN_CHECK_EXCEPTION): Likewise.
+       (NEW_OP_BUILTIN_NO_EXCEPTION): Likewise.
+       (NEW_OP_BUILTIN_ARITHMETIC): Likewise.
+       (BUILTIN): Likewise.
+
+2006-07-10 13:53  twisti
+
+       * src/vm/jit/powerpc64/linux/.cvsignore: New file.
+       * src/vm/jit/powerpc64/.cvsignore: Likewise.
+
+2006-07-10 13:51  twisti
+
+       * src/vm/jit/alpha/patcher.c (assert.h): Added.
+       (vm/exceptions.h): Added.
+       (vm/jit/methodheader.h): Likewise.
+       (patcher_wrapper): New function.
+       (patcher_get_putstatic): Removed monitor enter/exit, this is now done
+       by the wrapper.
+       (patcher_get_putfield): Likewise.
+       (patcher_aconst): Likewise.
+       (patcher_builtin_multianewarray): Likewise.
+       (patcher_builtin_arraycheckcast): Likewise.
+       (patcher_invokestatic_special): Likewise.
+       (patcher_invokevirtual): Likewise.
+       (patcher_invokeinterface): Likewise.
+       (patcher_checkcast_instanceof_flags): Likewise.
+       (patcher_checkcast_instanceof_interface): Likewise.
+       (patcher_checkcast_instanceof_class): Likewise.
+       (patcher_clinit): Likewise.
+       (patcher_athrow_areturn): Likewise.
+       (patcher_resolve_native): Likewise.
+       
+       * src/vm/jit/alpha/asmpart.S (asm_wrapper_patcher): Use
+       patcher_wrapper.
+       
+       * src/vm/jit/alpha/md-abi.c (md_return_alloc): Changed signature.
+
+2006-07-10 13:36  twisti
+
+       * src/vm/statistics.c (count_class_infos): Renamed to size_classinfo.
+       (size_fieldinfo): Added.
+       (size_methodinfo): Likewise.
+       (size_codeinfo): Likewise.
+       (print_stats): Print new variables.
+       
+       * src/vm/statistics.h (count_class_infos): Renamed to size_classinfo.
+       (size_fieldinfo): Added.
+       (size_methodinfo): Likewise.
+       (size_codeinfo): Likewise.
+       
+       * src/vm/class.c (class_create_classinfo): Renamed count_class_infos
+       to size_classinfo.
+       
+       * src/vm/loader.c (load_class_from_classbuffer): Likewise and use new
+       variables.
+       
+       * src/vm/jit/code.c [ENABLE_STATISTICS] (code_codeinfo_new): Add
+       codeinfo size.
+       [ENABLE_STATISTICS] (code_codeinfo_free): Subtract codeinfo size.
+
+2006-07-10 10:18  twisti
+
+       * src/vm/jit/x86_64/codegen.c (codegen): Pass register number to
+       codegen_add_classcastexception_ref.
+
+2006-07-10 10:01  twisti
+
+       * src/lib/vm/reference/java/lang/VMClassLoader.java
+       (defaultAssertionStatus): Made native.
+       * src/native/vm/VMClassLoader.c (defaultAssertionStatus): Added.
+       
+       * src/native/jni.h (_Jv_JavaVM): Added
+       Java_java_lang_VMClassLoader_defaultAssertionStatus.
+       
+       * src/vm/vm.c (OPT_ESA): Added.
+       (OPT_DSA): Likewise.
+
+2006-07-08 22:07  twisti
+
+       * src/vm/jit/methodheader.h (ExEntrySize): Removed.
+       (ExStartPC): Likewise.
+       (ExEndPC): Likewise.
+       (ExHandlerPC): Likewise.
+       (ExCatchType): Likewise.
+
+2006-07-08 20:32  twisti
+
+       * src/vm/jit/i386/codegen.c (codegen): Pass register number to
+       codegen_add_classcastexception_ref.
+
+2006-07-08 20:16  twisti
+
+       * src/vm/utf8.c (utf_java_lang_ClassCastException): Added.
+       (utf8_init): Initialize utf_java_lang_ClassCastException.
+       * src/vm/utf8.h (utf_java_lang_ClassCastException): Added.
+       
+       * src/vm/class.c (class_java_lang_ClassCastException): Added.
+       * src/vm/class.h (class_java_lang_ClassCastException): Likewise.
+       
+       * src/vm/exceptions.c (exceptions_init): Initialize
+       class_java_lang_ClassCastException.
+       
+       (new_classcastexception): Renamed to
+       exceptions_new_classcastexception, pass the failing class name to the
+       exception.
+       
+       * src/vm/exceptions.h (exceptionptr): Use thread object directly.
+       (new_classcastexception): Renamed to
+       exceptions_new_classcastexception.
+       
+       * src/vm/jit/stacktrace.c (stacktrace_inline_classcastexception):
+       Changed signature.
+       * src/vm/jit/stacktrace.h (stacktrace_inline_classcastexception):
+       Likewise.
+       
+       * src/vm/jit/codegen-common.c (codegen_add_classcastexception_ref):
+       Likewise.
+       * src/vm/jit/codegen-common.h (codegen_add_classcastexception_ref):
+       Likewise.
+       
+       * src/vm/jit/powerpc/codegen.c (codegen): Pass register number to
+       codegen_add_classcastexception_ref.
+
+2006-07-08 19:08  twisti
+
+       * src/vm/jit/i386/codegen.c (createnativestub): Don't use
+       builtin_get_exceptionptrptr, but codegen_finish_native_call for
+       exception check.
+
+2006-07-08 18:28  twisti
+
+       * configure.ac: Use ARCH_CFLAGS and OPT_CFLAGS instead of CFLAGS and
+       pass the flags via AM_CFLAGS to Makefile's.
+
+2006-07-08 14:20  twisti
+
+       * src/vm/jit/stacktrace.c (stacktrace_create): Added another code ==
+       NULL check.
+
+2006-07-06 22:52  twisti
+
+       * src/vm/jit/powerpc/darwin/md-abi.h (REG_ITMP12_PACKED): Added.
+       (REG_RESULT_PACKED): Added.
+       
+       * src/vm/jit/powerpc/darwin/md-asm.h (patcher_wrapper): Added.
+       
+       * src/vm/jit/powerpc/darwin/md-abi.c (md_return_alloc): Changed
+       signature.
+       
+       * src/vm/jit/powerpc/asmpart.S (L_patcher_wrapper$stub): Added.
+
+2006-07-06 14:19  twisti
+
+       * src/vm/jit/x86_64/codegen.c (codegen): Use code variables.
+       (createnativestub): Likewise and don't use
+       builtin_get_exceptionptrptr, but codegen_finish_native_call for
+       exception check.
+       
+       * src/vm/jit/x86_64/codegen.h (PROFILE_CYCLE_START): Use code
+       variables.
+       (PROFILE_CYCLE_STOP): Likewise.
+       
+       * src/vm/jit/x86_64/md-abi.c (md_return_alloc): Changed signature.
+
+2006-07-06 14:10  tbfg
+
+       fixed isleafmethod is now part of code issues
+
+2006-07-06 13:59  tbfg
+
+       powerpc64 compiles
+       arch.h and md-abi.h: modified PV register assignment
+
+2006-07-06 12:42  twisti
+
+       * src/vm/jit/i386/codegen.c (codegen): Use code->isleafmethod.
+       * src/vm/jit/i386/md-abi.c (md_return_alloc): Changed signature.
+
+2006-07-06 11:36  twisti
+
+       * src/vm/method.h (methodinfo): Removed isleafmethod, frequency,
+       bbfrequency and cycles.
+       
+       * src/vm/jit/powerpc/linux/md-abi.c (md_return_alloc): Changed
+       signature, use code->isleafmethod.
+       
+       * src/vm/jit/powerpc/linux/md-abi.h (REG_IFTMP): Changed from 0 to 16.
+       (REG_ITMP12_PACKED): Added.
+       (REG_RESULT_PACKED): Likewise.
+       
+       * src/vm/jit/powerpc/codegen.c (vm/jit/methodheader.h): Added.
+       (codegen): Use code->isleafmethod, added instrumentation code.
+       
+       * src/vm/jit/abi.h (md_return_alloc): Added.
+       
+       * src/vm/jit/stack.c (new_stack_analyse): Use code->isleafmethod.
+       (stack_analyse): Likewise.
+       
+       * src/vm/jit/stack.h (md_return_alloc): Removed.
+       
+       * src/vm/jit/code.c (code_codeinfo_new): Don't memset as NEW already
+       does that, set isleafmethod to true.
+       
+       * src/vm/jit/code.h (codeinfo): Added basicblockcount and basicblocks.
+       
+       * src/vm/jit/allocator/simplereg.c (interface_regalloc): Use
+       code->isleafmethod.
+       (local_regalloc): Likewise.
+       
+       * src/vm/jit/parse.c (new_parse): Likewise.
+       (parse): Likewise.
+       
+       * src/vm/jit/parse.h (NEW_OP_BUILTIN_CHECK_EXCEPTION): Likewise.
+       (NEW_OP_BUILTIN_NO_EXCEPTION): Likewise.
+       (NEW_OP_BUILTIN_ARITHMETIC): Likewise.
+       (BUILTIN): Likewise.
+       
+       * src/vm/jit/replace.c (replace_create_replacement_points): Don't set
+       code->isleafmethod, it's already set.
+       
+       * src/vm/jit/profile/profile.c (profile_printstats): Use code
+       variables.
+       
+       * src/vm/jit/jit.c (jit_compile_intern): Don't set m->isleafmethod.
+       
+       * src/cacaoh/headers.c: Use stackcount instead of isleafmethod.
+
+2006-07-05 11:48  twisti
+
+       * src/vm/descriptor.h: Removed space.
+
+2006-07-04 19:06  twisti
+
+       * src/vm/jit/powerpc/darwin/md-asm.h
+       (builtin_asm_get_exceptionptrptr): Removed.
+       (_no_threads_exceptionptr): Likewise.
+       (exceptions_get_and_clear_exception): Added.
+       
+       * src/vm/jit/powerpc/patcher.c (vm/exceptions.h): Added.
+       (vm/jit/methodheader.h): Likewise.
+       (patcher_wrapper): New function.
+       (patcher_get_putstatic): Removed monitor enter/exit, this is now done
+       by the wrapper.
+       (patcher_get_putfield): Likewise.
+       (patcher_aconst): Likewise.
+       (patcher_builtin_multianewarray): Likewise.
+       (patcher_builtin_arraycheckcast): Likewise.
+       (patcher_invokestatic_special): Likewise.
+       (patcher_invokevirtual): Likewise.
+       (patcher_invokeinterface): Likewise.
+       (patcher_checkcast_instanceof_flags): Likewise.
+       (patcher_checkcast_instanceof_interface): Likewise.
+       (patcher_checkcast_class): Likewise.
+       (patcher_instanceof_class): Likewise.
+       (patcher_clinit): Likewise.
+       (patcher_athrow_areturn): Likewise.
+       (patcher_resolve_native): Likewise.
+       
+       * src/vm/jit/powerpc/asmpart.S (asm_call_jit_compiler): Use
+       exceptions_get_and_clear_exception.
+       (asm_wrapper_patcher): Likewise, use patcher_wrapper.
+       (L_builtin_asm_get_exceptionptrptr$stub): Removed.
+       (L_exceptions_get_and_clear_exception$stub): Added.
+       
+       * src/vm/jit/patcher.h (assert.h): Added.
+       (PATCHER_FLAG_PATCHED): Likewise.
+       (PATCHER_MONITORENTER): Added assert and return NULL.
+       (PATCHER_MARK_PATCHED_MONITOREXIT): Use PATCHER_FLAG_PATCHED.
+       (patcher_wrapper): Added.
+
+2006-07-04 18:24  twisti
+
+       * src/vm/jit/powerpc/codegen.c (createnativestub): Don't use
+       builtin_get_exceptionptrptr, but codegen_finish_native_call for
+       exception check.
+
+2006-07-04 16:56  twisti
+
+       * tests/regression/codepatching/test.java: Catch only thrown
+       exceptions.
+
+2006-07-04 16:05  twisti
+
+       * src/vm/jit/powerpc/darwin/md-os.c (md_signal_handler_sigusr2): New
+       function.
+       
+       * src/vm/jit/powerpc/darwin/md-asm.h (asm_handle_nullptr_exception):
+       Removed.
+       (asm_abstractmethoderror): Added.
+       (exceptions_asm_new_abstractmethoderror): Likewise.
+       * src/vm/jit/powerpc/asmpart.S
+       (L_exceptions_asm_new_abstractmethoderror$stub): Added.
+
+2006-07-04 16:02  twisti
+
+       * src/vm/jit/powerpc/darwin/md-abi.c (md_param_alloc): Code
+       beautifying.
+
+2006-07-03 14:06  twisti
+
+       * src/vm/jit/alpha/asmpart.S (asm_call_jit_compiler): Use
+       exceptions_get_and_clear_exception.
+       (asm_wrapper_patcher): Likewise.
+
+2006-07-03 13:49  twisti
+
+       * src/vm/jit/codegen-common.c (codegen_finish_native_call): Check for
+       exception and return it.
+       * src/vm/jit/codegen-common.h (codegen_finish_native_call): Changed
+       signature.
+       
+       * src/vm/jit/alpha/codegen.c (createnativestub): Don't use
+       builtin_get_exceptionptrptr, but codegen_finish_native_call for
+       exception check.
+       
+       * src/vm/jit/alpha/codegen.h (M_ASUB_IMM): Added.
+
+2006-07-03 13:46  twisti
+
+       * src/vm/jit/alpha/md-abi.c (nregdescint): Added comments.
+
+2006-07-03 13:45  twisti
+
+       * src/vm/jit/alpha/linux/md-os.c (md_signal_handler_sigusr2): New
+       method.
+       (thread_restartcriticalsection): Code cleanup.
+
+2006-07-03 12:06  twisti
+
+       * src/vm/jit/alpha/asmpart.S (asm_abstractmethoderror): New method.
+
+2006-07-03 10:18  twisti
+
+       * src/vm/exceptions.c (exceptions_get_and_clear_exception): New
+       function.
+       * src/vm/exceptions.h (exceptions_get_and_clear_exception): Added.
+
+2006-07-02 18:31  twisti
+
+       * src/lib/vm/reference/gnu/java: Added.
+       * src/lib/vm/reference/gnu/java/lang: Likewise.
+       * src/lib/vm/reference/gnu/java/lang/management: Likewise.
+       *
+       src/lib/vm/reference/gnu/java/lang/management/VMRuntimeMXBeanImpl.java:
+       New file.
+       * src/lib/Makefile.am (VM_JAVA_FILES): Added
+       src/lib/vm/reference/gnu/java/lang/management/VMRuntimeMXBeanImpl.java.
+       (VM_CLASS_FILES): Added
+       classes/gnu/java/lang/management/VMRuntimeMXBeanImpl.class.
+       (vm.zip, nozip): Removed ecj check.
+       
+       * src/native/vm/gnu_java_lang_management_VMRuntimeMXBeanImpl.c: New
+       file.
+       * src/native/vm/Makefile.am (libnativevm_la_SOURCES): Added
+       gnu_java_lang_management_VMRuntimeMXBeanImpl.c.
+       
+       * src/native/include/.cvsignore: Added
+       gnu_java_lang_management_VMRuntimeMXBeanImpl.h.
+       * src/native/include/Makefile.am
+       (ADDITIONAL_IMPLEMENTED_VM_CLASSES_HEADER_FILES): Added
+       gnu_java_lang_management_VMRuntimeMXBeanImpl.h.
+       
+       * src/native/native.c
+       (native/include/gnu_java_lang_management_VMRuntimeMXBeanImpl.h):
+       Added.
+       (dummynativetable): Added
+       Java_gnu_java_lang_management_VMRuntimeMXBeanImpl_getInputArguments
+       and Java_gnu_java_lang_management_VMRuntimeMXBeanImpl_getStartTime.
+
+2006-07-02 18:24  twisti
+
+       * m4/ac_prog_javac.m4 (AC_PROG_JAVAC): Add -1.5 option when using ecj.
+
+2006-07-02 11:00  twisti
+
+       * m4/ac_prog_javac.m4 (AC_PROG_JAVAC): Added bootclasspath to compiler
+       checks.
+
+2006-07-02 10:42  twisti
+
+       * src/vm/jit/mips/asmpart.S (asm_abstractmethoderror): New function.
+
+2006-06-28 22:47  twisti
+
+       * NEWS: Added new release.
+
+2006-06-28 22:38  twisti
+
+       * src/lib/vm/reference/java/lang/VMThread.java: Updated to GNU
+       Classpath version.
+
+2006-06-28 21:52  twisti
+
+       * src/vm/jit/powerpc/asmpart.S (asm_abstractmethoderror): New
+       function.
+
+2006-06-28 21:51  twisti
+
+       * src/vm/exceptions.c (exceptions_handle_exception): Typo.
+
+2006-06-28 21:46  twisti
+
+       * src/vm/linker.c (link_class_intern): Fixed compiler warning, added
+       comment.
+       (linker_addinterface): Fixed compiler warning.
+
+2006-06-28 21:44  edwin
+
+       * src/vm/linker.c (link_class_intern): Converted the check against
+       creating a stubroutine twice into an assert. The check became
+       obsolete because abstract methods do no longer get compiler stubs.
+
+2006-06-28 21:01  edwin
+
+       * src/vm/linker.c (link_class_intern): Do not generate compiler
+       stubs for abstract methods.
+
+2006-06-28 20:33  edwin
+
+       * src/vm/jit/intrp/codegen.c (intrp_codegen): Changed MethodPointer
+       in method header to CodeinfoPointer.
+       (intrp_createcompilerstub): Likewise.
+       (intrp_createnativestub): Likewise.
+       (createcalljavafunction): Likewise.
+       
+       * src/vm/jit/intrp/asmpart.c (intrp_asm_handle_exception):
+       Changed MethodPointer in method header to CodeinfoPointer.
+
+2006-06-28 19:43  twisti
+
+       * src/vm/exceptions.c (exceptions_asm_new_abstractmethoderror): New
+       function.
+       * src/vm/exceptions.h (exceptions_asm_new_abstractmethoderror): Added.
+       
+       * src/vm/jit/x86_64/asmpart.S (asm_abstractmethoderror): Use
+       exceptions_asm_new_abstractmethoderror.
+       * src/vm/jit/i386/asmpart.S (asm_abstractmethoderror): Likewise.
+
+2006-06-28 19:11  twisti
+
+       * src/vm/utf8.c (utf_java_lang_AbstractMethodError): Added.
+       (utf8_init): Initialize utf_java_lang_AbstractMethodError.
+       * src/vm/utf8.h (utf_java_lang_AbstractMethodError): Added.
+       
+       * src/vm/class.c (class_java_lang_AbstractMethodError): Added.
+       (class_resolveclassmethod): Use exceptions_throw_abstractmethoderror.
+       * src/vm/class.h (class_java_lang_AbstractMethodError): Added.
+       
+       * src/vm/exceptions.c (exceptions_init): Initialize
+       class_java_lang_AbstractMethodError.
+       (exceptions_new_abstractmethoderror): New function.
+       (exceptions_throw_abstractmethoderror): Likewise.
+       * src/vm/exceptions.h (exceptions_new_abstractmethoderror)
+       (exceptions_throw_abstractmethoderror): Added.
+       
+       * src/vm/resolve.c (resolve_method_invokespecial_lookup): Use
+       exceptions_throw_abstractmethoderror.
+       
+       * src/vm/jit/asmpart.h (asm_abstractmethoderror): Added.
+       
+       * src/vm/jit/i386/asmpart.S (asm_abstractmethoderror): New function.
+       * src/vm/jit/x86_64/asmpart.S (asm_abstractmethoderror): Likewise.
+       
+       * src/vm/linker.c (link_class_intern): Fill empty slots in vftbl with
+       the AbstractMethodError stub.
+       (linker_addinterface): Insert the AbstractMethodError stub if no
+       suitable method was found.
+       
+       * src/cacaoh/headers.c (asm_abstractmethoderror): Added.
+       (exceptions_throw_abstractmethoderror): Likewise.
+
+2006-06-28 17:05  twisti
+
+       * src/vm/jit/jit.h (JITDATA_FLAG_INSTRUMENT)
+       (JITDATA_HAS_FLAG_INSTRUMENT): Likewise.
+       (ICMD_OPCODE_MASK, ICMD_CONDITION_MASK): Removed.
+       
+       * src/vm/jit/allocator/simplereg.c (allocate_scratch_registers):
+       Removed ICMD_OPCODE_MASK.
+       
+       * src/vm/jit/show.c (show_icmd): Commented conditional stuff, maybe I
+       need it again someday.
+       
+       * src/vm/jit/x86_64/emit.c (emit_store): Likewise.
+       (emit_cmovxx): Likewise.
+       * src/vm/jit/codegen-common.c (codegen_reg_of_var): Likewise.
+
+2006-06-28 15:39  twisti
+
+       * src/vm/jit/x86_64/md.c [ENABLE_THREADS] (threads/native/threads.h):
+       Added.
+       (md_signal_handler_sigusr2): New function.
+       (thread_restartcriticalsection): Code cleanup.
+
+2006-06-28 08:24  twisti
+
+       * src/scripts/.cvsignore: Removed cacao, jarsigner, javac and keytool.
+       * src/scripts: Updated svn:ignore.
+       
+       * src/scripts/Makefile.am (bin_SCRIPTS): Removed jarsigner and
+       keytool, there are now wrappers in GNU Classpath.
+       
+       * src/scripts/javac.in: Removed.
+       * src/scripts/jarsigner.in: Likewise.
+       * src/scripts/cacao.in: Likewise.
+       * src/scripts/keytool.in: Likewise.
+       
+       * configure.ac (AC_CONFIG_FILES): Removed src/scripts/jarsigner and
+       src/scripts/keytool.
+
+2006-06-23 12:07  twisti
+
+       * src/vm/string.c (javastring_toutf): Check for NULL and return
+       utf_null.
+       (literalstring_u2): Replaced list_addfirst with list_add_first.
+       
+       * src/vm/builtin.h (BUILTIN_MONITOR_ENTER, BUILTIN_MONITOR_EXIT):
+       Defined.
+       
+       * src/vm/jit/powerpc/codegen.c (codegen): Don't use
+       BUILTIN_staticmonitorenter, use JITDATA_HAS_FLAG_VERBOSECALL instead
+       of opt_verbosecall.
+       (createnativestub): Likewise.
+       
+       * src/vm/jit/code.c: Smaller changes.
+       
+       * src/vm/jit/code.h (codeinfo): Added optlevel.
+       
+       * src/vm/jit/Makefile.am (libjit_la_SOURCES): Added recompile.[ch].
+       * src/vm/jit/recompile.c: New file.
+       * src/vm/jit/recompile.h: Likewise.
+       
+       * src/vm/jit/show.c (new_show_method, show_method)
+       (new_show_basicblock, show_basicblock): Use
+       JITDATA_HAS_FLAG_SHOWDISASSEMBLE instead of opt_showdisassemble.
+       
+       * src/vm/jit/profile/profile.c (vm/jit/jit.h): Added.
+       (list_method_entry): Moved to src/vm/jit/recompile.h.
+       (profile_thread): First real implementation.
+       (profile_start_thread): Better code.
+       (profile_printstats): Use codeinfo frequencies.
+       
+       * src/vm/jit/jit.c (jit_compile): Set jd->flags properly. Moved
+       codeinfo memory freeing before dump_release because we need jd, which
+       is allocated on dump memory.
+       (jit_recompile): New function.
+       (jit_compile_intern): Use jd->flags.
+       
+       * src/vm/jit/codegen-common.c (codegen_createnativestub): Set
+       jd->flags.
+       
+       * src/vm/jit/jit.h (JITDATA_FLAG_PARSE, JITDATA_FLAG_VERIFY)
+       (JITDATA_FLAG_SHOWINTERMEDIATE, JITDATA_FLAG_SHOWDISASSEMBLE)
+       (JITDATA_FLAG_VERBOSECALL): Added.
+       (JITDATA_HAS_FLAG_PARSE, JITDATA_HAS_FLAG_VERIFY)
+       (JITDATA_HAS_FLAG_IFCONV, JITDATA_HAS_FLAG_SHOWINTERMEDIATE)
+       (JITDATA_HAS_FLAG_SHOWDISASSEMBLE, JITDATA_HAS_FLAG_VERBOSECALL):
+       Likewise.
+       (jit_recompile): Likewise.
+       
+       * src/vm/vm.c (vm/jit/recompile.h): Added.
+       (vm_create): Call recompile_init and recompile_start_thread.
+       
+       * src/toolbox/list.h (config.h, vm/types.h, vm/global.h): Added.
+       (list): Added lock.
+       (list_init): Renamed to list_create.
+       (list_addfirst): Renamed to list_add_first.
+       (list_addlast): Renamed to list_add_last.
+       (list_add_last_unsynced): New function.
+       
+       * src/toolbox/list.c (mm/memory.h, threads/native/threads.h)
+       (vm/builtin.h): Added.
+       (list_init): Renamed to list_create.
+       (list_addfirst): Renamed to list_add_first and made synchronized.
+       (list_addlast): Likewise.
+       (list_add_last_unsynced): Likewise.
+       (list_add_before): Made synchronized.
+       (list_remove): Likewise.
+       (list_first): Likewise.
+       (list_last): Likewise.
+       (list_next): Likewise.
+       (list_prev): Likewise.
+       
+       * src/vm/suck.c (suck_init): Replaced list_init with list_create.
+       (suck_add): Replaced list_addlast with list_add_last.
+       
+       * src/vm/loader.c (load_constantpool): Replaced list_addfirst with
+       list_add_first.
+       (load_newly_created_array): Likewise.
+       
+       * src/vm/properties.c (properties_init): Replaced list_init with
+       list_create.
+       (properties_add): Use list_add_last_unsynced, as this is required
+       during bootstrapping.
+       
+       * src/threads/native/threads.h (THREAD_FLAG_JAVA)
+       (THREAD_FLAG_INTERNAL): Added.
+       (threadobject): Added flags.
+       
+       * src/threads/native/threads.c (threads_init): Flag main thread as
+       Java thread (required for profiling sampling).
+       (threads_startup_thread): Flag threads as Java or internal thread.
+
+2006-06-23 09:23  twisti
+
+       * src/vm/linker.c (vm/vm.h): Added.
+
+2006-06-22 18:48  twisti
+
+       * src/vm/utf8.c, src/vm/utf8.h (utf_null): Added.
+
+2006-06-22 14:39  twisti
+
+       * src/vm/utf8.c (utf8_init): Compile fix with ENABLE_STATISTICS.
+
+2006-06-21 16:29  ajordan
+
+       * configure.ac: Added support for compiling on sparc64
+       
+       * src/vm/jit/Makefile.am: Added sparc64 subdirectory
+       
+       * src/vm/jit/sparc64/*: Added files for the sparc64 JIT (which won't
+       compile yet)
+
+2006-06-21 08:30  twisti
+
+       * src/vm/jit/mips/linux/.cvsignore: Added TAGS.
+
+2006-06-20 15:50  twisti
+
+       * src/vm/jit/mips/codegen.c (codegen): Use codeinfo instead of
+       methodinfo.
+       (createcompilerstub): Likewise.
+       (createnativestub): Likewise.
+       
+       * src/vm/jit/mips/asmpart.S (asm_vm_call_method): Likewise.
+
+2006-06-20 11:55  twisti
+
+       * src/vm/jit/alpha/codegen.c (codegen): Use codeinfo instead of
+       methodinfo.
+       (createcompilerstub): Likewise.
+       (createnativestub): Likewise.
+       
+       * src/vm/jit/alpha/asmpart.S (asm_vm_call_method): Likewise.
+
+2006-06-20 09:10  twisti
+
+       * src/vm/jit/x86_64/codegen.c (codegen): Use codeinfo instead of
+       methodinfo.
+       (createcompilerstub): Likewise.
+       (createnativestub): Likewise.
+       
+       * src/vm/jit/x86_64/asmpart.S (asm_vm_call_method): Likewise.
+
+2006-06-19 22:53  twisti
+
+       * src/vm/jit/i386/codegen.c (codegen): Use codeinfo instead of
+       methodinfo.
+       (createcompilerstub): Likewise.
+       (createnativestub): Likewise.
+       
+       * src/vm/jit/i386/asmpart.S (asm_vm_call_method): Likewise.
+
+2006-06-19 22:23  twisti
+
+       * src/threads/native/threads.h (threadobject): Added pc.
+
+2006-06-19 22:22  twisti
+
+       * src/vm/jit/methodheader.h (MethodPointer): Removed.
+       (CodeinfoPointer): Added.
+       
+       * src/vm/method.c (method_vftbl_lookup): Use CodeinfoPointer.
+       
+       * src/vm/jit/powerpc/codegen.c (codegen): Use codeinfo instead of
+       methodinfo.
+       (createcompilerstub): Likewise.
+       (createnativestub): Likewise.
+       
+       * src/vm/jit/powerpc/asmpart.S: Likewise.
+       
+       * src/vm/jit/stacktrace.c (stacktrace_create_stackframeinfo):
+       Likewise.
+       (stacktrace_create_native_stackframeinfo): Likewise.
+       (stacktrace_add_method): Likewise.
+       (stacktrace_create): Likewise.
+       
+       * src/vm/exceptions.c (exceptions_handle_exception): Likewise.
+       
+       * src/vm/jit/codegen-common.c (codegen_findmethod): Define for all
+       architectures. Removed assert, we have to check that somewhere else.
+       (codegen_finish): Add the method for all architectures.
+       
+       * src/vm/jit/codegen-common.h (methodtree_element): Likewise.
+       
+       * src/vm/jit/profile/profile.c (profile_thread): First implementation.
+       * src/vm/jit/profile/profile.h (vm/global.h): Added.
+       
+       * src/vm/signal.c (signal_init): Install SIGUSR2 for profiling.
+       * src/vm/signallocal.h (md_signal_handler_sigusr2): Added.
+       * src/vm/jit/powerpc/linux/md-os.c (md_signal_handler_sigusr2): New
+       method.
+       
+       * src/vm/vm.c (vm_create): Call profile_start_thread only with
+       opt_prof.
+       
+       * src/cacaoh/headers.c (exceptions_throw_nosuchmethoderror): Added.
+
+2006-06-19 21:39  twisti
+
+       * src/vm/class.c (class_resolveinterfacemethod_intern): Smaller
+       changes.
+       (class_resolveclassmethod): Likewise.
+
+2006-06-19 21:04  twisti
+
+       * src/vm/linker.c (link_class_inter): Smaller changes.
+       (linker_addinterface): Likewise, added some comments about checks we
+       should do.
+
+2006-06-19 21:00  twisti
+
+       * src/vm/jit/powerpc/patcher.c (assert.h): Added.
+       (patcher_invokeinterface): Added XXX comments.
+
+2006-06-19 20:51  twisti
+
+       * configure.ac (profiling): Disable by default.
+
+2006-06-19 12:36  twisti
+
+       * src/native/jni.c (AttachCurrentThread): Removed dummy
+       implementation.
+       (GetEnv): Use switch instead of if's.
+
+2006-06-14 18:55  motse
+
+       * src/native/native.c (native_resolve_function): fix/add to my last
+       incomplete commit.
+
+2006-06-14 18:36  motse
+
+       * src/vm/loader.c (load_class_from_classloader): Add call to jvmti
+       Class Load and Prepare event.
+       
+       * src/native/jni.c (RegisterNatives): Add comment for calling jvmti
+       Native Method Bind event.
+       
+       * src/native/vm/VMClassLoader.c (defineClass): Add call to jvmti
+       Class File Load Hook event.
+       
+       * src/native/vm/VMObject.c (wait): Add call to jvmti Monitor Wait
+       and Waited event.
+       
+       * src/native/native.c (native_resolve_function): Add call to jvmti
+       Native Method Bind event.
+       
+       * src/native/jvmti/cacaodbg.c (jvmti_ClassFileLoadHook): new function
+       to supprt event.
+       (jvmti_ClassLoadPrepare): idem
+       (jvmti_MonitorContendedEntering): idem
+       (jvmti_MonitorWaiting): idem
+       (jvmti_ThreadStartEnd): idem
+       (jvmti_NativeMethodBind): idem
+       
+       * src/native/jvmti/cacaodbg.h: Add function headers for
+       jvmti_ClassFileLoadHook, jvmti_ClassLoadPrepare,
+       jvmti_MonitorContendedEntering, jvmti_MonitorWaiting,
+       jvmti_ThreadStartEnd, jvmti_NativeMethodBind.
+       
+       * src/native/jvmti/jvmti.c (execute_callback): Add support for Class
+       File Load Hook event.
+       (GetOwnedMonitorInfo): Adapt lock record iteration to new
+       data structure.
+       (GetCurrentContendedMonitor): idem
+       
+       * src/threads/native/lock.c (lock_monitor_enter): Add call to jvmti
+       Monitor Contended Enter and Entered event
+       
+       * src/threads/native/threads.c (threads_startup_thread): replace
+       breakpoint by direct call to jvmti Thread Start/End event
+       
+       * src/cacaoh/headers.c add dummy functions jvmti_ThreadStartEnd,
+       jvmti_ClassLoadPrepare and jvmti_MonitorContendedEntering
+
+2006-06-13 10:41  twisti
+
+       * src/lib/vm/reference/java/lang/VMThread.java: Updated and removed
+       our old thread variables.
+       * src/native/include/java_lang_VMThread.h: Regenerated.
+
+2006-06-12 21:34  edwin
+
+       * src/vm/jit/stack.c (new_stack_analyze): Fixed warnings about
+       directive in macro argument.
+
+2006-06-12 21:27  edwin
+
+       * src/vm/jit/show.c (new_show_basicblock): Fixed warnings.
+       (new_show_stackvar): Likewise.
+
+2006-06-12 21:14  edwin
+
+       * src/vm/jit/stack.c (new_stack_analyse): Set dst field for IINC.
+       
+       * src/vm/jit/show.c (new_show_method): Use jitdata.new_rd.
+       Only show locals and interfaces if available.
+       (new_show_basicblock): Changed basicblock output format.
+       (new_show_stackvar): Copied&pasted full stackvar printing.
+       (new_show_icmd): Show some more ICMD operands.
+       
+       * src/vm/jit/allocator/simplereg.c (new_reg_mark_copy): Fixed
+       bug for the case nthrough != 0.
+
+2006-06-12 18:50  edwin
+
+       * src/vm/jit/allocator/simplereg.h, src/vm/jit/allocator/simplereg.c
+       (new_regalloc): New function for new instruction format.
+       (new_allocate_scratch_registers): Likewise.
+       
+       * src/vm/jit/show.c (new_show_stackvar): Show allocated register
+       for stage SHOW_REGS and above.
+       
+       * src/vm/jit/jit.h (jitdata): Added field new_rd for testing the
+       new simplereg allocator.
+
+2006-06-12 14:23  edwin
+
+       * src/vm/jit/stack.c (new_stack_analyse): Fixed new stack analysis
+       for ICMD_JSR.
+       
+       * src/vm/jit/show.c (new_show_icmd): Show operands of new instruction
+       format.
+       (new_show_basicblock): Removed obsolete stack display.
+
+2006-06-10 14:53  edwin
+
+       * src/vm/jit/stack.c (IF_INTRP): New macro.
+       (IF_JIT): New macro.
+       (STATISTICS_STACKDEPTH_DISTRIBUTION): New macro.
+       (new_stack_analyse): New function. Implemented stack analysis for
+       new instruction format. (Not used, yet.)
+       
+       * src/vm/jit/stack.h (NEWSTACK): Enclosed in do { } while(0).
+       
+       * src/vm/jit/show.h, src/vm/jit/show.c (new_show_method): New
+       function.
+       (new_show_basicblock): New function.
+       (new_show_icmd): New function.
+       
+       * src/vm/jit/parse.c (new_fillextable): New function.
+       (parse): Parsing of JSR changed. Fixed bptr->icount setting.
+       
+       * src/vm/jit/jit.h (new_instruction): New field s3.jsrtarget.
+       New field dst.dupslots.
+
+2006-06-08 07:26  twisti
+
+       * tests/regression/codepatching/test.java (aastoreconst): Fixed skip
+       case.
+
+2006-06-07 12:51  twisti
+
+       * src/vm/suck.c (suck_add_from_property): Always set namelist to NULL
+       before scandir.
+
+2006-06-07 12:19  twisti
+
+       * src/vm/global.h (bool): Changed to `unsigned int', as the MIPS Pro
+       compiler complains about signed bit fields. And I think that warning
+       is really ok.
+       
+       * src/vm/suck.c (scandir_filter): Changed the signature define, as
+       only linux seems to use const.
+
+2006-06-07 12:10  twisti
+
+       * src/vm/suck.c (suck_add_from_property): Check for scandir return
+       value in error case, as on some systems, like Linux, it returns NULL.
+
+2006-06-06 21:13  motse
+
+       src/native/vm/VMVirtualMachine.c (unregisterEvent): print error
+       message
+       
+       src/native/jvmti/cacaodbg.c (jvmti_cacao_debug_init): set variable
+       jvmti
+       
+       src/native/jvmti/VMjdwp.c: add jmethodID and jclass cache variables.
+       Add new callback functions to jvmti_jdwp_EventCallbacks
+       (ThreadStart/ThreadEnd/ClassPrepare/Breakpoint): add
+       ThreadStart/ThreadEnd event callbackes implementation who notify jdwp.
+       (Exception/MethodEntry): dummy implementation. There are no jdwp
+       exeception/MethodEntry events in gnu classpath yet.
+       (setup_jdwp_thread): use cache variables.
+       FINDCLASSWITHEXCEPTION/GETMIDWITHEXCEPTION: helper macros to ease
+       jni findclass and getmethodid.
+       (fillidcache): new function that fills valid jmethodIDs and jclasses
+       in the cache variables.
+       (VMInit): add call to fillidcache.
+       (Agent_OnLoad): do not enable all jvmti callbacks anymore. Only
+       enable needed VMInit callback. The other callbacks will be enable
+       with VMVirtualMachine.registerEvent by need.
+       
+       src/native/jvmti.c (dofireEvent): check if a valid event callback is
+       available before executing it.
+       (SetEventNotificationMode): ThreadStart/End event are no more
+       implemented as breakpoints but have direct function calls to
+       dofireEvent.
+       (SuspendThread/ResumeThread/getcacaostacktrace): sketch for further
+       implementation of this function. Final threads_suspend* functions are
+       not yet available.
+       (GetArgumentsSize): new implementation using parsed descriptors.
+       (GetMethodLocation): add checks for JVMTI_ERROR_NATIVE_METHOD
+       (Samuel Vinson). And return -1 as return values for this dummy
+       implementation.
+       (GetJLocationFormat): JLocationFormat probably will be
+       JVMTI_JLOCATION_OTHER
+       
+       src/native/jvmti/VMjdwp.h: add jdwpthread which stores the thread
+       object for the jdwp listening thread.
+       
+       src/threads/native/threads.h: remove jvmti_get_threads_breakpoints
+       beacause ThreadStart/End events are implemented as direct function
+       calls by now.
+       
+       src/threads/native/threads.c (threads_startup_thread): replace
+       ThreadStart/End event implementation.
+       (jvmti_get_threads_breakpoints): removed.
+       
+       src/cacaoh/headers.c (jvmti_fireEvent): added dummy implementation to
+       enable linking of cacaoh.
+
+2006-06-06 18:51  twisti
+
+       * tests/regression/extest.java: Get the maximum heap size and use it
+       for OOM checks.
+       * tests/regression/extest.2output: Updated.
+
+2006-06-06 18:05  twisti
+
+       * src/vm/jit/alpha/arch.h (SUPPORT_LONG_DIV_POW2)
+       (SUPPORT_LONG_REM_POW2): Added, as we probably support these two
+       instructions while the architecture does not support long division.
+       * src/vm/jit/i386/arch.h: Likewise.
+       * src/vm/jit/mips/arch.h: Likewise.
+       * src/vm/jit/powerpc/arch.h: Likewise.
+       * src/vm/jit/x86_64/arch.h: Likewise.
+       
+       * src/vm/jit/stack.c (stack_analyse): Use SUPPORT_LONG_DIV_POW2 and
+       SUPPORT_LONG_REM_POW2 instead of SUPPORT_LONG_DIV.
+
+2006-06-06 14:32  michi
+
+       * doc/handbook/arm.tex: Added.
+       * doc/handbook/arm-double-memory.png: Image describing doubles in
+       memory.
+       * doc/handbook/cacao.tex, doc/handbook/Makefile.am: Added arm.tex.
+
+2006-06-06 13:13  twisti
+
+       * tests/regression/Makefile.am (JAVAFLAGS): Use flat vm classes and
+       CLASSPATH_GLIBJ_ZIP.
+       * tests/regression/codepatching/Makefile.am: Likewise.
+       * tests/regression/native/Makefile.am: Likewise.
+
+2006-06-06 12:17  twisti
+
+       * .externalToolBuilders/CacaoConfigure.launch: Updated to new
+       configure options.
+
+2006-06-06 11:22  twisti
+
+       * configure.ac (VM_ZIP_STRING): Removed.
+       (--with-vm-zip): Added.
+       (--with-classpath-glibj-zip): Added.
+       (--with-flat-classpath): Removed.
+       
+       * contrib/setenvinstalled.in (BOOTCLASSPATH): Use hardcoded vm.zip and
+       @CLASSPATH_GLIBJ_ZIP@.
+       * contrib/setenvsource.in: Likewise.
+       
+       * src/vm/global.h (CACAO_VM_ZIP_PATH): Removed.
+       (CLASSPATH_GLIBJ_ZIP_PATH): Likewise.
+       * src/vm/vm.c (CACAO_VM_ZIP_PATH): Replaced with CACAO_VM_ZIP.
+       (CLASSPATH_GLIBJ_ZIP_PATH): Replaced with CLASSPATH_GLIBJ_ZIP.
+       * src/cacaoh/cacaoh.c: Likewise.
+       
+       * src/lib/Makefile.am (GLIBJ_ZIP): Removed and replaced with
+       CLASSPATH_GLIBJ_ZIP.
+       * src/native/include/Makefile.am (VM_ZIP): Removed and replaced with
+       flat classes in builddir.
+       (GLIBJ_ZIP): Removed and replaced with CLASSPATH_GLIBJ_ZIP.
+       * src/native/Makefile.am: Likewise.
+
+2006-06-01 22:53  edwin
+
+       * src/vm/jit/stack.h (NEW_CHECKOVERFLOW): New macro.
+
+2006-06-01 22:52  edwin
+
+       * src/vm/jit/parse.c (new_parse): Use temporary fields in jitdata,
+       instead of methodinfo fields. Check exceptions for MONITORENTER/EXIT.
+       Cleaned up.
+
+2006-06-01 22:49  edwin
+
+       * src/vm/jit/parse.h (new_block_insert): New macro.
+
+2006-06-01 22:46  edwin
+
+       * src/vm/jit/jit.h (jitdata): Added temporary fields for development
+       of new instruction format.
+       (NEW_INSTRUCTION_GET_METHODDESC): New macro.
+
+2006-06-01 16:00  edwin
+
+       * src/vm/resolve.c (new_resolve_field_lazy): New method. This will
+       become the resolve_field_lazy for the new instruction format.
+       (new_resolve_method_lazy): New method. This will
+       become the resolve_method_lazy for the new instruction format.
+       (new_create_unresolved_field): New method. This will
+       become the create_unresolved_field for the new instruction format.
+       (new_create_unresolved_method): New method. This will
+       become the create_unresolved_method for the new instruction format.
+       
+       * src/vm/jit/parse.c (new_parse): Further work for new format.
+       
+       * src/vm/jit/jit.h (NEW_INSTRUCTION_GET_FIELDREF): New macro.
+       (NEW_INSTRUCTION_GET_METHODREF): New macro.
+
+2006-06-01 15:09  edwin
+
+       * src/vm/jit/jit.c (jcommandsize): Reformatted prettily. Use comments
+       instead of duplicated #defines.
+
+2006-06-01 14:36  edwin
+
+       * src/vm/jit/jit.h (ICMD_CHECKNULL_POP): New ICMD.
+       * src/vm/jit/jit.c (ICMD_CHECKNULL_POP): Likewise.
+       
+       * src/vm/jit/parse.c (new_parse): Further work on parsing for new
+       instruction format. Zero flags where necessary. Clarify policy of
+       at most one instruction per byte of original bytecode. Use the new
+       ICMD_CHECKNULL_POP for MONITORENTER/EXIT without threads.
+
+2006-06-01 13:00  edwin
+
+       * src/vm/jit/parse.h: Reworked and documented macros for new
+       instruction set.
+
+2006-05-31 23:18  edwin
+
+       * src/vm/jit/jit.h: Whitespace cleanup and comments.
+
+2006-05-31 23:03  edwin
+
+       * src/vm/jit/parse.c (parse): Removed unnecessary variable `s4ptr`.
+
+2006-05-31 22:56  edwin
+
+       * src/vm/jit/parse.c (new_parse): Implement LOOKUPSWITCH and
+       TABLESWITCH for the new instruction format.
+       
+       * src/vm/jit/jit.h (branch_target_t): New union.
+       (lookup_target_t): New struct.
+       (s3_operand_t): lookupdefault is now a branch_target_t.
+       (dst_operand_t): Changed some field names and types.
+
+2006-05-31 22:07  twisti
+
+       * src/native/jvmti/Makefile.am (INCLUDES): Renamed to AM_CPPFLAGS.
+       (LIBS): Added, required for darwin.
+       (libjdwp_la_SOURCES): Removed trailing \.
+
+2006-05-31 21:31  edwin
+
+       * src/vm/jit/ifconv/ifconv.c (show.h): Include this instead of
+       stack.h.
+       * src/vm/jit/verify/typecheck.c (show.h): Likewise.
+       * src/vm/jit/inline/inline.c (show.h): Include.
+       * src/vm/jit/jit.c (show.h): Include.
+
+2006-05-31 21:10  edwin
+
+       * src/vm/jit/show.c (show_init): Do not define this function for
+       NDEBUG.
+
+2006-05-31 20:28  edwin
+
+       * src/vm/jit/show.h: New file.
+       * src/vm/jit/show.c: New file.
+       
+       * src/vm/jit/stack.h (stack_show_method): Moved to show.h, renamed to
+       show_method.
+       (stack_show_basicblock): Moved to show.h, renamed to show_basicblock.
+       (stack_show_icmd): Moved to show.h, renamed to show_icmd.
+       
+       * src/vm/jit/stack.c (lock_stack_show_icmd): Moved to show.c, renamed
+       to show_global_lock.
+       (stack_show_method): Moved to show.c, renamed to show_method.
+       (stack_show_basicblock): Moved to show.c, renamed to show_basicblock.
+       (stack_show_icmd): Moved to show.c, renamed to show_icmd.
+       (stack_init): This function is now empty.
+       
+       * src/vm/jit/ifconv/ifconv.c (stack_show_basicblock): Renamed to
+       show_basicblock.
+       
+       * src/vm/jit/inline/inline.c (stack_show_method): Renamed to
+       show_method.
+       (stack_show_icmd): Renamed to show_icmd.
+       
+       * src/vm/jit/inline/inline_debug.inc (stack_show_icmd): Renamed to
+       show_icmd.
+       
+       * src/vm/jit/jit.c (jit_init): Call show_init.
+       (stack_show_method): Renamed to show_method.
+       
+       * src/vm/jit/Makefile.am (show.c): Added.
+       (show.h): Added.
+       
+       * src/threads/native/lock.h (pthread.h): Included.
+
+2006-05-31 19:25  edwin
+
+       * src/vm/jit/jit.h (s3_operant_t): Typo fixed to s3_operand_t.
+       Thanks, twisti.
+
+2006-05-31 13:53  motse
+
+       src/native/vm/VMVirtualMachine.c (suspendThread): print error message
+       with printjvmtierror
+       (resumeThread): idem
+       (getAllLoadedClassCount): idem
+       (getAllLoadedClasses): idem
+       (getClassStatus): idem
+       (getAllClassMethods): idem
+       (getFrameCount): idem
+       (getThreadStatus): idem
+       (getSourceFile): idem
+       (registerEvent): idem
+       
+       src/native/vm/VMMethod.c (printjvmtierror): new helper function for
+       getting and print error messages
+       (getName): print error message with printjvmtierror, remove
+       signature, generic signature
+       (getSignature): print error message with printjvmtierror, remove
+       name, generic signature
+       (getModifiers): print error message with printjvmtierror
+       (getlinetable): idem
+       (fillVariableTable): new function for converting
+       jvmtiLocalVariableEntry to arguments for
+       gnu.classpath.jdwp.util.VariableTable constructor
+       (getVariableTable): new implementation. tries to get local variable
+       table and return gnu.classpath.jdwp.util.VariableTable.
+       
+       src/native/include/Makefile.am: add VariableTable
+       
+       src/native/jvmti/VMjdwp.c (printjvmtierror) new function (duplicate)
+       - this is a work around
+       (VMInit): print error message with printjvmtierror
+       
+       src/native/jvmti/jvmti.c (InterruptThread): new implentation
+       (GetThreadInfo): switch form using javastring_tochar (uses malloc)
+       to javastring_toutf/utf_sprint_convert_to_latin1
+       (GetOwnedMonitorInfo): fix error handling
+       (GetFrameLocation): idem
+       (DestroyRawMonitor): use heap_free
+       (GetClassSignature): fix error handling
+       (GetSourceFileName): use utf_bytes
+       (GetFieldName): fix error handling
+       (GetFieldDeclaringClass): add error handling
+       (GetFieldModifiers): idem
+       (GetMethodName): fix error handling
+       (GetClassLoaderClasses): idem
+       (GenerateEvents): add CHECK_CAPABILITY
+       can_generate_compiled_method_load_events
+       
+       src/native/jvmti/VMjdwp.h add printjvmtierror
+
+2006-05-31 13:10  twisti
+
+       * src/vm/jit/x86_64/md-emit.h (IS_IMM8, IS_IMM32): Removed.
+       * src/vm/jit/emit.h (IS_IMM8, IS_IMM32): Added.
+
+2006-05-31 12:33  twisti
+
+       * src/vm/jit/x86_64/emit.c: Use new emit methods, saves about 6k code
+       size.
+       (emit_membase32): New method.
+       (emit_memindex): Likewise.
+       * src/vm/jit/x86_64/md-emit.h (emit_membase32): Removed.
+       (emit_memindex): Likewise.
+
+2006-05-30 23:38  edwin
+
+       * src/vm/jit/parse.c (new_parse): Worked on implementing parsing for
+       the new instruction format. (Not used, yet.)
+       * src/vm/jit/parse.h: Likewise.
+       
+       * src/vm/jit/jit.h (INS_FLAG_UNRESOLVED, INS_FLAG_CLASS)
+       (INS_FLAG_ARRAY, INS_FLAG_NOCHECK): Added flag constants for new
+       instruction format.
+
+2006-05-30 12:24  edwin
+
+       * src/vm/jit/parse.h (new_instruction): Moved `bte` field to s3.
+       * src/vm/jit/jit.h: Likewise.
+
+2006-05-29 23:59  edwin
+
+       * src/vm/jit/jit.h (subroutineinfo): Removed unused typedef.
+
+2006-05-29 23:47  edwin
+
+       * src/vm/jit/parse.h: New macros for new instruction format (not
+       used,
+       yet).
+       
+       * src/vm/jit/jit.h (new_instruction, ...): Further development of new
+       instruction format (not used, yet).
+
+2006-05-29 22:37  edwin
+
+       * src/vm/jit/parse.h: Reordered and commented macros. No functional
+       changes.
+       (Changes): Added my name.
+
+2006-05-29 21:48  edwin
+
+       * src/vm/jit/parse.c (new_parse): New function. This will become the
+       parse function for the new instruction format.
+       (parse): Removed obsolete variable `gp`. (Was used for old inlining).
+       
+       * src/vm/jit/jit.h (jitdata): Added temporary fields
+       `new_instructions` and `new_instructioncount` for parallel
+       development of the new instruction format.
+
+2006-05-29 20:22  edwin
+
+       * src/vm/jit/jit.h (new_instruction): Committed the new instruction
+       struct (with name `new_instruction` so it can co-exist with the old
+       format `instruction`).
+       (resolve.h): Include for new instruction format.
+       
+       * src/vm/resolve.h (typeinfo.h): Include to resolve dependencies.
+       
+       * src/vm/jit/parse.h: Added a reminder comment.
+
+2006-05-29 19:28  twisti
+
+       * configure.ac (AC_INIT): Changed to 0.96+svn.
+       (CFLAGS): Changed to -O0.
+
+2006-05-29 18:53  twisti
+
+       * ChangeLog: Updated.
+
+2006-05-29 18:52  twisti
+
+       * configure.ac (AC_INIT): Changed to version 0.96.
+       (CFLAGS): Changed to -O2.
+       * NEWS: Changed date.
+
+2006-05-29 15:51  twisti
+
+       * src/vm/vm.c (usage): Removed new-line.
+
+2006-05-29 15:37  twisti
+
+       * src/vm/vm.c (OPT_GLIBJ): Added.
+       (Xusage): Added help for -Xglibj.
+       (version): Changed signature for conditional exit.
+       (main): Added OPT_GLIBJ. Print version after all commandline arguments
+       have been handled.
+
+2006-05-29 15:21  edwin
+
+       * src/vm/linker.c (link_class_intern): On i386 align all fields to
+       just 4 bytes as gcc does. This makes the offsets of Java fields match
+       the offset of native headers. This fixes a bug (java.lang.Double.value
+       had been at offset 16, but java_lang_Double.value is offset 12).
+
+2006-05-29 15:17  twisti
+
+       * src/threads/native/critical.h (signal.h): Added, build fix for some
+       older Darwin systems.
+
+2006-05-29 14:32  twisti
+
+       * NEWS: Added a lot of stuff.
+
+2006-05-29 14:31  twisti
+
+       * src/cacao/Makefile.am: Renamed libcacaovm.so to libjvm.so to be
+       binary compatible with Sun.
+
+2006-05-29 09:41  motse
+
+       src/native/jni.c: removed jvmti.h included cacaodbg.h for GetEnv -
+       jvmti
+       src/native/vm/VMVirtualMachine.c: formatting changes/removed debug
+       statements
+       src/native/vm/VMMethod.c:
+       (getName/getSignature/getModifiers/getLineTable): (Samuel Vinson) new
+       implementation. (partially changed by motse)
+       src/native/jvmti/cacaodbg.h: removed unused function declarations
+       src/native/jvmti/jvmti.c (getcacaostacktrace): new implementation -
+       does not yet handle traces of not current threads correctly.
+       (GetMethodName): fix: return JVMTI_ERROR_NULL_POINTER only on method
+       == NULL
+       (GetFrameCount/GetStackTrace): fixed check for valid thread argument.
+
+2006-05-26 16:24  edwin
+
+       * src/toolbox/logging.h (stdarg.h): Include it here, instead of in
+       logging.c.
+       * src/toolbox/logging.c: See above.
+
+2006-05-26 12:58  twisti
+
+       * src/vm/jit/powerpc/linux/md-os.c (thread_restartcriticalsection):
+       Removed assert.
+       * src/vm/jit/powerpc/darwin/md-os.c (thread_restartcriticalsection):
+       Compile fix. Removed assert.
+
+2006-05-26 12:46  edwin
+
+       * NEWS: Added unicode cleanup.
+
+2006-05-26 12:44  edwin
+
+       * NEWS: Added tasuki locks and other news.
+
+2006-05-26 12:31  motse
+
+       src/native/jvmti/jvmti.c (GetClassStatus): bugfix - only compare
+       class state
+
+2006-05-26 12:26  edwin
+
+       * src/vm/jit/stacktrace.c (stacktrace_remove_stackframeinfo):
+       Commented.
+
+2006-05-26 12:25  twisti
+
+       * src/vm/jit/powerpc/linux/md-os.c (thread_restartcriticalsection):
+       Implemented.
+       * src/vm/jit/powerpc/darwin/md-os.c: Likewise.
+
+2006-05-26 12:19  edwin
+
+       * src/vm/builtin.c (builtin_init): Documented.
+       (builtin_trace_args): Documented.
+       (builtin_displaymethodstop): Documented.
+       
+       * src/vm/jit/alpha/md-abi.c (md_param_alloc): Documented.
+       
+       * src/vm/jit/allocator/simplereg.c (allocate_scratch_registers):
+       Documented.
+       
+       * src/vm/jit/codegen-common.c (methodtree_comparator): Documented.
+       (codegen_insertmethod): Documented.
+       
+       * src/toolbox/util.c (getcwd): Documented.
+
+2006-05-26 12:09  edwin
+
+       * src/vm/loader.h: Comment update.
+       
+       * src/vm/jit/verify/typecheck.c (verify_basic_block): Removed obsolete
+       inlining check.
+       
+       * src/vm/jit/replace.c: Typo fixed.
+       
+       * src/vm/jit/reg.c: Avoid XXX as wildcard in comments.
+       * src/vm/jit/jit.h: Likewise.
+
+2006-05-26 11:57  twisti
+
+       * src/vm/properties.c (properties_system_add): Changed
+       javastring_new_from_ascii to javastring_new_from_utf_string.
+       
+       * src/native/jni.c (ThrowNew): Use a variable for clazz.
+       (JNI_CreateJavaVM): Release allocated memory if vm_create fails.
+       
+       * src/threads/native/threads.c: Comments reformatted.
+
+2006-05-26 11:48  edwin
+
+       * src/vm/class.c (class_resolveclassmethod): Removed obsolete XXX
+       comments.
+       (class_resolveinterfacemethod): Likewise.
+       (class_resolvefield): Likewise.
+       
+       * src/vm/classcache.h: Removed obsolete XXX comment.
+       
+       * src/vm/jit/allocator/lsra.h: Changed TYPE_XXX to TYPE_* in comments.
+       * src/vm/jit/jit.c: Likewise.
+       
+       * src/native/vm/VMObject.c (Java_java_lang_VMObject_clone):
+       Removed obsolete XXX comment.
+       
+       * src/mm/memory.c (dump_release): Removed obsolete debugging code.
+
+2006-05-26 11:22  edwin
+
+       * src/native/jni.c (DefineClass): Use javastring_new_from_utf_string.
+       (ThrowNew): Likewise.
+
+2006-05-26 09:30  twisti
+
+       * src/mm/boehm.c (stackcall_malloc_atomic): Removed.
+       (stackcall_malloc_uncollectable): Likewise.
+       (heap_alloc_uncollectable): Use macros directly.
+       (heap_allocate): Likewise.
+       
+       * src/vm/vm.c: Added -jvm options, which is available on darwin.
+       
+       * src/vm/suck.c (scandir_filter): Changed signature for darwin.
+
+2006-05-25 21:59  motse
+
+       src/vm/vm.c(usage): added information for jvmti agent for jdwp
+       (vm_create): jdwp code move to jvmti agent for jdwp (VMjdwp.c)
+       src/cacao/cacao.c (main): jdwp code move to jvmti agent for jdwp.
+       execute jvmti_set_phase only if needed
+       src/native/jvmti/cacaodbg.c (setup_jdwp_thread): jdwp code move to
+       jvmti agent for jdwp
+       src/native/jvmti/VMjdwp.c: change this to a jvmti complaint agent by
+       using jni/jvmti function instead of cacao specific functions and
+       implement a Agent_OnLoad as main entry point. Include
+       setup_jdwp_thread function.
+       src/native/jvmti/Makefile.am: add libjdwp.so
+       src/native/jvmti/cacaodbg.h: remove no more needed global jdwp
+       related variables
+       src/native/jvmti/jvmti.c: (Resume/SuspendThread(List)): add temporary
+       implementation for trying jdwp
+       (jvmti_agentload): bugfix in getting/passing libname/arguments
+
+2006-05-25 12:28  twisti
+
+       * vm/jit/intrp/intrp.h (global_sp): Added space, yeah, whatever...
+       * vm/jit/intrp/dynamic-super.c (vm/builtin.h): Added.
+       (vm/jit/disass.h): Likewise.
+       (gen_inst): Fixed compiler warnings.
+       * vm/jit/intrp/java.vmg: Fixed compiler warnings with
+       stacktrace_create_stackframeinfo.
+       * threads/native/threads.h (threadobject): Changed type of _global_sp
+       to u1*.
+
+2006-05-25 12:22  twisti
+
+       * NEWS: Sorry.
+
+2006-05-25 12:21  twisti
+
+       * src/vm/vm.c (HEAP_MAXSIZE): Changed to 128MB.
+       (STACK_SIZE): Changed to 64kB.
+       (Xusage): Calculate default sizes.
+       
+       * NEWS: New stuff added.
+
+2006-05-25 11:29  twisti
+
+       * src/vm/jit/x86_64/md-emit.h (emit_movl_reg_reg): Added.
+
+2006-05-25 11:24  edwin
+
+       * configure.ac: Disable inlining and lsra by default.
+
+2006-05-24 14:11  twisti
+
+       * src/threads/native/threads.c (threads_startup_thread): Allocate Java
+       stack on Java heap instead of hardware stack.
+
+2006-05-24 14:08  twisti
+
+       * configure.ac: Added INTRP_CFLAGS.
+       * src/vm/jit/intrp/Makefile.am (CFLAGS): Set to INTRP_CFLAGS.
+
+2006-05-24 11:00  motse
+
+       src/vm/vm.c (vm_exit): only set JVMTI_PHASE_DEAD if a jvmti agent or
+       a jvmti environment is loaded.
+       src/native/jvmti/cacaodbg.c (jvmti_cacaodbgserver_quit): bugfix: set
+       dbgcom = NULL only if all environments have been disposed.
+       src/native/jvmti/jvmti.c (GetLoadedClasses): remove debug statement
+
+2006-05-23 19:52  motse
+
+       src/vm/classcache.c: export CLASSCACHE_LOCK/UNLOCK and
+       lock_hashtable_classcache
+       src/vm/classcache.h: idem
+       src/native/jvmti/jvmti.c (GetLoadedClasses) implemented (sv/motse)
+       (GetClassSignature) fixed
+
+2006-05-23 15:31  motse
+
+       src/vm/vm.c (vm_create): rename jvmti function calls
+       
+       src/cacao/cacao.c (main): rename jvmti function calls
+       
+       src/native/jni.c (GetEnv): rename jvmti function calls. jvmti version
+       changed to JVMTI_VERSION_INTERFACE_JVMTI
+       
+       src/native/vm/VMVirtualMachine.c (getAllLoadedClassesCount): (Samuel
+       Vinson) implemented.
+       (getAllLoadedClassesCount): jvmti Deallocate call added. (sv):
+       CallObjectMethod fix
+       (getAllClassMethods): (Samuel Vinson) implemented.
+       (getClassMethod): (Samuel Vinson) implemented.
+       
+       src/native/jvmti/jvmti.h: added JVMTI_VERSION interface and mask
+       
+       src/native/jvmti/cacaodbgserver.h: msg queue/shared mem related
+       things removed. gdb related defines added.
+       
+       src/native/jvmti/dbg.h: remove ptrace related things
+       
+       src/native/jvmti/cacaodbg.c change setsysbrkpt name to
+       jvmti_set_system_breakpoint, addbrkpt to jvmti_add_breakpoint,
+       allthreads to jvmti_get_all_threads
+       (jvmti_cacao_debug_init): new function where fork/exec of
+       cacaodbgserver takes place
+       (jvmti_set_system_breakpoint): added functionality for brkpt delete
+       and asm label for cacaodbgserver support
+       (jvmti_cacaodbgserver_quit): new function for killing cacaodbgserver
+       properly
+       (jvmti_cacao_generic_breakpointhandler): new function. This is the
+       entry point for every breakpointhandler and start for a new jvmti
+       event
+       (jvmti_cacao_debug_init): new function for starting up
+       cacaodbgserver process.
+       
+       src/native/jvmti/VMjdwp.c (jvmti_VMjdwpInit): function renamed
+       
+       src/native/jvmti/Makefile.am: delete dbg.c. (sv) add compile/install
+       support for cacaodbgserver.
+       
+       src/native/jvmti/cacaodbg.h: breakpoint counter added to struct
+       _brkpt. change setsysbrkpt name to jvmti_set_system_breakpoint,
+       addbrkpt to jvmti_add_breakpoint, allthreads to
+       jvmti_get_all_threads, fireEvent to jvmti_fireEvent, agentload to
+       jvmti_agentload agentunload to jvmti_agentunload, getcurrentthread to
+       jvmti_get_current_thread, set_jvmti_phase to jvmti_set_phase,
+       new_jvmtienv to jvmti_new_environment, VMjdwpinit to
+       jvmti_VMjdwpInit. added breakpoint table constants. removed global
+       jdwp, jvmti, suspend, transport, agentarg variables
+       
+       src/native/jvmti/jvmti.c all jvmti-environment function changed to
+       static functions. execcallback renamed to execute_callback. fireEvent
+       renamed to jvmti_fireEvent.
+       (execute_callback): add phase checks
+       (GetClassMethods): bugfix in copying jmethodIDs
+       (DisposeEnvironment): relocate work to jvmti_cacaodbgserver_quit
+       (jvmti_new_environment) : relocate forking new process to
+       jvmti_cacao_debug_init
+       (CHECK_ADD_CAPABILITY): bugfix in adding capabilities
+       (GetClassMethods): bugfix coping methodinfo pointers
+       (SetEventNotificationMode): setsysbrkpt calls added.
+       rename jvmti function names.
+       
+       src/native/jvmti/cacaodbgserver.c changed to support gdb insted of
+       using ptrace directly.
+       (getchildprocptrace): removed
+       (waitloop): removed
+       (startgdb): new function. start a new gdb session.
+       (getgdboutput): new helper function for getting gdb output.
+       (dataevaluate): new helper function for getting value for a given
+       expression
+       (commonbreakpointhandler): new function which handles SIGTRAPs and
+       gdb breakpoint hits.
+       (controlloop) : new function handle communication with gdb
+       (main): removed old code. added calls to startgdb and controlloop
+       
+       src/native/jvmti/dbg.c removed
+       
+       src/threads/native/threads.h: removed
+       threads_set_current_threadobject. added jvmti_get_threads_breakpoints
+       
+       src/threads/native/threads.c: (threads_startup_thread) add thread
+       start/end asm lables
+       (threads_set_current_threadobject): removed jvmti thread start
+       support.
+       (jvmti_get_threads_breakpoints) new function that gets addresses of
+       asm lables.
+       
+       src/threads/native/lock.h: added definition of lock_global_pool_lock
+       and lock_global_pool
+
+2006-05-23 08:51  twisti
+
+       * src/vm/jit/x86_64/codegen.c: Changed the code generator to produce
+       RISC-like code. These are way too much changes to name them.
+       (createnativestub): Bugfix in argument saving.
+       * src/vm/jit/x86_64/codegen.h: Likewise.
+       * src/vm/jit/x86_64/emit.c: Likewise.
+       * src/vm/jit/x86_64/md-emit.h: Likewise.
+
+2006-05-23 08:42  twisti
+
+       * src/vm/options.c (opt_heapmaxsize, opt_heapstartsize): Added.
+       * src/vm/options.h: Likewise.
+       
+       * src/vm/vm.c (version): Print heap and stack information.
+       (vm_create): Use global option variables.
+
+2006-05-23 08:25  twisti
+
+       * src/vm/jit/x86_64/emit.c (emit_movl_reg_reg): New function.
+       
+       * src/vm/jit/x86_64/codegen.c (ICMD_L2I): Only move the low
+       32-bit. Otherwise this may cause a bug with e.g. array accesses, as
+       the index registers are treated as 64-bit.
+       
+       * src/vm/jit/x86_64/codegen.h (gen_bound_check): Bugfix: only read
+       32-bit.
+       (M_IMOV): Added.
+       (M_ICMP_MEMBASE): Likewise.
+
+2006-05-22 16:14  twisti
+
+       * configure.ac: Added --with-classpath-includedir.
+
+2006-05-22 09:07  twisti
+
+       * NEWS: Some news.
+
+2006-05-22 09:06  twisti
+
+       * src/vm/vm.c (vm_abort): New method.
+       * src/vm/vm.h: Likewise.
+       * src/cacaoh/headers.c: Likewise.
+       
+       * src/toolbox/logging.c (log_vprint): Made non-static.
+       * src/toolbox/logging.h (log_vprint): Added.
+       
+       * src/threads/native/threads.c (threads_sem_init): Use vm_abort.
+       (threads_sem_wait): Likewise.
+       (threads_sem_post): Likewise.
+       (threads_current_time_is_earlier_than): Likewise.
+       (threads_init): Check for pthread_attr_init error.
+       (threads_start_thread): Check for errors of pthread calls. Set the
+       threads stack size.
+
+2006-05-18 14:33  edwin
+
+       * src/threads/native/lock.h, src/threads/native/lock.c: Tasuki lock
+       implementation (without lock deflation). This is a straight-forward
+       implementation that uses an extra word in java_objectheader for the
+       FLC (flat lock contention) bit.
+       
+       * src/vm/global.h (java_objectheader): Added field `flcword`.
+       
+       * src/threads/native/lock.h (Authors): Changed to myself, as there
+       is none of the old code remaining in this file.
+       
+       * src/vm/jit/powerpc/codegen.c, src/vm/jit/alpha/codegen.c,
+       src/vm/jit/mips/codegen.c, src/vm/jit/i386/codegen.c,
+       src/vm/jit/x86_64/codegen.c (codegen, createnativestub): Add the
+       FLC word when creating the fake object header for patcher
+       synchronization.
+
+2006-05-18 14:06  twisti
+
+       * src/vm/properties.c (properties_get): Search the list backwards to
+       get the newest entry.
+
+2006-05-18 12:50  twisti
+
+       * src/vm/vm.c (version): Print default and runtime classpath
+       variables.
+       (vm_create): Add a default java.endorsed.dirs property.
+
+2006-05-17 22:06  twisti
+
+       * configure.ac: Don't export BOOTCLASSPATH, that makes problems.
+
+2006-05-17 12:10  twisti
+
+       * src/vm/jit/powerpc/codegen.c (createnativestub): Fixed bug and
+       changed argument saving and restoring.
+       
+       * src/vm/jit/powerpc/asmpart.S (asm_vm_call_method): Partially
+       implemented Darwin bits. Still some bugs with testarguments.
+
+2006-05-16 13:08  twisti
+
+       * src/vm/jit/powerpc/codegen.c (codegen): Bugfix: use REG_ITMP3 in
+       ICMD_L{DIV,REM} for function address. This fixes
+       gnu.testlet.java.math.BigInteger.divide.
+
+2006-05-16 01:49  edwin
+
+       * src/threads/native/lock.c: Fixed comment formatting.
+
+2006-05-15 23:37  edwin
+
+       * src/vm/jit/i386/machine-instr.h (compare_and_swap): Fixed comment.
+
+2006-05-15 23:31  twisti
+
+       * configure.ac: Export BOOTCLASSPATH for javac check.
+       * src/cacao/Makefile.am (cacao_SOURCES)Removed cacao.h.
+       * src/vm/jit/inline/Makefile.am (libinline_la_SOURCES): Added
+       inline_debug.inc.
+       * src/vm/jit/powerpc/Makefile.am (DIST_SUBDIRS): Added netbsd.
+
+2006-05-15 23:22  edwin
+
+       * src/vm/jit/inline/inline_debug.c: Renamed to
+       src/vm/jit/inline/inline_debug.inc.
+       
+       * src/vm/jit/inline/inline.c: #include changed to
+       src/vm/jit/inline/inline_debug.inc.
+       
+       * src/vm/resolve.c: Typo fixed.
+
+2006-05-15 21:48  edwin
+
+       * src/threads/native/lock.c (lock_record_remove_waiter): Made static.
+       (lock_monitor_wait): Likewise.
+
+2006-05-15 21:32  edwin
+
+       * src/threads/native/lock.h, src/threads/native/lock.c
+       (lock_does_thread_hold_lock): Renamed to
+       lock_is_held_by_current_thread
+       and removed thread argument, as reliable checking is only possible for
+       the current thread, anyway.
+       
+       * src/native/vm/VMThread.c (lock_does_thread_hold_lock): Changed to
+       lock_is_held_by_current_thread.
+       
+       * src/native/jvmti/jvmti.c (lock_does_thread_hold_lock): Changed to
+       lock_is_held_by_current_thread.
+
+2006-05-15 18:24  edwin
+
+       * configure.ac (src/threads/green/Makefile): Removed from
+       AC_CONFIG_FILES.
+
+2006-05-15 15:06  edwin
+
+       * src/threads/native/lock.h (lock_record_pool_header_t): Documented.
+       (lock_record_pool_t): Documented.
+       
+       * src/threads/native/lock.c: Minor whitespace cleanup.
+
+2006-05-15 14:40  twisti
+
+       * THIRDPARTY: Removed green threads stuff.
+
+2006-05-15 14:39  twisti
+
+       * src/vm/jit/alpha/asmpart.S (asm_perform_threadswitch)
+       (asm_initialize_thread_stack, asm_switchstackandcall): Removed (2nd
+       part of green threads removal).
+       * src/vm/jit/mips/asmpart.S: Likewise.
+       * src/vm/jit/i386/asmpart.S: Likewise.
+       * src/vm/jit/x86_64/asmpart.S: Likewise.
+
+2006-05-15 14:24  twisti
+
+       * src/vm/hashtable.h,
+       src/vm/class.c,,
+       src/vm/suck.c,
+       src/vm/loader.c,
+       src/vm/builtin.c,
+       src/vm/string.c,
+       src/vm/suck.h,
+       src/vm/builtin.h,
+       src/vm/loader.h,
+       src/vm/finalizer.c,
+       src/vm/classcache.c,
+       src/vm/initialize.c,
+       src/vm/jit/powerpc/linux/md-os.c,
+       src/vm/jit/powerpc/netbsd/md-os.c,
+       src/vm/jit/powerpc/darwin/md-os.c,
+       src/vm/jit/powerpc/darwin/md-asm.h,
+       src/vm/jit/powerpc/codegen.c,
+       src/vm/jit/powerpc/asmpart.S,
+       src/vm/jit/codegen-common.h,
+       src/vm/jit/alpha/codegen.c,
+       src/vm/jit/alpha/linux/md-os.c,
+       src/vm/jit/alpha/asmpart.S,
+       src/vm/jit/alpha/freebsd/md-os.c,
+       src/vm/jit/stack.c,
+       src/vm/jit/code.c,
+       src/vm/jit/verify/typecheck.c,
+       src/vm/jit/mips/codegen.c,
+       src/vm/jit/mips/linux/md-os.c,
+       src/vm/jit/mips/asmpart.S,
+       src/vm/jit/mips/irix/md-os.c,
+       src/vm/jit/patcher.h,
+       src/vm/jit/inline/inline.c,
+       src/vm/jit/allocator/simplereg.c,
+       src/vm/jit/i386/codegen.c,
+       src/vm/jit/i386/linux/md-os.c,
+       src/vm/jit/i386/asmpart.S,
+       src/vm/jit/i386/freebsd/md-os.c,
+       src/vm/jit/parse.c,
+       src/vm/jit/intrp/intrp.h,
+       src/vm/jit/intrp/codegen.c,
+       src/vm/jit/intrp/engine.c,
+       src/vm/jit/intrp/asmpart.c,
+       src/vm/jit/intrp/dynamic-super.c,
+       src/vm/jit/intrp/java.vmg,
+       src/vm/jit/asmpart.h,
+       src/vm/jit/x86_64/md.c,
+       src/vm/jit/x86_64/codegen.c,
+       src/vm/jit/x86_64/asmpart.S,
+       src/vm/jit/profile/profile.c,
+       src/vm/jit/stacktrace.c,
+       src/vm/jit/jit.c,
+       src/vm/jit/stacktrace.h,
+       src/vm/jit/codegen-common.c,
+       src/vm/jit/jit.h,
+       src/vm/global.h,
+       src/vm/builtintable.inc,
+       src/vm/signal.c,
+       src/vm/exceptions.c,
+       src/vm/vm.c,
+       src/vm/linker.c,
+       src/vm/exceptions.h,
+       src/vm/utf8.c,
+       src/vm/hashtable.c,
+       src/cacao/cacao.c,
+       src/cacao/Makefile.am,
+       src/native/tools/Makefile.am,
+       src/native/tools/gennativetable.c,
+       src/native/jni.c,
+       src/native/vm/VMObject.c,
+       src/native/vm/VMThread.c,
+       src/native/jni.h,
+       src/native/native.c,
+       src/native/jvmti/cacaodbg.c,
+       src/native/jvmti/cacaodbg.h,
+       src/native/jvmti/jvmti.c,
+       src/toolbox/avl.c,
+       src/toolbox/logging.c,
+       src/toolbox/avl.h,
+       src/mm/boehm.h,
+       src/mm/memory.c,
+       src/mm/boehm.c,
+       src/threads/green,
+       src/threads/native/threads.h,
+       src/threads/native/threads.c,
+       src/threads/Makefile.am,
+       src/cacaoh/cacaoh.c,
+       src/cacaoh/headers.h,
+       src/cacaoh/Makefile.am,
+       src/cacaoh/headers.c,
+       configure.ac: Green threads removal, USE_THREADS renamed to
+       ENABLE_THREADS, NATIVE_THREADS define removed.
+
+2006-05-15 13:13  twisti
+
+       * src/vm/jit/asmpart.h (calljava_xhandler2): Not required anymore.
+
+2006-05-15 12:23  twisti
+
+       * src/threads/native/threads.c (sem_init, sem_post, sem_wait)
+       (sem_destroy): Added a pthread implementation (taken from Boehm-GC)
+       for Darwin, as Darwin does not have an implementation for these
+       functions.
+       * src/threads/native/threads.h (sem_t): Added structure for Darwin.
+       * src/threads/native/lock.h (semaphore.h): Removed.
+
+2006-05-15 12:14  edwin
+
+       * src/threads/native/lock.c (THIN_UNLOCKED): Abstracted out the thin
+       unlocked state so we can toggle the shape bit meaning if we want.
+       (lock_pre_compute_thinlock): Likewise.
+       (lock_get_initial_lock_word): Likewise.
+       (lock_monitor_enter): Made void. Might save an instruction here and
+       there.
+       (lock_monitor_wait): lock_monitor_enter no longer returns the lock
+       record. Assert that it is still the same fat lock (it must be).
+
+2006-05-15 11:34  edwin
+
+       * src/threads/native/lock.c: Added reference to thin lock paper and
+       explained the lockword format.
+
+2006-05-14 22:41  edwin
+
+       * src/threads/native/lock.c: Thin lock implementation.
+       
+       * src/threads/native/threads.h (threadobject): Added thinlock field.
+       (Authors, Changes): Moved myself to Authors because of rewrite.
+       
+       * src/threads/native/threads.c (threads_preinit): Init index and
+       thinlock field of mainthreadobj here. (Needed early.)
+       (threads_table_add): Init pre-computed thinlock field here.
+       
+       * src/threads/native/lock.h (lock_pre_compute_thinlock): New function.
+
+2006-05-14 22:36  edwin
+
+       * src/threads/native/lock.c (lock_record_free_pools): Assert that
+       this function is not called. It does not match the new way lock
+       records are handled. We must find another way to free them.
+       
+       * src/threads/native/threads.c (threads_init): Do not call
+       lock_record_free_pools.
+       (threads_table_add): Removed debug code.
+       (threads_startup_thread): Likewise.
+
+2006-05-14 15:34  edwin
+
+       * src/threads/native/threads.c (threads_table_init): New function.
+       (threads_table_add): New function.
+       (threads_table_remove): New function.
+       (threads_table_dump): New function.
+       (threads_table): New global variable.
+       (threads_preinit): Call threads_table_init.
+       Call threads_table_add to add main thread.
+       (threads_init_threadobject): Initialize index to 0.
+       (threads_startup_thread): Call threads_table_add to add the thread
+       to the table, and threads_table_remove to remove if afterwards.
+
+2006-05-14 14:02  edwin
+
+       * src/threads/native/threads.h, src/threads/native/threads.c
+       (nativethread): Removed. This struct is now inlined in threadobject.
+       (threads_table_entry_t): New type.
+       (threads_table_t): New type.
+       Some further cleanup.
+       
+       * src/vm/builtin.h (THREADINFO): Becomes THREADOBJECT.
+       
+       * src/vm/jit/intrp/intrp.h (THREADINFO): Becomes THREADOBJECT.
+       
+       * src/vm/jit/stacktrace.c (_stackframeinfo): This is now directly
+       a field of threadobject.
+       
+       * src/vm/jit/stacktrace.h (THREADINFO): Becomes THREADOBJECT.
+       
+       * src/native/jni.h (THREADINFO): Becomes THREADOBJECT.
+       
+       * src/native/jvmti/jvmti.c (isSleeping): Renamed to sleeping.
+
+2006-05-14 12:22  edwin
+
+       * src/threads/native/lock.c, src/threads/native/lock.h: Rewritten
+       as a very basic fat lock implementation.
+       
+       * src/vm/jit/powerpc64/arch.h (USE_MD_THREAD_STUFF): Renamed to
+       USE_FAKE_ATOMIC_INSTRUCTIONS.
+       
+       * src/vm/jit/intrp/engine.c (USE_MD_THREAD_STUFF): Renamed to
+       USE_FAKE_ATOMIC_INSTRUCTIONS.
+       
+       * src/threads/native/threads.c (USE_MD_THREAD_STUFF): Renamed to
+       USE_FAKE_ATOMIC_INSTRUCTIONS.
+       (ee.lrpool): Renamed to ee.lockrecordpools.
+
+2006-05-14 12:15  edwin
+
+       * src/threads/native/threads.c (threads_calc_absolute_time): Optimize
+       waiting for the maximum 64-bit number of milliseconds to an unbounded
+       wait. This also avoids an overflow problem we seem to have with timed
+       waits.
+
+2006-05-13 23:25  edwin
+
+       * src/threads/native/lock.c (lock_init_thread_lock_record_pool):
+       Renamed to lock_init_execution_env. Cleanup and Comments.
+       
+       * src/threads/native/lock.h (lock_init_thread_lock_record_pool):
+       Renamed to lock_init_execution_env.
+       
+       * src/threads/native/threads.c (lock_init_thread_lock_record_pool):
+       Renamed to lock_init_execution_env.
+
+2006-05-13 23:10  edwin
+
+       * src/threads/native/threads.c, src/threads/native/threads.c: Further
+       cleanup. Still no functional changes.
+       Renamed external symbols are listed below.
+       
+       * src/threads/native/critical.h, src/threads/native/critical.c:
+       Cleanup.
+       
+       * src/threads/native/lock.h: Cleanup.
+       
+       * src/vm/jit/profile/profile.c (thread_sleep): Renamed to
+       threads_sleep.
+       
+       * src/vm/vm.c (joinAllThreads): Renamed to threads_join_all_threads.
+       
+       * src/native/jni.c (thread_getself): Renamed to
+       threads_get_current_threadobject.
+       
+       * src/native/vm/VMThread.c (thread): Typedef `thread` has been
+       removed.
+       (interruptThread): Renamed to threads_interrupt_thread.
+       (isInterruptedThread): Renamed to threads_thread_has_been_interrupted.
+       (setPriorityThread): Renamed to threads_java_lang_Thread_set_priority.
+       (yieldThread): Renamed to threads_yield.
+       (interruptedThread): Renamed to
+       threads_check_if_interrupted_and_reset.
+       
+       * src/native/jvmti/cacaodbg.c (thread_getself): Renamed to
+       threads_get_current_threadobject.
+       (setthreadobject): Renamed to threads_set_current_threadobject.
+       
+       * src/native/jvmti/jvmti.c (setthreadobject): Renamed to
+       threads_set_current_threadobject.
+       
+       * src/threads/green/threads.h (yieldThread): Renamed to threads_yield.
+       (setPriorityThread): Renamed to threads_java_lang_Thread_set_priority.
+       
+       * src/threads/green/threads.c (yieldThread): Renamed to threads_yield.
+       (setPriorityThread): Renamed to threads_java_lang_Thread_set_priority.
+
+2006-05-12 16:49  edwin
+
+       * src/threads/native/threads.c: The Big Thread Cleanup. No functional
+       changes,
+       only code motion, renaming, documenting. This file has been split into
+       threads.c, lock.c, and critical.c.
+       Externally used symbols that were renamed are listed below. Static
+       symbol
+       renames are not listed.
+       
+       * src/threads/native/threads.h: The Big Thread Cleanup. No functional
+       changes,
+       only code motion, renaming, documenting. This file has been split into
+       threads.h, lock.h, and critical.h.
+       
+       * src/cacaoh/cacaoh.c (initLocks): Renamed to lock_init (green
+       threads).
+       
+       * src/cacaoh/headers.c (threadcritnode): Renamed to
+       critical_section_node_t.
+       
+       * src/mm/memory.c (initObjectLock): Renamed to lock_init_object_lock.
+       
+       * src/native/jvmti/jvmti.c (lockRecordPool): Renamed to
+       lock_record_pool_t.
+       (pool_lock): Renamed to lock_global_pool_lock.
+       (global_pool): Renamed to lock_global_pool.
+       (ownerThread): Renamed to owner.
+       (threadHoldsLock): Renamed to lock_does_thread_hold_lock.
+       (monitorExit): Renamed to lock_monitor_exit.
+       (wait_cond_for_object): Renamed to lock_wait_for_object.
+       (signal_cond_for_object): Renamed to lock_notify_object.
+       (broadcast_cond_for_object): Renamed to lock_notify_all_object.
+       
+       * src/native/tools/gennativetable.c (initLocks): Renamed to lock_init
+       (green threads).
+       
+       * src/native/vm/VMObject.c (initObjectLock): Renamed to
+       lock_init_object_lock.
+       (wait_cond_for_object): Renamed to lock_wait_for_object.
+       (signal_cond_for_object): Renamed to lock_notify_object.
+       (broadcast_cond_for_object): Renamed to lock_notify_all_object.
+       
+       * src/native/vm/VMThread.c (threadHoldsLock): Renamed to
+       lock_does_thread_hold_lock.
+       
+       * src/threads/green/locks.c, src/threads/green/locks.h
+       (initLocks): Renamed to lock_init.
+       (wait_cond_for_object): Renamed to lock_wait_for_object.
+       (signal_cond_for_object): Renamed to lock_notify_object.
+       (broadcast_cond_for_object): Renamed to lock_notify_all_object.
+       (internal_broadcast_cond_for_object): Renamed to
+       internal_lock_notify_all_object.
+       
+       * src/threads/green/threads.c (initLocks): Renamed to lock_init.
+       (internal_broadcast_cond_for_object): Renamed to
+       internal_lock_notify_all_object.
+       
+       * src/threads/native/Makefile.am (lock.c, lock.h): Added new files.
+       (critical.c, critical.h): Added new files.
+       (Changes): Added my name.
+       
+       * src/threads/native/critical.c: New file.
+       
+       * src/threads/native/critical.h: New file.
+       
+       * src/threads/native/lock.c: New file.
+       
+       * src/threads/native/lock.h: New file.
+       
+       * src/toolbox/avl.c (initObjectLock): Renamed to
+       lock_init_object_lock.
+       
+       * src/vm/builtin.c (initObjectLock): Renamed to lock_init_object_lock.
+       (monitorEnter): Renamed to lock_monitor_enter.
+       (monitorExit): Renamed to lock_monitor_exit.
+       
+       * src/vm/class.c (initObjectLock): Renamed to lock_init_object_lock.
+       
+       * src/vm/classcache.c (initObjectLock): Likewise.
+       
+       * src/vm/finalizer.c (initObjectLock): Likewise.
+       (wait_cond_for_object): Renamed to lock_wait_for_object.
+       (signal_cond_for_object): Renamed to lock_notify_object.
+       
+       * src/vm/global.h (monitorLockRecord): Renamed to lock_record_t.
+       
+       * src/vm/hashtable.c (initObjectLock): Renamed to
+       lock_init_object_lock.
+       
+       * src/vm/jit/asmpart.h: Added #include "threads/native/critical.h"
+       (threadcritnode): Renamed to critical_section_node_t.
+       
+       * src/vm/jit/code.c: Comment changed.
+       
+       * src/vm/jit/codegen-common.c, src/vm/jit/codegen-common.h
+       (threadcritnode): Renamed to critical_section_node_t.
+       (threadcritnodetemp): Renamed to codegen_critical_section_t.
+       
+       * src/vm/jit/alpha/codegen.c (get_dummyLR): Renamed to
+       lock_get_initial_lock_word.
+       
+       * src/vm/jit/alpha/freebsd/md-os.c (thread_checkcritical): Renamed to
+       critical_find_restart_point.
+       * src/vm/jit/alpha/linux/md-os.c (thread_checkcritical): Renamed to
+       critical_find_restart_point.
+       
+       * src/vm/jit/i386/codegen.c (get_dummyLR): Renamed to
+       lock_get_initial_lock_word.
+       
+       * src/vm/jit/i386/freebsd/md-os.c (thread_checkcritical): Renamed to
+       critical_find_restart_point.
+       * src/vm/jit/i386/linux/md-os.c (thread_checkcritical): Renamed to
+       critical_find_restart_point.
+       
+       * src/vm/jit/intrp/dynamic-super.c (initObjectLock): Renamed to
+       lock_init_object_lock.
+       
+       * src/vm/jit/mips/codegen.c (get_dummyLR): Renamed to
+       lock_get_initial_lock_word.
+       
+       * src/vm/jit/mips/irix/md-os.c (thread_checkcritical): Renamed to
+       critical_find_restart_point.
+       * src/vm/jit/mips/linux/md-os.c (thread_checkcritical): Renamed to
+       critical_find_restart_point.
+       
+       * src/vm/jit/powerpc/codegen.c (get_dummyLR): Renamed to
+       lock_get_initial_lock_word.
+       
+       * src/vm/jit/profile/profile.c (wait_cond_for_object): Renamed to
+       lock_wait_for_object.
+       
+       * src/vm/jit/stack.c (initObjectLock): Renamed to
+       lock_init_object_lock.
+       
+       * src/vm/jit/x86_64/codegen.c (get_dummyLR): Renamed to
+       lock_get_initial_lock_word.
+       
+       * src/vm/jit/x86_64/md.c (thread_checkcritical): Renamed to
+       critical_find_restart_point.
+       
+       * src/vm/loader.c (initObjectLock): Renamed to
+       lock_init_object_lock.
+       (initLocks): Renamed to lock_init (green threads).
+       
+       * src/vm/string.c (initObjectLock): Renamed to
+       lock_init_object_lock.
+       
+       * src/vm/vm.c (initLocks): Renamed to lock_init (green threads).
+
+2006-05-12 14:32  twisti
+
+       * src/vm/jit/emit.h: Replaced __POWERPC__ #ifdef with
+       SIZEOF_VOID_P == 4.
+
+2006-05-11 14:02  twisti
+
+       * src/native/vm/VMClassLoader.c (nativeGetResources): Bugfix: utf_new
+       should be utfname.
+
+2006-05-11 13:43  twisti
+
+       * src/vm/jit/mips/codegen.c: Changed mcodeptr from u4* to u1*.
+       * src/vm/jit/mips/codegen.h: Likewise.
+
+2006-05-11 13:09  twisti
+
+       * src/vm/jit/mips/asmpart.S (asm_call_jit_compiler): Use new
+       jit_asm_compile method.
+
+2006-05-11 12:48  edwin
+
+       * src/threads/native/threads.c (monitorExit): Added an assert to
+       check that no existing waiter is overwritten by the suspicious
+       assignment.
+
+2006-05-11 12:36  edwin
+
+       * src/lib/vm/reference/java/lang/VMClassLoader.java
+       (getBootPackages): Merged patch to VMClassLoader.java of the
+       reference implementation. getBootPackages now works in the
+       presence of endorsed jars.
+
+2006-05-11 12:18  twisti
+
+       * src/native/jni.c (DeleteGlobalRef): Bugfix: handle the removal of
+       the first entry in the chain properly.
+
+2006-05-11 09:18  twisti
+
+       * src/vm/hashtable.c (threads/native/threads.h): Added.
+       (hashtable_create): Initialize lock object.
+       (hashtable_resize): New function.
+       (hashtable_free): Likewise.
+       * src/vm/hashtable.h (hashtable): Added header pointer.
+       (hashtable_resize): Added.
+       (hashtable_free): Likewise.
+       
+       * src/vm/vm.c (vm_create): Call jni_init before threads_init.
+       
+       * src/vm/utf8.c (lock_hashtable_utf): Removed.
+       (utf8_init): Allocate hashtable on heap.
+       (utf_new): Use new hashtable stuff.
+       
+       * src/native/native.c (native_init): Use new hashtable stuff.
+       (native_hashtable_library_add): Likewise.
+       
+       * src/native/jni.c (jni_init): Removed Java IdentityHashMap stuff and
+       create a hashtable.
+       (NewGlobalRef): Implemented with native hashtable.
+       (DeleteGlobalRef): Likewise.
+       
+       * src/native/jni.h (hashtable_global_ref_entry): Added.
+       
+       * src/vm/string.c (literalstring_u2): Removed check for
+       class_java_lang_String, we have an assert there.
+
+2006-05-10 16:14  twisti
+
+       * src/vm/jit/alpha/codegen.c: Changed mcodeptr from u4* to u1*.
+       * src/vm/jit/alpha/codegen.h: Likewise.
+
+2006-05-10 15:51  twisti
+
+       * src/vm/jit/codegen-common.h (codegendata): Use an u1* mcodeptr for
+       all architectures. This is necessary for the interpreter.
+       * src/vm/jit/codegen-common.c (codegen_setup): Removed #ifdef.
+       (codegen_increase): Likewise.
+       
+       * src/vm/jit/powerpc/codegen.c: Changed mcodeptr from u4* to u1*.
+       * src/vm/jit/powerpc/codegen.h: Likewise.
+
+2006-05-10 15:09  edwin
+
+       * src/vm/jit/inline/inline.c (inline_write_exception_handlers):
+       Correct cast for abused instruction->target.
+
+2006-05-10 13:12  twisti
+
+       * src/vm/jit/alpha/asmpart.S (asm_call_jit_compiler): Use new
+       jit_asm_compile method.
+
+2006-05-08 11:09  twisti
+
+       * configure.ac (AC_CONFIG_FILES): Added src/scripts/keytool.
+       * src/scripts/Makefile.am (bin_SCRIPTS): Added keytool.
+       * src/scripts/.cvsignore: Likewise.
+       * src/scripts/keytool.in: New file.
+
+2006-05-08 11:05  twisti
+
+       * src/vm/jit/powerpc/asmpart.S (asm_vm_call_method): Handle argument
+       passing properly for SysV ABIs. Darwin is left to do.
+
+2006-05-08 11:03  twisti
+
+       * tests/regression/native/testarguments.java: Added new test.
+       * tests/regression/native/testarguments.c: Likewise.
+       * tests/regression/native/testarguments.output: Likewise.
+
+2006-05-06 18:29  motse
+
+       * src/vm/vm.c (vm_create): make agentlib/agentpath work
+       * src/cacao/cacao.c (main): changes for jvmti/jdwp startup due to
+       removal of jdwp process
+       * src/native/jni.c (JNI_CreateJavaVM): change order vm_create and
+       initialization of _Jv_jvm due to jvmti agent support.
+       * src/native/vm/VMVirtualMachine.c: change name of jvmtienv and
+       bugfixes of Samuel Vinson
+       * src/native/include/Makefile.am: add VMMethod.h
+       * src/native/jvmti/Makefile.am: removal of cacaodbgserver
+       * src/native/jvmti/jvmti.c: remove jdwp process and convert to thread
+       * src/native/jvmti/cacaodbg.h: idem
+       * src/native/jvmti/jvmti.h: idem
+       * src/native/jvmti/dbg.h: idem
+       * src/native/jvmti/cacaodbg.c: idem
+       * src/native/jvmti/dbg.c: idem
+       * src/native/jvmti/cacaodbgserver.c: change to a autonomous program
+       and removal of jdwp thread.
+       * src/native/jvmti/VMjdwp.c (VMInit): different invocation due to
+       removal of jdwp thread
+       * src/native/jvmti/VMjdwp.h: export jvmti environment and event
+       callbacks.
+       * src/native/vm/VMMethod.c: initial/dummy implementation of VMMetod
+       native method
+
+2006-05-06 14:13  edwin
+
+       * src/native/vm/VMRuntime.c
+       (Java_java_lang_VMRuntime_mapLibraryName): Use new utf_ functions.
+       (Changes): Added my name.
+       (vim boilerplate): Added.
+
+2006-05-06 10:10  edwin
+
+       * src/native/vm/VMClassLoader.c
+       (Java_java_lang_VMClassLoader_nativeGetResources): Really create a
+       new utf string to search for if the trailing .class is stripped.
+
+2006-05-06 00:16  edwin
+
+       * src/vm/classcache.c (classcache_merge_class_entries):
+       Use utf_cat_classname.
+       (classcache_store): Likewise.
+       (classcache_store_defined): Likewise.
+
+2006-05-06 00:11  edwin
+
+       * src/native/vm/VMClassLoader.c
+       (Java_java_lang_VMClassLoader_nativeGetResources): Fixed and cleaned
+       up. Skip leading '/'. Remove '.class' only at end. Free char buffer.
+       Use correct utf_ functions. Check for exceptions.
+       
+       * src/vm/zip.c (zip_find): Documented.
+
+2006-05-05 19:31  edwin
+
+       * src/vm/utf8.h: Moved #include "config.h" up front.
+
+2006-05-05 19:22  edwin
+
+       * src/toolbox/logging.c (Changes): Added my name.
+       (vim boilerplate): Added.
+
+2006-05-05 19:21  edwin
+
+       * src/toolbox/logging.c (log_message_utf): Use new utf_ functions.
+       (log_message_class_message_class): Likewise.
+       (log_message_method): Likewise.
+
+2006-05-05 19:13  edwin
+
+       * src/vm/builtin.c (builtin_throw_exception): Use new utf_ functions.
+       (builtin_trace_exception): Likewise.
+       (builtin_trace_args): Likewise.
+       (builtin_displaymethodstop): Likewise.
+
+2006-05-05 18:58  edwin
+
+       * src/vm/suck.c (suck_start): Use new utf_ functions.
+
+2006-05-05 18:49  edwin
+
+       * src/vm/utf8.h, src/vm/utf8.c: Fixed header.
+
+2006-05-05 18:14  edwin
+
+       * src/vm/loader.c (load_class_from_classbuffer): Use new
+       utf_ functions.
+
+2006-05-05 18:08  edwin
+
+       * src/vm/resolve.c (resolve_class_from_name): Use new utf_ functions.
+       (resolve_subtype_check): Likewise.
+       (resolve_field_verifier_checks): Likewise.
+       (resolve_method_verifier_checks): Likewise.
+
+2006-05-05 17:34  edwin
+
+       * src/vm/utf8.h, src/vm/utf8.c: The Big utf_* Renaming.
+       The purpose of this change is to give the utf_* functions names
+       that make clear what these functions _really_ have been doing
+       all the time. I'm sure most callers would be surprised if they
+       knew. All call sites should be reviewed!
+       (utf_display): Renamed to utf_display_printable_ascii.
+       (utf_display_classname): Renamed to
+       utf_display_printable_ascii_classname.
+       (utf_sprint): Renamed to utf_sprint_convert_to_latin1.
+       (utf_sprint_classname): Renamed to
+       utf_sprint_convert_to_latin1_classname.
+       (utf_strcat): Renamed to utf_strcat_convert_to_latin1.
+       (utf_strcat_classname): Renamed to
+       utf_strcat_convert_to_latin1_classname.
+       (utf_fprint): Renamed to utf_fprint_printable_ascii.
+       (utf_fprint_classname): Renamed to
+       utf_fprint_printable_ascii_classname.
+       
+       * src/vm/class.c, src/vm/suck.c, src/vm/loader.c, src/vm/builtin.c,
+       src/vm/descriptor.c, src/vm/resolve.c, src/vm/method.c,
+       src/vm/classcache.c, src/vm/jit/stack.c, src/vm/jit/verify/typeinfo.c,
+       src/vm/jit/allocator/lsra.c, src/vm/jit/intrp/disass.c,
+       src/vm/jit/stacktrace.c, src/vm/jit/codegen-common.c,
+       src/vm/exceptions.c, src/vm/field.c, src/cacao/cacao.c,
+       src/native/tools/gennativetable.c, src/native/vm/VMClassLoader.c,
+       src/native/vm/VMRuntime.c, src/native/native.c, src/toolbox/logging.c,
+       src/threads/green/threads.c, src/threads/native/threads.c,
+       src/cacaoh/headers.c: The Big utf_ Renaming. All call sites of the
+       renamed functions should be reviewed! Calls outside debugging code
+       are probably incorrect and should use one of the new utf_ functions
+       that copies byte-for-byte.
+
+2006-05-05 17:09  edwin
+
+       * src/vm/exceptions.c (new_exception): Documented.
+       (new_exception_message): Documented. Use new_exception_javastring.
+       (new_exception_throwable): Documented.
+       (new_exception_utfmessage): Documented. Use new_exception_javastring.
+       (new_exception_javastring): Documented.
+       (new_exception_int): Documented.
+       (new_classformaterror): Documented. Use new byte-for-byte UTF-8
+       functions.
+       (exceptions_throw_classformaterror): Documented.
+       (new_classnotfoundexception): Documented. Check return value of
+       javastring_new.
+       (new_noclassdeffounderror): Documented. Check return value of
+       javastring_new.
+       (new_internalerror): Documented.
+       (exceptions_new_linkageerror): Documented. Use new byte-for-byte UTF-8
+       functions.
+       (exceptions_new_nosuchmethoderror): Documented. Use new byte-for-byte
+       UTF-8
+       functions.
+       (exceptions_throw_nosuchmethoderror): Documented.
+       (new_unsupportedclassversionerror): Documented. Use new byte-for-byte
+       UTF-8
+       functions.
+       (new_verifyerror): Likewise.
+       (exceptions_throw_verifyerror_for_stack): Likewise.
+       (exceptions_handle_exception): Documented.
+
+2006-05-05 16:51  edwin
+
+       * src/vm/utf8.c, src/vm/utf8.h (utf_copy): New function.
+       (utf_cat): New function.
+       (utf_copy_classname): New function.
+       (utf_cat_classname): New function.
+       These new functions copy the UTF-8 content byte-for-byte and thus
+       do not lead to losses by conversion like the utf_strcpy, etc.
+       functions.
+
+2006-05-05 15:26  edwin
+
+       * src/vm/string.c, src/vm/stringlocal.h, src/vm/utf8.c, src/vm/utf8.h
+       (Changes): Added my name.
+       (vim boilerplate): Added.
+
+2006-05-05 15:14  edwin
+
+       * src/vm/string.c, src/vm/stringlocal.h
+       (javastring_new_from_utf_buffer): New function.
+       (javastring_new_from_utf_string): New function.
+       
+       * src/vm/utf8.c (utf_get_number_of_u2s_for_buffer): New function.
+       (utf_get_number_of_u2s): Documented that this function may throw
+       exception.s.
+       
+       * src/vm/utf8.h (utf_get_number_of_u2s_for_buffer): New function.
+
+2006-05-05 14:36  edwin
+
+       * src/vm/string.c, src/vm/stringlocal.h (java_string_new_char):
+       Renamed to `java_string_new_from_ascii` to make more clear what this
+       function does. It is wrong to use this function to create a
+       java.lang.String from a buffer of UTF-8 characters!
+       
+       * src/vm/finalizer.c (finalizer_start_thread): Legitimate use.
+       * src/vm/jit/profile/profile.c (profile_start_thread): Likewise.
+       
+       * src/vm/exceptions.c
+       (exceptions_new_linkageerror): Definitely INCORRECT use.
+       (exceptions_new_nosuchmethoderror): Likewise.
+       * src/native/vm/VMRuntime.c
+       (Java_java_lang_VMRuntime_mapLibraryName): Likewise.
+       
+       * src/vm/exceptions.c (new_exception_message): Probably INCORRECT use.
+       * src/native/jni.c (DefineClass): Likewise.
+       (ThrowNew): Likewise.
+       * src/native/vm/VMClassLoader.c
+       (Java_java_lang_VMClassLoader_nativeGetResources): Likewise.
+       
+       * src/vm/properties.c (properties_system_add): Needs review.
+       * src/cacao/cacao.c (getmainclassnamefromjar): Likewise.
+       * src/native/jvmti/cacaodbg.c (setup_jdwp_thread): Likewise.
+       * src/native/jvmti/jvmti.c (CreateRawMonitor, GetSystemProperty)
+       (SetSystemProperty): Likewise.
+
+2006-05-05 13:56  edwin
+
+       * src/vm/utf8.c, src/vm/utf8.h (utf_bytes): New function.
+       Use this function to query the number of octets of a utf string.
+       This function will become the correct replacement for the old
+       utf_strlen in most places. The calling code will have to be
+       reviewed for that, however, and it will also require fixing
+       utf_strcat, utf_sprint, and so on, to do the right thing.
+
+2006-05-05 13:48  edwin
+
+       * src/vm/utf8.c, src/vm/utf8.h (utf_strlen): Renamed to
+       `utf_get_number_of_u2s` in order to reflect what this function
+       _really_ does. A long name was chosen intentionally to make it obvious
+       that this is _not_ the function to use as the normal strlen. Most
+       current uses of this function are invalid, as it must only be used
+       when the utf string will be **converted to UTF-16**.
+       
+       * src/vm/suck.c (suck_start): Renamed utf_strlen. RECONSIDER USE!
+       * src/vm/loader.c (load_class_from_classbuffer): Likewise.
+       * src/vm/builtin.c (various functions): Likewise.
+       * src/vm/resolve.c (various functions): Likewise.
+       * src/vm/exceptions.c (various functions): Likewise.
+       * src/native/vm/VMClassLoader.c
+       (Java_java_lang_VMClassLoader_nativeGetResources): Likewise.
+       * src/native/vm/VMRuntime.c
+       (Java_java_lang_VMRuntime_mapLibraryName): Likewise.
+       * src/native/native.c (native_resolve_function): Likewise.
+       * src/toolbox/logging.c (various functions): Likewise.
+       * src/cacaoh/headers.c (various functions): Likewise.
+       
+       * src/vm/string.c (javastring_new): Legitimate use.
+       (javastring_new_slash_to_dot): Likewise.
+       (literalstring_new) Likewise.
+
+2006-05-03 23:04  edwin
+
+       * src/threads/native/threads.c (wakeWaiters): Renamed
+       to threads_wake_waiters. Documented.
+
+2006-05-03 22:58  edwin
+
+       * src/threads/native/threads.c (handleWaiter): Renamed arguments.
+       Commented.
+       (monitorEnter): Documented.
+       (notifyOneOrAll): Cleaned up.
+
+2006-05-03 22:46  edwin
+
+       * src/threads/native/threads.c (setPriority): Renamed to
+       threads_set_thread_priority.
+       (removeFromWaiters): Renamed to threads_remove_waiter.
+       (timespec_less): Renamed to threads_timespec_earlier.
+       (timeIsEarlier): Renamed to threads_current_time_is_earlier_than.
+       (waitWithTimeout): Renamed to threads_wait_with_timeout. Removed
+       unused
+       argument `lr`.
+       (thread_sleep): There is no need to create a lock record for
+       calling threads_wait_with_timeout, as that does not use the
+       lock record anyway (formerly waitWithTimeout).
+       (various function): Lots of documentation and cleanup.
+
+2006-05-02 16:16  twisti
+
+       * src/vm/jit/stack.c (stack_analyse): Check for val.a == NULL on
+       SUPPORT_CONST_STORE_ZERO_ONLY architectures for ICMD_PUTSTATIC and
+       ICMD_PUTFIELD.
+
+2006-05-01 23:14  edwin
+
+       * src/threads/native/threads.c: Cleanup and documentation.
+
+2006-05-01 21:40  edwin
+
+       * src/threads/native/threads.h (threads_sem_init): New function.
+       (threads_sem_post): New function.
+       
+       * src/threads/native/threads.c (threads_sem_init): New function.
+       (threads_sem_wait): Added assertion.
+       (threads_sem_post): New function.
+       (various function): Use threads_sem_init and threads_sem_post.
+       
+       * src/native/jvmti/cacaodbg.c (getworkingdatalock): Use
+       threads_sem_post.
+       (cacaodbgfork): Use threads_sem_init.
+       
+       * src/native/jvmti/cacaodbgserver.c (contchild, waitloop).
+       Use threads_sem_post.
+
+2006-05-01 12:40  edwin
+
+       * src/threads/native/threads.c (threads_sem_wait): New function.
+       This function performs a non-interruptible sem_wait. This fixes
+       segfaults and deadlocks that resulted from sem_wait calls returning
+       prematurely.
+       (cast_stopworld): Use threads_sem_wait.
+       (threads_startup_thread): Likewise.
+       (threads_start_thread): Likewise.
+       (queueOnLockRecord): Likewise.
+       
+       * src/threads/native/threads.h (threads_sem_wait): New function.
+       
+       * src/native/jvmti/cacaodbg.c (msgqsendevent): Use threads_sem_wait
+       instead of sem_wait.
+       
+       * src/native/jvmti/cacaodbgserver.c (contchild, waitloop): Use
+       threads_sem_wait instead of sem_wait.
+
+2006-04-30 17:18  twisti
+
+       * configure.ac (AC_CONFIG_FILES): Added src/scripts/jarsigner.
+       * src/scripts/Makefile.am (bin_SCRIPTS): Added jarsigner.
+       * src/scripts/.cvsignore: Likewise.
+       * src/scripts/jarsigner.in: New file.
+
+2006-04-30 16:17  edwin
+
+       * src/vm/resolve.c (resolve_method_verifier_checks)
+       (constrain_unresolved_method): Use ICMD_ACONST_CLASSREF_OR_CLASSINFO.
+       
+       * src/vm/jit/powerpc/codegen.c, src/vm/jit/alpha/codegen.c,
+       src/vm/jit/mips/codegen.c, src/vm/jit/i386/codegen.c,
+       src/vm/jit/intrp/codegen.c, src/vm/jit/x86_64/codegen.c
+       (codegen): Changes for new ACONST format.
+       
+       * src/vm/jit/stack.c (stack_analyse): Changes for new ACONST format.
+       
+       * src/vm/jit/verify/typecheck.c (verify_invocation): Use the new
+       macros.
+       (verify_builtin, verify_multianewarray, verify_basic_block): Changes
+       for
+       new ACONST format.
+       
+       * src/vm/jit/verify/typeinfo.h (TYPEINFO_INIT_JAVA_LANG_CLASS): Take
+       a classref_or_classinfo as argument.
+       
+       * src/vm/jit/verify/typeinfo.c (typeinfo_init_class): Typo fixed.
+       (typeinfo_print): Changes for new ACONST format.
+       
+       * src/vm/jit/inline/inline.c (inline_write_exception_handlers):
+       Changes for new ACONST format.
+       
+       * src/vm/jit/parse.c (parse): Changes for new ACONST format.
+       
+       * src/vm/jit/parse.h (LOADCONST_A_CLASS): Removed.
+       (LOADCONST_A_BUILTIN): Changes for new ACONST format.
+       
+       * src/vm/jit/jit.h (INSTRUCTION_IS_RESOLVED,
+       INSTRUCTION_IS_UNRESOLVED):
+       Only check least significant bit of target (provisory flag).
+       (ICMD_ACONST_IS_CLASS, ICMD_ACONST_CLASSREF_OR_CLASSINFO)
+       (ICMD_ACONST_RESOLVED_CLASSINFO, ICMD_ACONST_UNRESOLVED_CLASSREF):
+       New macros.
+
+2006-04-30 15:58  edwin
+
+       * src/vm/jit/loop/tracing.c (tracing): Adapted to new format of
+       INVOKE
+       instructions.
+       * src/vm/jit/allocator/lsra.c (lsra_scan_registers_canditates)
+       (_test_lifetimes): Likewise.
+
+2006-04-28 12:25  edwin
+
+       * src/vm/jit/parse.c (parse): Added a comment.
+
+2006-04-28 12:24  twisti
+
+       * src/vm/jit/stack.c (stack_analyse): We need to split AASTORECONST
+       and PUT{STATIC,FIELD}CONST as they can store different values. I hope
+       the checks are correct now (until we get our new instruction
+       format). Edwin: Hint! Hint! Hint!
+       (stack_show_icmd): Again a smaller change.
+
+2006-04-28 11:50  twisti
+
+       * src/vm/jit/stack.c (stack_analyse): Check for
+       {AASTORE,PUTSTATIC,PUTFIELD}CONST if the instruction is resolved. We
+       don't have a patcher for that case.
+       (stack_show_icmd): Smaller change.
+
+2006-04-28 11:37  twisti
+
+       * tests/regression/codepatching/test.java: Added new test.
+       * tests/regression/codepatching/Makefile.am: Files updated.
+       
+       * tests/regression/codepatching/putfieldconstIF.java,
+       tests/regression/codepatching/putfieldconstJDL.java: Removed.
+       
+       * tests/regression/codepatching/putstaticconstJ.java,
+       tests/regression/codepatching/putstaticconstL.java,
+       tests/regression/codepatching/putfieldconstD.java,
+       tests/regression/codepatching/putfieldconstF.java,
+       tests/regression/codepatching/putstaticconstC.java,
+       tests/regression/codepatching/putfieldconstJ.java,
+       tests/regression/codepatching/putfieldconstL.java,
+       tests/regression/codepatching/putstaticconstI.java,
+       tests/regression/codepatching/putfieldconstC.java,
+       tests/regression/codepatching/putstaticconstD.java,
+       tests/regression/codepatching/putfieldconstI.java,
+       tests/regression/codepatching/putstaticconstF.java: New file.
+
+2006-04-28 11:24  edwin
+
+       * src/vm/resolve.c (resolve_method_lazy): Turn INVOKEVIRTUAL into
+       INVOKESPECIAL for monomorphic calls.
+
+2006-04-28 00:46  edwin
+
+       * src/vm/jit/intrp/asmpart.c (intrp_asm_vm_call_method_int): Fix
+       build
+       errors. TWISTI, please review these changes.
+
+2006-04-28 00:31  edwin
+
+       * regression/codepatching/test.java: Added test for AASTORECONST
+       with unresolved class constant. Currently exposes a bug when
+       test.java is
+       compiled with -target 1.5.
+       
+       * regression/codepatching/aastoreconstClass.java: New file.
+
+2006-04-27 23:03  twisti
+
+       * src/vm/jit/stacktrace.h (STACKFRAMEINFO): Added parenthesis.
+       * src/vm/global.h (java_objectheader): Changed type of monitorPtr to
+       monitorLockRecord.
+       
+       * src/vm/vm.h (vm_arg): Added union.
+       * src/vm/vm.c (vm_vmargs_from_valist): Use union of vm_arg's data.
+       * src/native/jni.c (_Jv_jni_vmargs_from_objectarray): Likewise.
+       
+       * src/threads/native/threads.h (nativethread): Changed type of
+       _stackframeinfo to stackframeinfo*.
+       * src/threads/native/threads.c (monitorEnter): Cast compare_and_swap
+       return value correctly.
+
+2006-04-27 12:33  twisti
+
+       * src/vm/jit/x86_64/emit.c: Changed x86_64 function prefix to
+       emit. And some other stuff too.
+       * src/vm/jit/x86_64/md-emit.h: Likewise.
+       * src/vm/jit/x86_64/codegen.c: Likewise.
+       * src/vm/jit/x86_64/codegen.h: Likewise.
+
+2006-04-27 11:05  twisti
+
+       * src/native/vm/VMSystemProperties.c (preInit): Append "/jre" to
+       java.home property, as all JDKs and JREs do that. Fixed a problem with
+       jonas testsuite. General cleanup.
+
+2006-04-27 10:32  twisti
+
+       * src/vm/jit/powerpc/darwin/md-asm.h (jit_asm_compile): Renamed from
+       jit_compile.
+       * src/vm/jit/powerpc/asmpart.S: Likewise.
+
+2006-04-26 15:44  edwin
+
+       * src/vm/jit/stacktrace.c (stacktrace_getClassContext): Reverted the
+       hack that removes the first entry if this function is called by
+       java.lang.SecurityManager. This (undocumented) hack probably was done
+       to solve a problem that no longer exists.
+
+2006-04-26 14:09  twisti
+
+       * src/vm/jit/i386/Makefile.am (libarch_la_SOURCES): Removed
+       emitfuncs.c, emitfuncs.h and added emit.c, md-emit.h.
+       
+       * src/vm/jit/i386/emit.c (emit_load_s1): New method.
+       (emit_load_s2): Likewise.
+       (emit_load_s3): Likewise.
+       (emit_store): Likewise.
+       (emit_copy): Likewise.
+       
+       * src/vm/jit/i386/codegen.c (codegen): Use emit_load/store functions
+       instead of macros.
+       
+       * src/vm/jit/i386/codegen.h (M_LNGMOVE): Added.
+       (M_LNGMEMMOVE): Removed.
+       (var_to_reg_int): Removed.
+       (var_to_reg_lng): Likewise.
+       (var_to_reg_flt): Likewise.
+       (store_reg_to_var_int): Likewise.
+       (store_reg_to_var_lng): Likewise.
+       (store_reg_to_var_flt): Likewise.
+       (M_FLD): Added.
+       (M_DLD): Likewise.
+       (M_FLD32): Likewise.
+       (M_DLD32): Likewise.
+       (M_FST): Likewise.
+       (M_DST): Likewise.
+
+2006-04-26 11:02  twisti
+
+       * src/vm/jit/i386/md-emit.h: Moved from src/vm/jit/i386/emitfuncs.h.
+       * src/vm/jit/i386/emit.c: Moved from src/vm/jit/i386/emitfuncs.c.
+
+2006-04-26 09:02  twisti
+
+       * configure.ac (AC_CONFIG_FILES): Added src/scripts/rmic.
+       * src/scripts/Makefile.am (bin_SCRIPTS): Added rmic.
+       * src/scripts/java.in: Use ${1+"$@"} instead of $@.
+       * src/scripts/rmiregistry.in: Likewise.
+       * src/scripts/rmic.in: Updated to new rmic location.
+
+2006-04-26 08:57  twisti
+
+       * m4/ac_prog_javac.m4: Default to ecj.
+       * src/lib/Makefile.am: If JAVAC is ecj, use the -1.5 flag. This
+       produces much faster code regarding class$ (e.g. jonas startup time).
+
+2006-04-25 18:02  edwin
+
+       * src/vm/jit/disass-common.c (disass_printf): Avoid compiler warning.
+       
+       * src/vm/jit/profile/profile.c (profile_printstats): Avoid compiler
+       warnings.
+
+2006-04-25 17:57  edwin
+
+       * src/vm/jit/i386/disass.c (disassinstr): Avoid compiler warning.
+
+2006-04-25 17:53  edwin
+
+       * src/vm/jit/stack.c (stack_show_icmd): Removed unused variable `um`.
+
+2006-04-25 17:48  edwin
+
+       * src/vm/loader.c (load_method): Simplify initialization of
+       methodinfo by
+       clearing it explicitely in load_class_from_classbuffer, instead of
+       zeroing
+       individual fields here.
+       (load_class_from_classbuffer): MZERO methodinfo array.
+       (load_newly_created_array): Initialize `params` to NULL for the clone
+       method.
+
+2006-04-25 17:45  edwin
+
+       * src/mm/memory.h (MZERO): Added macro MZERO for convenient memory
+       cleaning.
+
+2006-04-25 17:42  edwin
+
+       * src/native/vm/VMSystemProperties.c
+       (Java_gnu_classpath_VMSystemProperties_preInit): Use strcpy instead of
+       strcat, since there is nothing to concat to and we may want to lift
+       the
+       assertion that MSET clears memory.
+
+2006-04-25 15:46  edwin
+
+       * src/vm/jit/i386/md.c (md_get_method_patch_address): Avoid compiler
+       warning.
+
+2006-04-25 15:31  edwin
+
+       * src/cacao/cacao.c (main): Avoid warning about unused label.
+       Cleaned up whitespace.
+
+2006-04-25 15:26  edwin
+
+       * src/vm/exceptions.c (exceptions_throw_verifyerror_for_stack): Avoid
+       compiler warning.
+
+2006-04-25 12:35  edwin
+
+       * src/vm/jit/verify/typecheck.c (typecheckverbose): Renamed to
+       opt_typecheckverbose.
+       * src/vm/jit/verify/typeinfo.h: Likewise.
+       
+       * src/vm/vm.c (OPT_VERBOSETC): Only define if both ENABLE_VERIFIER
+       and TYPECHECK_VERBOSE are defined.
+       (typecheckverbose): Renamed to opt_typecheckverbose.
+
+2006-04-25 12:25  edwin
+
+       * src/vm/options.h, src/vm/options.c (getloadingtime): Renamed to
+       opt_getloadingtime. Only defined for ENABLE_STATISTICS.
+       (getcompilingtime): Renamed to opt_getcompilingtime.
+       Only defined for ENABLE_STATISTICS.
+       
+       * src/vm/loader.c (getloadingtime, getcompilingtime): Renamed.
+       * src/vm/jit/jit.c: Likewise.
+       * src/vm/linker.c: Likewise.
+       * src/native/vm/VMClassLoader.c: Likewise.
+       
+       * src/vm/vm.c (OPT_TIME): Only defined for ENABLE_STATISTICS.
+       
+       * configure.ac (--enable-statistics): Now statistics are disabled by
+       default.
+
+2006-04-25 12:00  edwin
+
+       * src/vm/options.h (opt_verify): Only declare for ENABLE_VERIFIER.
+       (opt_liberalutf): Removed.
+       
+       * src/vm/options.c (opt_verify): Only declare for ENABLE_VERIFIER.
+       (opt_liberalutf): Removed.
+       
+       * src/vm/jit/inline/inline.c (test_inlining): Only verify if
+       ENABLE_VERIFIER.
+       
+       * src/vm/jit/parse.c (parse): Only check opt_verify if
+       ENABLE_VERIFIER.
+       
+       * src/vm/global.h (ENABLE_VERIFIER): Removed. This is now defined in
+       config.h.
+       
+       * src/vm/vm.c (OPT_NOVERIFY): Only define this option if
+       ENABLE_VERIFIER.
+       (OPT_LIBERALUTF): Removed.
+       
+       * configure.ac (--disable-verifier): Added configure option.
+       
+       * src/vm/jit/stacktrace.c (stacktrace_getStack): Gather a wider range
+       for the cycle count statistics.
+
+2006-04-25 10:36  edwin
+
+       * src/vm/cycles-stats.h (CYCLES_STATS_COUNT_OVER): Added.
+
+2006-04-24 18:28  edwin
+
+       * src/vm/cycles-stats.c: Cleaned up whitespace.
+
+2006-04-24 18:22  edwin
+
+       * src/vm/cycles-stats.c (cycles_stats_print_percentile): Also perform
+       measurement overhead compensation for cumulated cycle counts.
+
+2006-04-24 17:16  edwin
+
+       * src/vm/global.h (ACC_CLASS_REFLECT_MASK): Added.
+       (ACC_CLASS_HAS_POINTERS): Likewise.
+       (vim boilerplate): Added.
+       
+       * src/vm/loader.c (load_field): Set ACC_CLASS_HAS_POINTERS flag.
+       
+       * src/vm/linker.c (link_class_intern): OR ACC_CLASS_HAS_POINTERS flag.
+       
+       * src/vm/builtin.c (builtin_new): Use ACC_CLASS_HAS_POINTERS to
+       determine
+       which kind of memory to allocate.
+       
+       * src/native/vm/VMClass.c (Java_java_lang_VMClass_getModifiers): Mask
+       reported access flags with ACC_CLASS_REFLECT_MASK.
+
+2006-04-24 16:24  twisti
+
+       * src/vm/jit/x86_64/emit.c (x86_64_emit_ifcc): Changed signature of
+       codegen_addreference.
+       (x86_64_emit_if_lcc): Likewise.
+       (x86_64_emit_if_icmpcc): Likewise.
+       (x86_64_emit_if_lcmpcc): Likewise.
+
+2006-04-24 16:10  twisti
+
+       * src/vm/jit/i386/codegen.c (codegen): Don't initialize mcode
+       variables. New dseg_addlinenumber signature fix.
+       (createnativestub): Don't initialize mcode variables.
+
+2006-04-24 16:06  twisti
+
+       * src/vm/jit/codegen-common.c (codegen_increase): Changed signature.
+       (codegen_addreference): Likewise.
+       (codegen_add_exception_ref): Likewise.
+       (codegen_add_arithmeticexception_ref): Likewise.
+       (codegen_add_arrayindexoutofboundsexception_ref): Likewise.
+       (codegen_add_arraystoreexception_ref): Likewise.
+       (codegen_add_classcastexception_ref): Likewise.
+       (codegen_add_nullpointerexception_ref): Likewise.
+       (codegen_add_fillinstacktrace_ref): Likewise.
+       (codegen_addpatchref): Likewise.
+       (codegen_finish): Likewise.
+       * src/vm/jit/codegen-common.h: Likewise.
+       
+       * src/vm/jit/dseg.c (dseg_increase): Made static.
+       (dseg_adds4): Use dseg_increase.
+       (dseg_adds8): Likewise.
+       (dseg_addfloat): Likewise.
+       (dseg_adddouble): Likewise.
+       (dseg_adds4_increase): Removed.
+       (dseg_adds8_increase): Likewise.
+       (dseg_addfloat_increase): Likewise.
+       (dseg_adddouble_increase): Likewise.
+       (dseg_addlinenumber): Changed signature.
+       (dseg_addlinenumber_inline_start): Likewise.
+       (dseg_adddata): Likewise.
+       * src/vm/jit/dseg.h: Likewise.
+       
+       * src/vm/jit/alpha/emit.c (vm/jit/alpha/emit.h): Removed.
+       (vm/jit/emit.h): Added.
+       (emit_lconst): New method.
+       * src/vm/jit/alpha/Makefile.am (libarch_la_SOURCES): Added emit.c
+       
+       * src/vm/jit/alpha/codegen.c (vm/jit/emit.h): Added.
+       (codegen): Use cd->mcodeptr instead of mcodeptr, and emit_load/store
+       functions instead of macros. Saves over 50kB object code size. Use new
+       signatures of codegen-common and dseg functions.
+       * src/vm/jit/alpha/codegen.h (var_to_reg_int): Removed.
+       (var_to_reg_flt): Likewise.
+       (store_reg_to_var_int): Likewise.
+       (store_reg_to_var_flt): Likewise.
+       
+       * src/vm/jit/i386/codegen.c: Use new signatures of codegen-common and
+       dseg functions.
+       * src/vm/jit/i386/codegen.h: Likewise.
+       * src/vm/jit/intrp/codegen.c: Likewise.
+       * src/vm/jit/intrp/codegen.h: Likewise.
+       * src/vm/jit/mips/codegen.c: Likewise.
+       * src/vm/jit/mips/codegen.h: Likewise.
+       * src/vm/jit/powerpc/codegen.c: Likewise.
+       * src/vm/jit/powerpc/codegen.h: Likewise.
+       * src/vm/jit/x86_64/codegen.c: Likewise.
+       * src/vm/jit/x86_64/codegen.h: Likewise.
+
+2006-04-24 15:43  edwin
+
+       * src/vm/jit/stacktrace.c (stacktrace_create): Do not free dump
+       memory here,
+       this is now done in the parent functions. Also removed the copy to gc
+       memory.
+       (stacktrace_fillInStackTrace): Copy stacktrace to gc memory.
+       Free dump memory.
+       (stacktrace_getClassContext): Free dump memory.
+       (stacktrace_getCurrentClass): Likewise.
+       (stacktrace_getStack): Likewise.
+       (stacktrace_dump_trace): Likewise.
+
+2006-04-24 11:40  edwin
+
+       * src/vm/jit/stacktrace.c (stacktrace_fillInStackTrace)
+       (stacktrace_getClassContext, stacktrace_getCurrentClass)
+       (stacktrace_getStack): Added cycle count statistics.
+       (stacktrace_print_cycles_stats): Added.
+       
+       * src/vm/jit/stacktrace.h (stacktrace_print_cycles_stats): Added.
+       
+       * src/vm/vm.c (vm_exit_handler): Call stacktrace_print_cycles_stats.
+
+2006-04-24 11:36  edwin
+
+       * src/vm/cycles-stats.h (CYCLES_STATS_END_WITH_OVERHEAD): Fix
+       arguments of
+       empty macro definition.
+
+2006-04-24 11:27  edwin
+
+       * src/vm/cycles-stats.h (CYCLES_STATS_DECLARE_AND_START)
+       (CYCLES_STATS_DECLARE_AND_START_WITH_OVERHEAD)
+       (CYCLES_STATS_END, CYCLES_STATS_END_WITH_OVERHEAD): Added convenience
+       macros.
+       
+       * src/vm/cycles-stats.c (cycles_stats_print): Fixed divide-by-zero.
+       Minor
+       output changes.
+
+2006-04-24 10:08  twisti
+
+       * src/vm/jit/mips/md.c (md_get_method_patch_address): Renamed from
+       md_assembler_get_patch_address.
+       * src/vm/jit/mips/asmpart.S (asm_call_jit_compiler): Renamed
+       md_assembler_get_patch_address to md_get_method_patch_address.
+
+2006-04-24 10:00  twisti
+
+       * src/vm/jit/powerpc/md.c (md_get_method_patch_address): New method.
+       * src/vm/jit/powerpc/asmpart.S (asm_call_jit_compiler): Use new
+       jit_asm_compile method. This fixes the ecj bugs seens with some mauve
+       tests and eclipse.
+
+2006-04-24 09:58  twisti
+
+       * src/vm/jit/powerpc/codegen.c (codegen): Replaced those ugly
+       M_TINTMOVE macros. Use M_LLD macros where possible.
+       * src/vm/jit/powerpc/codegen.h (M_LNGMOVE): Check for equal registers.
+       (M_TINTMOVE): Removed.
+
+2006-04-24 00:19  edwin
+
+       * src/vm/jit/i386/asmpart.S (asm_get_cycle_count): Omit the
+       stackframe.
+       This saves a couple of cycles of measurement overhead.
+
+2006-04-23 23:03  twisti
+
+       * src/vm/jit/alpha/md.c (md_get_method_patch_address): Renamed from
+       md_assembler_get_patch_address.
+       * src/vm/jit/alpha/asmpart.S (asm_call_jit_compiler): Renamed
+       md_assembler_get_patch_address to md_get_method_patch_address.
+
+2006-04-23 19:18  edwin
+
+       * src/vm/cycles-stats.c (cycles_stats_print_percentile): Better
+       extrapolation.
+       * src/vm/cycles-stats.h (CYCLES_STATS_DECLARE, CYCLES_STATS_COUNT)
+       (CYCLES_STATS_PRINT, CYCLES_STATS_PRINT_OVERHEAD): Added total cycles
+       counter.
+
+2006-04-23 19:16  edwin
+
+       * src/vm/builtin.c (builtin_new): Renamed rt-timing identifier.
+       (builtin_newarray): Added rt-timing.
+       
+       * src/vm/rt-timing.h: Added rt-timing for builtin_newarray.
+       * src/vm/rt-timing.c: Likewise.
+
+2006-04-23 16:11  edwin
+
+       * src/vm/builtin.c (builtin_print_cycles_stats): Use
+       CYCLES_STATS_PRINT_OVERHEAD.
+       
+       * src/vm/cycles-stats.h (CYCLES_STATS_PRINT_OVERHEAD): Added.
+       
+       * src/vm/cycles-stats.c (cycles_stats_print_percentile): Added.
+       (cycles_stats_print): Added `overhead` argument and automatic
+       measurement overhead compensation.
+
+2006-04-23 15:39  edwin
+
+       * src/vm/builtin.c (builtin_new): Added rt-timing.
+       (builtin_print_cycles_stats): Removed unused variable.
+       (builtin_monitorenter): Removed rt-timing.
+       (builtin_monitorexit): Likewise.
+       
+       * src/vm/rt-timing.c: rt-timing for buitin_new.
+       * src/vm/rt-timing.h: Likewise.
+
+2006-04-23 15:31  edwin
+
+       * src/vm/cycles-stats.c (cycles_stats_get_cpu_MHz): Better error
+       handling.
+
+2006-04-23 15:24  edwin
+
+       * src/vm/builtin.c (builtin_new): Gather cycle count statistics.
+       (CYCLES_STATS_DECLARE): Moved declarations to beginning of file.
+       
+       * src/vm/cycles-stats.c (cycles_stats_get_cpu_MHz): Added function for
+       automatic CPU frequency detection via /proc/cpuinfo.
+       (cycles_stats_print): Calculate estimated CPU times.
+
+2006-04-22 09:35  edwin
+
+       * src/vm/cycles-stats.c (cycles_stats_print): Made count, floor, and
+       ceiling
+       of type u8. This should avoid overflow problems.
+       
+       * src/vm/cycles-stats.h (cycles_stats_print): Made count an u8.
+
+2006-04-21 21:36  edwin
+
+       * src/vm/cycles-stats.c: New file. Better cycle count statistics.
+       
+       * src/vm/cycles-stats.h (CYCLES_STATS_PRINT): This is now a wrapper
+       for
+       cycles_stats_print.
+       
+       * src/vm/Makefile.am (cycles-stats.c): Added to sources.
+
+2006-04-21 14:32  edwin
+
+       * src/vm/jit/stacktrace.c (stacktrace_inline_fillStackTrace): Assert
+       that
+       there is an exception before dereferencing it.
+       (stacktrace_create): Document that this function may return NULL.
+       (stacktrace_getClassContext): Check return value of stacktrace_create.
+       (stacktrace_getCurrentClass): Likewise.
+       (stacktrace_getStack): Likewise. Document that this function may
+       return NULL.
+
+2006-04-21 13:08  edwin
+
+       * src/vm/jit/stacktrace.c (stacktrace_getClassContext): Document that
+       return
+       value may be NULL (in case of an exception).
+       
+       * src/native/vm/VMStackWalker.c
+       (Java_gnu_classpath_VMStackWalker_getCallingClass): Check return
+       value of
+       stacktrace_getClassContext.
+       (Java_gnu_classpath_VMStackWalker_getCallingClassLoader): Likewise.
+       
+       * src/native/vm/Field.c (cacao_get_field_address): Check return value
+       of
+       stacktrace_getClassContext.
+       
+       * src/native/vm/Method.c (Java_java_lang_reflect_Method_invokeNative):
+       Check return value of stacktrace_getClassContext.
+
+2006-04-21 11:07  twisti
+
+       * src/vm/jit/i386/md.c (md_get_method_patch_address): New method.
+       (md_icacheflush): Added.
+       (md_dcacheflush): Likewise.
+
+2006-04-21 10:54  twisti
+
+       * src/vm/jit/jit.c (jit_asm_compile): New method.
+       * src/vm/jit/jit.h (jit_asm_compile): Added.
+       (md_get_method_patch_address): Likewise.
+       
+       * src/vm/jit/x86_64/asmpart.S (asm_vm_call_method): Store
+       asm_call_jit_compiler on stack as for the other architectures.
+       (asm_call_jit_compiler): Use new jit_asm_compile.
+       
+       * src/vm/jit/x86_64/codegen.c (codegen): Use REG_ITMP3 for calling
+       methods. This is required for asm_vm_call_method to work.
+       
+       * src/vm/jit/x86_64/md.c (md_get_method_patch_address): New method.
+       (md_icacheflush): Added.
+       (md_dcacheflush): Added.
+       * src/vm/jit/x86_64/md-asm.h (mptr): Defined.
+
+2006-04-21 10:45  twisti
+
+       * src/vm/jit/stacktrace.c (stacktrace_add_method_intern): Reformatted
+       comments.
+
+2006-04-21 00:00  edwin
+
+       * src/vm/linker.c (link_class_intern): Impose loading constraints on
+       the
+       more general types of the overwritten method, instead of on the over-
+       writing method. Don't impose loading constraints when "overwriting"
+       the
+       instance initializaton method <init>, as it is not called virtually.
+
+2006-04-20 22:28  edwin
+
+       * src/vm/classcache.c (classcache_add_constraint): Also constrain the
+       return type of the given method.
+
+2006-04-20 21:47  edwin
+
+       * src/vm/linker.c (linker_addinterface): Add loading constraints when
+       an
+       interface method is overwritten.
+       (link_class_intern): Check new return value of linker_addinterface.
+
+2006-04-20 20:40  edwin
+
+       * src/vm/linker.c (link_class_intern): Only record loading constraints
+       for ENABLE_VERIFIER.
+
+2006-04-20 20:38  edwin
+
+       * src/vm/classcache.c (classcache_add_constraints_for_params): Added.
+       (classcache_add_constraint): Only define for ENABLE_VERIFIER.
+       
+       * src/vm/classcache.h (classcache_add_constraints_for_params): Added.
+       (classcache_add_constraint): Only define for ENABLE_VERIFIER.
+       
+       * src/vm/linker.c (link_class_intern): When overwriting a method,
+       record loading constraints for the parameter types, as required
+       by the spec.
+
+2006-04-20 19:18  edwin
+
+       * src/mm/memory.c (Changes): Added my name.
+       (vim boilerplate): Added.
+
+2006-04-20 18:59  edwin
+
+       * src/mm/memory.c: Added comments and some cleanup.
+
+2006-04-20 18:04  edwin
+
+       * configure.ac (ENABLE_LOOP): Changed default to "no".
+       
+       * src/vm/options.h (opt_loops): Only define for ENABLE_LOOP.
+       
+       * src/vm/options.c (opt_loops): Only define for ENABLE_LOOP.
+       
+       * src/vm/vm.c (-oloop, -i): Only recognize these options if
+       enabled with ENABLE_LOOP/ENABLE_INLINING.
+       
+       * src/vm/jit/allocator/lsra.c (opt_loops): Only use for ENABLE_LOOP.
+
+2006-04-20 10:55  twisti
+
+       * src/vm/jit/x86_64/codegen.h (M_ALD32): Added.
+
+2006-04-20 10:42  twisti
+
+       * src/vm/jit/x86_64/md-abi.h (REG_METHODPTR): Added.
+
+2006-04-20 08:45  twisti
+
+       * src/lib/vm/reference/java/lang/VMClassLoader.java: Updated to GNU
+       Classpath version.
+
+2006-04-19 01:05  edwin
+
+       * src/vm/builtin.c (builtin_print_cycles_stats): Added.
+       (builtin_monitorenter): Gather cycle count statistics.
+       (builtin_monitorexit): Likewise.
+       
+       * src/vm/builtin.h (builtin_print_cycles_stats): Added.
+       
+       * src/vm/jit/i386/asmpart.S (asm_get_cycle_count): Added.
+       
+       * src/vm/jit/asmpart.h (asm_get_cycle_count): Added.
+       
+       * src/vm/vm.c (vm_exit_handler): Call builtin_print_cycles_stats.
+       
+       * src/vm/cycles-stats.h: New file.
+       
+       * src/vm/Makefile.am (CYCLES_STATS_SOURCE): Added.
+       
+       * src/cacaoh/headers.c (asm_get_cycle_count): Dummy implementation
+       added.
+       
+       * configure.ac (--enable-cycles-stats): Added configure option.
+
+2006-04-18 21:16  twisti
+
+       * src/vm/jit/x86_64/emitfuncs.c: Moved to emit.c.
+       * src/vm/jit/x86_64/emitfuncs.h: Moved to md-emit.h
+       
+       * src/vm/jit/x86_64/codegen.c (vm/jit/x86_64/emitfuncs.h): Removed.
+       (vm/jit/x86_64/md-emit.h): Added.
+       
+       * src/vm/jit/x86_64/Makefile.am (libarch_la_SOURCES): Added emit.c and
+       md-emit.h, removed emitfuncs.c and emitfuncs.h.
+
+2006-04-18 20:36  twisti
+
+       * src/vm/jit/jit.h (IS_ADR_TYPE): Changed to use ==.
+       (IS_INT_TYPE): Added.
+       (IS_LNG_TYPE): Likewise.
+
+2006-04-18 20:34  twisti
+
+       * src/vm/jit/x86_64/codegen.c (vm/jit/emit.h): Added.
+       (codegen): Use emit_load/store functions instead of macors. Saves over
+       25kB object code size.
+       
+       * src/vm/jit/x86_64/codegen.h (ALIGNCODENOP): Added.
+       (var_to_reg_int): Removed.
+       (var_to_reg_flt): Likewise.
+       (store_reg_to_var_int): Likewise.
+       (store_reg_to_var_flt): Likewise.
+       (M_INEG, M_LNEG, M_INEG_MEMBASE, M_LNEG_MEMBASE): Added.
+       (M_CMOVEQ_MEMBASE, M_CMOVNE_MEMBASE, M_CMOVLT_MEMBASE)
+       (M_CMOVLE_MEMBASE, M_CMOVGE_MEMBASE, M_CMOVGT_MEMBASE): Likewise.
+       
+       * src/vm/jit/x86_64/emitfuncs.c (emit_load_s1): Added.
+       (emit_load_s2): Likewise.
+       (emit_load_s3): Likewise.
+       (emit_store): Likewise.
+       (emit_copy): Likewise.
+       (emit_cmovxx): Likewise.
+       
+       * src/vm/jit/x86_64/emitfuncs.h (emit_cmovxx): Added.
+
+2006-04-18 20:20  twisti
+
+       * src/vm/jit/x86_64/md-abi.h (REG_IFTMP): Defined.
+
+2006-04-18 20:17  edwin
+
+       * src/vm/jit/stack.c (stack_show_icmd): Updated to use the correct
+       macros for
+       (un)resolved methods. Minor output format changes.
+       
+       * src/vm/field.c (field_print): Print the class name.
+
+2006-04-18 20:10  twisti
+
+       * src/vm/jit/alpha/Makefile.am (DISASS_SOURCES): Added.
+       * src/vm/jit/mips/Makefile.am: Likewise.
+
+2006-04-18 15:55  twisti
+
+       * configure.ac (intl): Check on NetBSD too.
+
+2006-04-18 15:40  twisti
+
+       * configure.ac: Fixed typos.
+
+2006-04-18 13:36  twisti
+
+       * src/vm/jit/mips/codegen.h (M_FLTMOVE): Removed.
+       (M_TFLTMOVE): Likewise.
+       (M_TFLD): Likewise.
+       (M_TFST): Likewise.
+       (M_CCFLTMOVE): Likewise.
+       (M_CCFLD): Likewise.
+       (M_CCFST): Likewise.
+       * src/vm/jit/mips/codegen.c (codegen): Use float and double
+       explicitely.
+       * src/vm/jit/mips/emit.c: Likewise.
+
+2006-04-17 15:49  edwin
+
+       * src/vm/jit/intrp/codegen.c (intrp_codegen): Cast mcodeptr to u1*.
+       This should fix intrp on archs with u4* mcodeptr.
+
+2006-04-17 15:20  edwin
+
+       * src/vm/builtin.c (builtin_monitorenter, builtin_monitorexit): Added
+       rt-timing.
+       
+       * src/vm/rt-timing.c, src/vm/rt-timing.h: rt-timing for locks.
+
+2006-04-17 11:47  twisti
+
+       * src/vm/jit/codegen-common.h (codegendata): Define lastmcodeptr on
+       all architectures. I think it does not matter.
+
+2006-04-14 23:50  edwin
+
+       * src/vm/jit/codegen-common.h: Typo fix.
+
+2006-04-14 23:48  edwin
+
+       * src/vm/jit/parse.c (parse): Removed unused variable `mi`.
+
+2006-04-14 23:46  edwin
+
+       * src/vm/rt-timing.c: include stdlib.h to fix warning.
+
+2006-04-14 12:40  twisti
+
+       * src/vm/jit/mips/emit.c: New file.
+       * src/vm/jit/mips/Makefile.am (libarch_la_SOURCES): Added emit.c
+       
+       * src/vm/jit/mips/codegen.c (vm/jit/emit.h): Added.
+       (codegen): Use cd->mcodeptr instead of mcodeptr, and emit_load/store
+       functions instead of macors. Saves over 50kB object code size.
+       
+       * src/vm/jit/mips/codegen.h (var_to_reg_int): Removed.
+       (var_to_reg_flt): Likewise.
+       (store_reg_to_var_int): Likewise.
+       (store_reg_to_var_flt): Likewise.
+
+2006-04-14 11:57  twisti
+
+       * src/vm/jit/codegen-common.c (codegen_setup): Fixed compiler
+       warnings, set lastmcodeptr.
+       (codegen_increase): Fixed compiler warnings.
+       (codegen_finish): Likewise.
+       (codegen_createnativestub): Likewise.
+
+2006-04-14 11:28  twisti
+
+       * src/vm/jit/alpha/emit.h: Removed. There's now a common one in
+       src/vm/jit/.
+
+2006-04-14 11:20  twisti
+
+       * src/vm/jit/emit.h: New file.
+       * src/vm/jit/Makefile.am (noinst_HEADERS): Added emit.h.
+       
+       * src/vm/jit/powerpc/emit.c: New file.
+       * src/vm/jit/powerpc/Makefile.am (libarch_la_SOURCES): Added emit.c.
+       
+       * src/vm/jit/powerpc/codegen.c (vm/jit/emit.h): Added.
+       (codegen): Use cd->mcodeptr instead of mcodeptr, and emit_load/store
+       functions instead of macors. Saves over 100kB object code size.
+       
+       * src/vm/jit/powerpc/codegen.h (var_to_reg_int): Removed.
+       (var_to_reg_lng): Likewise.
+       (var_to_reg_lng_low): Likewise.
+       (var_to_reg_lng_high): Likewise.
+       (var_to_reg_flt): Likewise.
+       (var_to_reg_dbl): Likewise.
+       (store_reg_to_var_int): Likewise.
+       (store_reg_to_var_lng): Likewise.
+       (store_reg_to_var_adr): Likewise.
+       (store_reg_to_var_flt): Likewise.
+       (store_reg_to_var_dbl): Likewise.
+       (M_LLD_INTERN): Added.
+       (M_LLD): Likewise.
+       (M_LST_INTERN): Likewise.
+       (M_LST): Likewise.
+
+2006-04-13 20:45  edwin
+
+       * src/vm/loader.c (load_class_from_classloader): Detailed rt-timing.
+       (load_class_bootstrap): Likewise.
+       
+       * src/vm/rt-timing.c: Added rt-timing for loading from classloaders.
+       * src/vm/rt-timing.h: Likewise.
+
+2006-04-13 18:21  edwin
+
+       * src/vm/loader.c (load_class_from_classbuffer): Separate timing for
+       descriptor_pool_new.
+       
+       * src/vm/rt-timing.c: Likewise.
+       
+       * src/vm/rt-timing.h: Likewise.
+
+2006-04-13 18:00  edwin
+
+       * src/vm/loader.c (load_class_from_classbuffer): Added real-time
+       loading time
+       measurements.
+       
+       * src/vm/rt-timing.c: Likewise.
+       * src/vm/rt-timing.h: Likewise.
+
+2006-04-13 17:23  edwin
+
+       * src/vm/rt-timing.c: Added timing of linker stages.
+       * src/vm/rt-timing.h: Likewise.
+       * src/vm/linker.c: Likewise.
+
+2006-04-13 16:58  edwin
+
+       * src/vm/rt-timing.h (RT_TIMING_TIME_DIFF): Added.
+       
+       * src/vm/jit/jit.c (jit_compile_intern): Use RT_TIMING_TIME_DIFF.
+       
+       * src/vm/linker.c (link_class): Use rt-timing for measuring link time.
+       
+       * src/cacaoh/Makefile.am (cacaoh_LDFLAGS): Link with librt for
+       ENABLE_RT_TIMING.
+
+2006-04-13 16:48  edwin
+
+       * src/vm/rt-timing.c (rt_timing_stat): Added field `totalindex`.
+       (rt_timing_stat_defs): Likewise.
+       (rt_timing_diff): Renamed to rt_timing_time_diff.
+       (rt_timing_print_time_stats): Use `totalindex` to calculate
+       percentage.
+       
+       * src/vm/rt-timing.h (RT_TIMING_LINK_TOTAL): Added.
+       (rt_timing_diff): Renamed to rt_timing_time_diff.
+
+2006-04-13 14:09  twisti
+
+       * src/vm/jit/alpha/emit.c: New file.
+       * src/vm/jit/alpha/emit.h: Likewise.
+
+2006-04-13 13:10  twisti
+
+       * src/vm/jit/codegen-common.h (codegendata): Changed mcodeend to
+       u1*. Define mcodeptr to u4* for non-i386/x86_64 architectures.
+
+2006-04-13 09:32  twisti
+
+       * src/vm/jit/x86_64/codegen.c (codegen): Use argument registers
+       directly in exception stubs, instead of temporary ones. This reduces
+       code-size about 150kB for -all.
+
+2006-04-13 09:19  twisti
+
+       * src/vm/jit/x86_64/emitfuncs.c (x86_64_emit_ishift): Bugfixes found
+       by javver.
+       (x86_64_emit_lshift): Likewise.
+
+2006-04-12 22:20  edwin
+
+       * src/vm/rt-timing.c: Added file.
+       * src/vm/rt-timing.h: Likewise.
+       
+       * src/vm/jit/jit.c: Moved real-time timing stuff to rt-timing.[ch]
+       * src/vm/jit/jit.h: Likewise.
+       
+       * src/vm/vm.c (vm_exit_handler): Call rt_timing_print_time_stats.
+       
+       * src/vm/Makefile.am (rt-timing.c, rt-timing.h): Added.
+
+2006-04-12 22:16  edwin
+
+       * src/vm/jit/allocator/simplereg.c (allocate_scratch_registers): Fixed
+       compiler warning.
+
+2006-04-12 20:06  edwin
+
+       * src/vm/jit/parse.c (parse): New unresolved reference scheme: Data
+       structures
+       for unresolved fields/methods are only created if really needed.
+       Otherwise
+       a lazy resolving is done on-the-fly. This reduced compile time by
+       over 10% for
+       SpecJVM98 and eclipse.
+       
+       * src/vm/resolve.c (resolve_subtype_check): Added.
+       (resolve_lazy_subtype_checks): Likewise.
+       (resolve_and_check_subtype_set): Use resolve_subtype_check. Return
+       resolve_result_t instead of bool. Removed `checked` argument.
+       (resolve_class): Use resolve_subtype_check.
+       (resolve_field_verifier_checks): Added.
+       (resolve_field_lazy): Added.
+       (resolve_field): Use resolve_field_verifier_checks.
+       (resolve_method_invokespecial_lookup): Added.
+       (resolve_method_verifier_checks): Added.
+       (resolve_method_lazy): Added.
+       (resolve_method): Use resolve_method_invokespecial_lookup and
+       resolve_method_verifier_checks.
+       (constrain_unresolved_method): Adapted to new unresolved reference
+       scheme.
+       (constrain_unresolved_field): Likewise.
+       (unresolved_field_debug_dump): Likewise.
+       (unresolved_method_debug_dump): Likewise.
+       
+       * src/vm/jit/patcher.h (intrp_patcher_get_putstatic_clinit): Added.
+       
+       * src/vm/jit/intrp/intrp.h (vm_Cell2afi): Added.
+       (vm_afi2Cell): Likewise.
+       (printarg_afi): Added.
+       (vim boilerplate): Added.
+       (Changes): Added my name.
+       
+       * src/vm/jit/intrp/patcher.c (intrp_patcher_get_putstatic_clinit):
+       Added.
+       
+       * src/vm/jit/intrp/disass.c (printarg_afi): Added.
+       (Changes): Added my name.
+       (vim boilerplate): Added.
+       
+       * src/vm/jit/intrp/java.vmg (GETSTATIC_CELL, GETSTATIC_INT,
+       GETSTATIC_FLOAT)
+       (GETSTATIC_LONG, PUTSTATIC_CELL, PUTSTATIC_INT, PUTSTATIC_FLOAT)
+       (PUTSTATIC_LONG, GETFIELD_CELL, GETFIELD_INT, GETFIELD_FLOAT)
+       (GETFIELD_LONG, PUTFIELD_CELL, PUTFIELD_INT, PUTFIELD_FLOAT)
+       (PUTFIELD_LONG): Now take a fieldinfo instead of an unresolved_field.
+       (INVOKEVIRTUAL, INVOKESTATIC, INVOKESPECIAL, INVOKEINTERFACE): Now
+       take
+       a methodinfo instead of an unresolved_method.
+       (PATCHER_GETSTATIC_CLINIT_INT, PATCHER_GETSTATIC_CLINIT_FLOAT)
+       (PATCHER_GETSTATIC_CLINIT_LONG, PATCHER_GETSTATIC_CLINIT_CELL): Added.
+       (PATCHER_PUTSTATIC_CLINIT_INT, PATCHER_PUTSTATIC_CLINIT_FLOAT)
+       (PATCHER_PUTSTATIC_CLINIT_LONG, PATCHER_PUTSTATIC_CLINIT_CELL): Added.
+       
+       * src/vm/jit/allocator/simplereg.c (allocate_scratch_registers):
+       Use INSTRUCTION_GET_METHODDESC to get method descriptor.
+       
+       * src/vm/jit/stack.c (stack_analyse): Ported to new unresolved
+       reference
+       scheme.
+       (stack_show_icmd): Likewise.
+       
+       * src/vm/jit/verify/typecheck.c (verify_invocation): Ported to new
+       unresolved
+       reference scheme.
+       (verify_basic_block): Likewise.
+       
+       * src/vm/jit/powerpc/codegen.c (codegen): Ported to new unresolved
+       reference
+       scheme.
+       
+       * src/vm/jit/alpha/codegen.c (codegen): Ported to new unresolved
+       reference
+       scheme.
+       
+       * src/vm/jit/mips/codegen.c (codegen): Ported to new unresolved
+       reference
+       scheme.
+       
+       * src/vm/jit/i386/codegen.c (codegen): Ported to new unresolved
+       reference
+       scheme.
+       
+       * src/vm/jit/x86_64/codegen.c (codegen): Ported to new unresolved
+       reference
+       scheme.
+       
+       * src/vm/jit/intrp/codegen.c (codegen): Ported to new unresolved
+       reference
+       scheme.
+       (Changes): Added my name.
+       
+       * src/vm/jit/intrp/codegen.h (vim boilerplate): Added.
+
+2006-04-12 18:07  edwin
+
+       * src/vm/resolve.h (resolve_result_t): Added.
+       (resolve_method_lazy): Added prototype.
+       (resolve_field_lazy): Added prototype.
+       (resolve_and_check_subtype_set): Removed prototype. This function is
+       becoming static.
+
+2006-04-12 17:51  edwin
+
+       * src/vm/class.c (class_showconstantpool): Use the new functions
+       method_methodref_print and field_fieldref_print.
+       
+       * src/vm/loader.c (load_constantpool): Use p.index in constant_FMIref.
+       (load_class_from_classbuffer): Likewise.
+       
+       * src/vm/jit/stack.c (stack_show_icmd): Use p.index in
+       constant_FMIref.
+       
+       * src/vm/jit/verify/typecheck.c (verify_invocation): Use p.index in
+       constant_FMIref.
+       
+       * src/vm/resolve.c (resolve_field, resolve_method,
+       constrain_unresolved_field)
+       (unresolved_field_debug_dump, unresolved_method_debug_dump):
+       Use p.index in constant_FMIref.
+       
+       * src/vm/method.c, src/vm/method.h (method_methodref_print): Added.
+       (method_methodref_println): Likewise.
+       
+       * src/vm/field.c, src/vm/field.h (field_fieldref_print): Added.
+       (field_fieldref_println): Likewise.
+       
+       * src/vm/references.h (constant_FMIref): Changed field `classref`
+       into a
+       union that is used for caching of already resolved fields/methods.
+       (IS_FMIREF_RESOLVED): Added.
+       (METHODREF_CLASSNAME): Added.
+       (FIELDREF_CLASSNAME): Added.
+       
+       * src/vm/jit/jit.h (INSTRUCTION_IS_RESOLVED): Added. This is a
+       preparation
+       for the lazy resolving rewrite.
+       (INSTRUCTION_IS_UNRESOLVED): Likewise.
+       (INSTRUCTION_GET_FIELDREF): Likewise.
+       (INSTRUCTION_GET_METHODREF): Likewise.
+       (INSTRUCTION_GET_FIELDDESC): Likewise.
+       (INSTRUCTION_GET_METHODDESC): Likewise.
+       (INSTRUCTION_UNRESOLVED_METHOD): Likewise.
+       (INSTRUCTION_UNRESOLVED_FIELD): Likewise.
+       (INSTRUCTION_RESOLVED_FMIREF): Likewise.
+       (INSTRUCTION_RESOLVED_FIELDINFO): Likewise.
+       (INSTRUCTION_RESOLVED_METHODINFO): Likewise.
+       
+       * src/vm/jit/intrp/disass.c (printarg_auf): Use METHODREF_CLASSNAME.
+
+2006-04-12 11:51  twisti
+
+       * src/vm/jit/alpha/codegen.c (codegen): Use directly argument
+       registers in exception stubs, instead of temporary ones. This reduces
+       code-size about 200kB for -all.
+
+2006-04-12 09:49  twisti
+
+       * src/vm/jit/powerpc/codegen.c (codegen): Fixed displacement overflow
+       problem when restoring LR. We can't use r0 here.
+
+2006-04-12 09:30  twisti
+
+       * NEWS: Line-number fix added.
+
+2006-04-12 09:20  edwin
+
+       * src/vm/jit/parse.c (parse): Skip line number entries that span over
+       zero
+       bytecode instructions.
+
+2006-04-12 08:52  edwin
+
+       * src/vm/method.h (methodinfo): Forward declaration moved to
+       refereneces.h.
+       * src/vm/field.h (fieldinfo): Forward declaration moved to
+       refereneces.h.
+       * src/vm/references.h (methodinfo, fieldinfo): Added forward
+       references.
+
+2006-04-12 08:34  edwin
+
+       * src/vm/class.c (class_showconstanti): Removed.
+       (class_showconstantpool): Documented.
+       (class_showmethods): Documented.
+       (vim boilerplate): Added.
+       (Changes): Finally added my name.
+
+2006-04-11 13:13  twisti
+
+       * src/vm/jit/x86_64/codegen.c (codegen): Changed signature to use
+       jitdata. Renamed reg_of_var by codegen_reg_of_var.
+       * src/vm/jit/x86_64/codegen.h (M_COPY): Likewise.
+
+2006-04-11 10:54  twisti
+
+       * tests/regression/clinitexception.2output: Updated.
+       * tests/regression/native/checkjni.output: Likewise.
+       * tests/regression/extest.2output: Likewise.
+
+2006-04-11 10:20  twisti
+
+       * src/vm/builtin.c (builtin_throw_exception): Changed return type and
+       return NULL. This is less error-prone in asm_vm_call_method.
+       * src/vm/builtin.h: Likewise.
+       
+       * src/vm/jit/alpha/asmpart.S (asm_vm_call_method_exception_handler):
+       Don't set v0 to NULL. This is now done in builtin_throw_exception.
+       * src/vm/jit/i386/asmpart.S: Likewise.
+       * src/vm/jit/mips/asmpart.S: Likewise.
+       * src/vm/jit/powerpc/asmpart.S: Likewise.
+       * src/vm/jit/x86_64/asmpart.S: Likewise.
+
+2006-04-11 10:04  twisti
+
+       * src/vm/jit/ifconv/ifconv.c (ifconv_static): Keep compiler happy.
+
+2006-04-11 09:00  edwin
+
+       * src/vm/jit/stack.c (stack_print_stack): Only use `regs` if
+       ENABLE_DISASSEMBLER is defined.
+       (stack_show_method): Likewise.
+       
+       * src/vm/jit/replace.c (replace_executionstate_println): Likewise.
+
+2006-04-11 05:10  edwin
+
+       * src/vm/jit/intrp/asmpart.c (intrp_asm_handle_exception): Do not
+       trace
+       exception when NDEBUG.
+       
+       * src/vm/jit/intrp/dynamic-super.c (disassemble_prim): Only enable for
+       ENABLE_DISASSEMBLER.
+       (dynamic_super_init): Only call disassemble_prim for
+       ENABLE_DISASSEMBLER.
+       
+       * src/vm/jit/intrp/java.vmg: Disable builtin_displaymethodstop and
+       builtin_trace_args for NDEBUG.
+
+2006-04-06 12:54  twisti
+
+       * src/vm/jit/mips: Added TAGS.
+       * src/vm/jit/mips/irix: Likewise.
+       * src/vm/jit/mips/irix/.cvsignore: Likewise.
+       * src/vm/jit/mips/.cvsignore: Likewise.
+
+2006-04-06 12:51  twisti
+
+       * src/vm/jit/mips/codegen.c (codegen): Changed signature to use
+       jitdata. Renamed reg_of_var by codegen_reg_of_var.
+       (createcompilerstub): Replaced docacheflush by md_cacheflush.
+       * src/vm/jit/mips/codegen.h (M_COPY): Likewise.
+       * src/vm/jit/mips/md.c (sys/mman.h): Removed.
+       (docacheflush): Likewise.
+
+2006-04-06 00:33  edwin
+
+       * configure.ac: Added host type `armv5l`.
+
+2006-04-05 20:31  edwin
+
+       * src/vm/jit/parse.h, src/vm/jit/parse.c (OP1LOAD):
+       Split into OP1LOAD_ONEWORD and OP1LOAD_TWOWORD. Index is only checked
+       if
+       ENABLE_VERIFIER.
+       (OP1STORE): Split into OP1STORE_ONEWORD and OP1STORE_TWOWORD. Index
+       is
+       only checked if ENABLE_VERIFIER.
+
+2006-04-05 19:58  edwin
+
+       * src/vm/jit/parse.c (parse): Cleaned up and reordered an if.
+
+2006-04-05 19:44  edwin
+
+       * src/vm/jit/parse.c (parse): Remove the `if (!iswide)` check for
+       each opcode
+       by making JAVA_WIDE continue directly to the label fetch_opcode.
+       (This also
+       removed a part of the iswide check at the end of the loop.)
+
+2006-04-05 18:48  edwin
+
+       * src/vm/jit/alpha/codegen.c (codegen, createnativestub): Remove
+       opt_verbosecall code for NDEBUG builds.
+
+2006-04-05 18:13  edwin
+
+       * src/vm/jit/parse.c (parse): Only do verifier checks if
+       ENABLE_VERIFIER.
+       Cleaned up an obsolete printf.
+
+2006-04-05 12:56  edwin
+
+       * configure.ac (ENABLE_RT_TIMING): Added.
+       
+       * src/vm/jit/jit.c (ENABLE_RT_TIMING): Added code for real-time timing
+       of compiler passes.
+       
+       * src/vm/jit/jit.h (jit_print_time_stats): Added.
+       
+       * src/vm/vm.c (vm_exit_handler): Call jit_print_time_stats.
+
+2006-04-05 11:32  edwin
+
+       * src/vm/jit/inline/inline.c (create_block): Use BASICBLOCK_INIT.
+
+2006-04-05 10:02  twisti
+
+       * src/vm/jit/alpha/asmpart.S (asm_vm_call_method): Removed !NDEBUG as
+       builtin_throw_exception actually posts the thrown exception to the VM
+       system.
+       * src/vm/jit/powerpc/asmpart.S: Likewise.
+       * src/vm/jit/mips/asmpart.S: Likewise.
+       * src/vm/jit/x86_64/asmpart.S: Likewise.
+
+2006-04-05 09:57  edwin
+
+       * src/vm/jit/jit.h (instruction): Removed `method` field.
+       (insinfo_inline): Added.
+       (basicblock): Added `method` field.
+       
+       * src/vm/jit/dseg.c (dseg_addlinenumber_inline_start)
+       (dseg_addlinenumber_inline_end): Use new insinfo_inline struct.
+       
+       * src/vm/jit/verify/typecheck.c (verify_basic_block): Removed unused
+       variable `myclass`.
+       
+       * src/vm/jit/inline/inline.c (emit_inlining_prolog,
+       emit_inlining_epilog):
+       Use insinfo_inline struct.
+       (inline_write_exception_handlers): Removed `method` field.
+       
+       * src/vm/jit/i386/codegen.c (codegen): Use insinfo_inline struct.
+       
+       * src/vm/jit/parse.h (several macros): Removed `method` field from
+       instruction.
+       
+       * src/vm/jit/stack.c (stack_show_icmd): Adapted to new insinfo_inline
+       struct.
+
+2006-04-05 09:54  twisti
+
+       Fixes GCC Bugzilla Bug #26990.
+       * src/vm/vm.c (vm_exit): Don't check for exception of System.exit().
+
+2006-04-04 21:31  edwin
+
+       * src/vm/builtin.c (builtin_throw_exception): No twisti, we don't
+       turn off
+       exceptions just because it is NDEBUG ;)
+       * src/vm/jit/i386/asmpart.S (asm_vm_call_method_exception_handler):
+       Likewise.
+
+2006-04-04 18:14  edwin
+
+       * src/vm/jit/i386/Makefile.am: Do not build disassebmler for
+       --disable-disassembler
+       * src/vm/jit/i386/codegen.c (codegen): disable verbosecall code for
+       NDEBUG
+
+2006-04-04 18:11  edwin
+
+       * src/vm/jit/ifconv/ifconv.c (ifconv_static): #ifdef debug code.
+       (check): Likewise.
+
+2006-04-04 09:17  twisti
+
+       * src/threads/native/threads.c (tablelock): Removed.
+       (tables_lock, tables_unlock): Likewise.
+       (criticalcompare): Removed tablelock initialization.
+       * src/vm/hashtable.h (tables_lock, tables_unlock): Removed.
+       * src/vm/global.h (VFTBLINTERFACETABLE): Likewise.
+       (cast_lock, cast_unlock): Likewise.
+
+2006-04-04 09:14  twisti
+
+       * src/vm/exceptions.c (exceptions_new_nosuchmethoderror): Print
+       classname with dots.
+       (exceptions_handle_exception): Compiler warning fix.
+
+2006-04-04 09:13  edwin
+
+       * src/vm/jit/verify/typeinfo.c (CLASSINFO_IMPLEMENTS_INTERFACE):
+       Removed the
+       single use of the macro VFTBLINTERFACETABLE
+
+2006-04-04 08:45  twisti
+
+       * src/native/vm/VMClass.c: Reordered methods like in the
+       VMClass.java. This eases the 1.5 changes addition.
+
+2006-04-04 08:30  edwin
+
+       * src/vm/jit/parse.c (parse): Removed obsolete variable
+       `skipBasicBlockChange`.
+
+2006-04-04 08:24  edwin
+
+       * src/vm/jit/parse.c (parse): Removed obsolete variable `firstlocal`.
+       (Was used for the old inliner.)
+
+2006-04-03 15:36  twisti
+
+       * src/vm/jit/powerpc/codegen.c (codegen): Changed signature to use
+       jitdata. Renamed reg_of_var by codegen_reg_of_var.
+       * src/vm/jit/powerpc/codegen.h (M_COPY): Likewise.
+
+2006-04-03 13:59  twisti
+
+       * src/vm/jit/powerpc/codegen.c (codegen): Renamed parentargs_base to
+       stackframesize.
+       (codegen_trace_args): Likewise.
+
+2006-04-02 16:17  edwin
+
+       * src/vm/jit/i386/codegen.c (codegen): Implemented inlining of
+       synchronized
+       methods (INLINE_START, INLINE_END do monitorenter/exit).
+
+2006-04-02 16:16  edwin
+
+       * src/vm/jit/inline/inline.c (inline_node): Added fields for inlining
+       synchronized methods.
+       (inline_context): Added `master` pointer to outermost caller. Added
+       field
+       `calls_others`. (Leaf method detection should really be done after
+       inlining).
+       (several methods): Implemented inlining of synchronized methods.
+       (inline_new_stackslot): Added.
+       (inline_write_exception_handlers): Added.
+
+2006-04-01 21:03  edwin
+
+       * src/vm/jit/intrp/codegen.c (createcalljavafunction): Create
+       codeinfo with
+       the right methodinfo pointer.
+
+2006-04-01 21:00  edwin
+
+       * src/vm/jit/codegen-common.h (intrp_createnativestub): Takes a
+       `jitdata *` now.
+       
+       * src/vm/jit/intrp/codegen.c (intrp_codegen, intrp_createnativestub)
+       (createcalljavafunction): Use jitdata.
+
+2006-03-31 12:38  edwin
+
+       * src/vm/jit/inline/inline.c, src/vm/jit/inline/inline_debug.c:
+       Adapted to
+       twisti's jitdata changes.
+
+2006-03-31 07:50  twisti
+
+       * src/vm/jit/powerpc/asmpart.S (asm_vm_call_method): Replaced $stub
+       symbols with old symbols and define them for darwin in the
+       corresponding md-asm.h.
+       (asm_call_jit_compiler): Likewise.
+       (asm_wrapper_patcher): Likewise.
+       (asm_replacement_out): Likewise.
+       * src/vm/jit/powerpc/darwin/md-asm.h (builtin_asm_get_exceptionptrptr)
+       (builtin_throw_exception, exceptions_handle_exception, jit_compile)
+       (replace_me, stacktrace_create_extern_stackframeinfo)
+       (stacktrace_remove_stackframeinfo): Changed to $stub symbol.
+       (stacktrace_extern_fillInStackTrace): Removed.
+       
+       * src/vm/jit/powerpc/linux/md-abi.c (regs): Added.
+
+2006-03-31 07:14  twisti
+
+       * src/vm/jit/powerpc/patcher.c
+       (patcher_checkcast_instanceof_interface): Compile fix (typo).
+
+2006-03-30 12:01  twisti
+
+       * src/vm/jit/alpha/asmpart.S (vm/jit/abi.h): Changed to
+       vm/jit/abi-asm.h.
+       * src/vm/jit/mips/asmpart.S: Likewise.
+       * src/vm/jit/i386/asmpart.S: Likewise.
+       * src/vm/jit/x86_64/asmpart.S: Likewise.
+
+2006-03-30 11:59  twisti
+
+       * src/vm/jit/powerpc/codegen.c (codegen): Changed signature to use
+       jitdata. Renamed reg_of_var by codegen_reg_of_var.
+       * src/vm/jit/powerpc/codegen.h (M_COPY): Likewise.
+       
+       * src/vm/jit/powerpc/asmpart.S (vm/jit/abi.h): Changed to
+       vm/jit/abi-asm.h.
+       (asm_vm_call_method_exception_handler): Export it.
+       (asm_vm_call_method): Don't put label addresses into the
+       "data-segment", as it's located in the .text area and that may be
+       read-only. Changed to use PIC code. Linux stuff is still missing.
+       
+       * src/vm/jit/powerpc/Makefile.am (DISASS_SOURCES): Added.
+       * src/vm/jit/powerpc/disass.c (regs): Removed.
+
+2006-03-30 10:26  twisti
+
+       * src/vm/jit/ifconv/Makefile.am (AM_CPPFLAGS): Added OS_DIR.
+       (LIBS): Added.
+
+2006-03-30 10:23  twisti
+
+       * src/vm/jit/Makefile.am (noinst_HEADERS): Added abi-asm.h.
+       * src/vm/jit/abi.h (vm/jit/abi-asm.h): Added.
+       (nregdescint, regs, nregdescfloat): Added.
+       * src/vm/jit/abi-asm.h: New file.
+       * src/vm/jit/reg.h (nregdescint, nregdescfloat): Removed.
+       * src/vm/jit/reg.c (vm/jit/abi.h): Added.
+       * src/vm/jit/replace.c: Likewise.
+       * src/vm/jit/allocator/lsra.c: Likewise.
+       * src/vm/jit/powerpc/darwin/md-asm.h
+       (asm_vm_call_method_exception_handler): Added.
+       * src/vm/jit/powerpc/darwin/md-abi.c (regs): Added.
+
+2006-03-30 10:14  twisti
+
+       * src/vm/jit/codegen-common.c: Use ENABLE_DISASSEMBLER.
+       * src/vm/jit/codegen-common.h: Likewise.
+       * src/vm/jit/stack.c: Likewise. Plus ENABLE_LSRA.
+       * src/vm/jit/disass.h: Likewise.
+       * src/vm/jit/jit.c: Likewise. Plus ENABLE_LOOP.
+
+2006-03-30 10:10  twisti
+
+       * src/vm/jit/powerpc/patcher.c (patcher_invokevirtual): Use disp
+       variable for code patching. This will ease the overflow code
+       comming.
+       (patcher_invokeinterface): Likewise.
+       (patcher_checkcast_instanceof_interface): Likewise.
+
+2006-03-30 09:52  twisti
+
+       * src/vm/exceptions.c (exceptions_handle_exception): Check for special
+       * start/endpc-NULL case. This makes asmpart stuff much easier, like on
+       * Darwin or IRIX.
+       
+       * src/vm/jit/asmpart.h (asm_vm_call_method_exception_handler): Added.
+       
+       * src/vm/jit/alpha/asmpart.S (asm_vm_call_method_exception_handler):
+       Export it.
+       (asm_vm_call_method): Don't put label addresses into the
+       "data-segment", as it's located in the .text area and that may be
+       read-only.
+       * src/vm/jit/i386/asmpart.S: Likewise.
+       * src/vm/jit/mips/asmpart.S: Likewise.
+       * src/vm/jit/x86_64/asmpart.S: Likewise.
+
+2006-03-30 09:20  twisti
+
+       * src/vm/jit/mips/asmpart.S (asm_vm_call_method): Return NULL for
+       exception.
+
+2006-03-30 08:48  twisti
+
+       * configure.ac (opcodes): Check for disassembler symbol as
+       init_disassemble_info isn't defined everywhere, like NetBSD.
+
+2006-03-29 23:11  twisti
+
+       * src/vm/jit/powerpc/netbsd: New directory.
+       * src/vm/jit/powerpc/netbsd/md-abi.h: New file.
+       * src/vm/jit/powerpc/netbsd/md-os.c: Likewise.
+       * src/vm/jit/powerpc/netbsd/md-asm.h: Likewise.
+       * src/vm/jit/powerpc/netbsd/Makefile.am: Likewise.
+       * src/vm/jit/powerpc/netbsd/md-abi.c: Likewise.
+       * src/vm/jit/powerpc/netbsd/.cvsignore: Likewise.
+       * configure.ac (host_os): Added NetBSD.
+       (AC_CONFIG_FILES): Added src/vm/jit/powerpc/netbsd/Makefile.
+
+2006-03-28 15:43  twisti
+
+       * tests/regression/codepatching/test.java: Made functions static
+       final.
+       --This line, and those below, will be ignored--
+       
+       M test.java
+
+2006-03-28 15:41  twisti
+
+       * src/vm/jit/i386/codegen.c (codegen): Changed signature to use
+       jitdata. Renamed reg_of_var by codegen_reg_of_var.
+       * src/vm/jit/i386/codegen.h (M_COPY): Likewise.
+
+2006-03-28 15:14  twisti
+
+       * configure.ac (AC_CONFIG_FILES): Added src/vm/jit/ifconv/Makefile.
+
+2006-03-28 15:10  twisti
+
+       * src/vm/jit/Makefile.am (DIST_SUBDIRS): Added ifconv.
+       * src/vm/jit/ifconv: New directory.
+       * src/vm/jit/ifconv/ifconv.c: New file.
+       * src/vm/jit/ifconv/Makefile.am: Likewise.
+       * src/vm/jit/ifconv/ifconv.h: Likewise.
+       * src/vm/jit/ifconv/.cvsignore: Likewise.
+
+2006-03-28 14:52  twisti
+
+       * src/vm/method.h (vm/jit/code.h): Added.
+       (codeinfo, rplpoint, executionstate, sourcestate): typedef's removed.
+       
+       * src/vm/jit/codegen-common.c (codegendata): Removed code.
+       (codegen_setup, codegen_finish, createnativestub, codegen)
+       (intrp_codegen): Changed signature to use jitdata.
+       (reg_of_var): Renamed to codegen_reg_of_var. Changed signature.
+       (codegen_free): Removed.
+       * src/vm/jit/codegen-common.h: Likewise.
+       
+       * src/vm/jit/stack.c (lock_show_icmd): Renamed to
+       lock_stack_show_icmd.
+       (analyse_stack): Renamed to stack_analyse. Changed signature to use
+       jitdata.
+       (ICMD_IF_ICMPxx): Make ICMD_IFxx last instruction in basic block. This
+       is required for if-conversion.
+       (stack_print): Renamed to stack_print_stack.
+       (show_icmd_method): Renamed to stack_show_method. Changed signature to
+       use jitdata.
+       (show_icmd_block): Renamed to stack_show_basicblock. Changed signature
+       to use jitdata.
+       (show_icmd): Renamed to stack_show_icmd.
+       * src/vm/jit/stack.h: Likewise.
+       
+       * src/vm/jit/code.h (codeinfo): Added typedef.
+       
+       * src/vm/jit/dseg.c (assert.h): Moved.
+       (dseg_resolve_datareferences, dseg_display): Changed signature to use
+       jitdata.
+       * src/vm/jit/dseg.h: Likewise.
+       
+       * src/vm/jit/verify/typecheck.c (typecheck): Changed signature to use
+       jitdata.
+       * src/vm/jit/verify/typecheck.h: Likewise.
+       
+       * src/vm/jit/loop/loop.c (analyseGraph): Changed signature to use
+       jitdata.
+       * src/vm/jit/loop/loop.h: Likewise.
+       * src/vm/jit/loop/graph.c (depthFirst): Likewise.
+       * src/vm/jit/loop/graph.h: Likewise.
+       * src/vm/jit/loop/analyze.c (optimize_loops): Likewise.
+       * src/vm/jit/loop/analyze.h: Likewise.
+       * src/vm/jit/allocator/lsra.c (lsra): Likewise.
+       * src/vm/jit/allocator/lsra.h: Likewise.
+       * src/vm/jit/allocator/simplereg.c (interface_regalloc)
+       (local_regalloc,allocate_scratch_registers): Likewise.
+       * src/vm/jit/allocator/simplereg.h: Likewise.
+       * src/vm/jit/parse.c (parse): Likewise.
+       * src/vm/jit/replace.c (replace_create_replacement_points): Likewise.
+       * src/vm/jit/intrp/codegen.c (intrp_codegen): Likewise.
+       * src/vm/jit/reg.c (reg_setup): Likewise.
+       * src/vm/jit/reg.h: Likewise.
+       
+       * src/vm/jit/jit.c (jit_compile): Use new function signatures and
+       jitdata structure.
+       (jit_compile_intern): Changed signature to use jitdata.
+       * src/vm/jit/jit.h (jitdata): Added.
+       (ICMD_OPCODE_MASK): Likewise.
+       (ICMD_CONDITION_MASK): Likewise.
+       
+       * src/vm/jit/replace.h (rplpoint, executionstate, sourcestate):
+       typedef's added.
+       (replace_create_replacement_points): Changed signature to use jitdata.
+       
+       * src/vm/jit/parse.h (INDEX_ONEWORD, INDEX_TWOWORD): Use goto.
+       (parse): Changed signature to use jitdata.
+
+2006-03-28 14:31  twisti
+
+       * src/vm/jit/x86_64/md.c (md_signal_handler_sigsegv)
+       (md_signal_handler_sigfpe): Comment changes.
+
+2006-03-28 14:30  twisti
+
+       * src/vm/jit/i386/codegen.c (createnativestub): Replaced _exceptionptr
+       by _no_threads_exceptionptr.
+
+2006-03-28 14:22  twisti
+
+       * NEWS: Added upcoming 0.96 release. Added miranda-methods fix.
+
+2006-03-28 14:21  twisti
+
+       * src/tests/regression/native/checkjni.c (PushLocalFrame): New method.
+       * src/tests/regression/native/checkjni.java (PushLocalFrame):
+       Likewise.
+       (equal(int,int)): Likewise.
+       * src/tests/regression/native/Makefile.am (NOTESTNAMES): Added.
+
+2006-03-28 11:54  twisti
+
+       * src/vm/jit/x86_64/codegen.c (codegen): Renamed parentargs_base to
+       stackframesize.
+       * tests/regression/extest.2output: Updated.
+
+2006-03-28 10:42  twisti
+
+       * src/vm/Makefile.am (noinst_LTLIBRARIES): Reformatted.
+
+2006-03-28 10:21  twisti
+
+       * src/native/vm/VMClassLoader.c (loadClass): Smaller changes.
+
+2006-03-28 09:41  twisti
+
+       * src/native/native.c (dummynativetable): Renamed getModifiers
+       functions to getModifiersInternal due to GNU Classpath VM interface
+       changes.
+       * src/native/vm/Constructor.c (getModifiers): Renamed to
+       getModifiersInternal.
+       * src/native/vm/Field.c (getModifiers): Likewise.
+       * src/native/vm/Method.c (getModifiers): Likewise.
+
+2006-03-27 11:37  twisti
+
+       * src/vm/class.c: Don't initialize classes to NULL.
+       
+       * src/vm/loader.c (loader_load_all_classes): Added NDEBUG.
+       * src/vm/builtin.c (builtin_new): Likewise.
+       * src/vm/jit/codegen-common.c (codegen_createnativestub): Likewise.
+       (codegen_disassemble_nativestub): Likewise.
+       * src/vm/jit/codegen-common.h (codegen_disassemble_nativestub):
+       Likewise.
+       * src/vm/jit/stack.c (stack_print): Likewise.
+       * src/vm/jit/stack.h (stack_print, show_icmd_method, show_icmd_block)
+       (show_icmd): Likewise.
+       * src/vm/exceptions.c (exceptions_handle_exception): Likewise.
+       * src/vm/linker.c (link_class_intern): Likewise.
+       * src/cacao/cacao.c (main): Likewise.
+       
+       * src/vm/jit/x86_64/codegen.c: Likewise.
+       * src/vm/jit/x86_64/asmpart.S (asm_vm_call_method): Likewise.
+       * src/vm/jit/x86_64/Makefile.am (DISASS_SOURCES): Added. Put into
+       ENABLE_DISASSEMBLER.
+       
+       * src/vm/jit/jit.c (jit_compile_intern): Added ENABLE_LOOP.
+       * src/vm/vm.c (vm_create): Added ENABLE_PROFILING.
+       (vm_exit_handler): Likewise.
+       
+       * configure.ac (AC_ENABLE_SHARED, AC_DISABLE_STATIC): Removed. Set it
+       manually.
+       (EXPORT_SYMBOLS_FLAGS): Removed.
+       (--enable-disassembler): Added.
+       (--ensable-loop): Likewise.
+       (--ensable-profiling): Likewise.
+       (--ensable-libjvm): Likewise.
+       (--ensable-inlining): Moved.
+       
+       * src/vm/jit/Makefile.am (LOOP_LIB): Added. Put into ENABLE_LOOP.
+       (PROFILE_LIB): Put into ENABLE_PROFILING.
+       * src/cacao/Makefile.am (cacao_LDFLAGS): Use -export-dynamic and let
+       libtool do the work. Add -all-static for ENABLE_STATICVM.
+       
+       * src/lib/Makefile.am: Made it -j aware.
+       
+       * src/vm/resolve.c (config.h, vm/global.h): Added.
+       * src/vm/classcache.c (config.h): Moved to top.
+       
+       * src/vm/exceptions.h: Small change.
+
+2006-03-27 11:15  twisti
+
+       * src/vm/utf8.c: Removed superfluous comment.
+
+2006-03-24 11:50  motse
+
+       * src/cacao/cacao.c (main): remove debug code
+
+2006-03-23 12:48  edwin
+
+       * src/vm/jit/parse.h (bound_check): Renamed to CHECK_BYTECODE_INDEX,
+       made
+       a NOP for ENABLE_VERIFIER undefined.
+       (bound_check_exclusive): Renamed to CHECK_BYTECODE_INDEX_EXCLUSIVE,
+       made
+       a NOP for ENABLE_VERIFIER undefined.
+       
+       * src/vm/jit/parse.c (fillextable): Cleaned up.
+       (bound_check): Renamed to CHECK_BYTECODE_INDEX.
+       (bound_check_exclusive): Renamed to CHECK_BYTECODE_INDEX_EXCLUSIVE.
+       (parse): Only do checks if ENABLE_VERIFIER is defined.
+
+2006-03-23 11:22  edwin
+
+       * src/vm/jit/parse.c (CHECK_END_OF_BYTECODE): Added a macro for
+       checking
+       the end of the bytecode that becomes a NOP if ENABLE_VERIFIER is
+       undefined.
+
+2006-03-23 02:06  edwin
+
+       * src/vm/jit/parse.c (parse): Uncuddled else's.
+
+2006-03-23 00:56  edwin
+
+       * src/vm/jit/powerpc/darwin/md-asm.h (_asm_replacement_out)
+       (_asm_replacement_in, _replace_me): Added #defines for Darwin.
+
+2006-03-23 00:30  edwin
+
+       * src/vm/jit/stack.h (CHECK_STACK_DEPTH): Added. Uses goto to a common
+       label for stack depth mismatches.
+       (MARKREACHED): Use CHECK_STACK_DEPTH, which becomes a NOP if
+       ENABLE_VERIFIER is undefined.
+       
+       * src/vm/jit/stack.c (anaylse_stack): Use CHECK_STACK_DEPTH.
+       Added common label `throw_stack_depth_error` for stack depth
+       mismatches.
+       Uncuddled else's.
+
+2006-03-23 00:08  edwin
+
+       * src/vm/global.h (TYPECHECK_STACK_COMPCAT): Replaced by
+       ENABLE_VERIFIER.
+       The separation made no sense, anyway.
+       
+       * src/vm/jit/stack.c (TYPECHECK_STACK_COMPCAT): Replaced by
+       ENABLE_VERIFIER.
+       (analyse_stack): Removed code duplication by branching to a common
+       label
+       for all computational category errors: throw_stack_category_error.
+
+2006-03-22 23:51  edwin
+
+       * src/vm/jit/stack.h (BBEND): Inlined this macro (used only once) at
+       its
+       call site in stack.c.
+       
+       * src/vm/jit/stack.c (analyse_stack): Inlined BBEND macro and cleaned
+       up
+       the code.
+
+2006-03-22 23:29  edwin
+
+       * src/vm/jit/stack.c (analyse_stack): Removed obsolete label
+       `icmd_store`.
+
+2006-03-22 23:27  edwin
+
+       * src/vm/jit/jit.h (ICMD_READONLY_ARG, ICMD_CLEAR_ARGREN): Removed.
+       
+       * src/vm/jit/stack.c (analyse_stack): Removed obsolete argument
+       renaming.
+       
+       * src/vm/jit/verify/typecheck.c (verify_basic_block): Removed
+       ICMD_READONLY_ARG and ICMD_CLEAR_ARGREN.
+
+2006-03-22 23:17  edwin
+
+       * src/vm/jit/stack.h (TYPE_VERIFYERROR): Changed to CHECK_BASIC_TYPE.
+       This
+       macro now becomes a NOP if ENABLE_VERIFIER is undefined. Otherwise it
+       uses
+       a goto to the common label throw_stack_type_error in order to save
+       space.
+       
+       * src/vm/jit/stack.c (analyse_stack): Added variable `expectedtype`
+       for use
+       by CHECK_BASIC_TYPE. Added label throw_stack_type_error.
+
+2006-03-22 20:59  edwin
+
+       * src/vm/jit/i386/asmpart.S (asm_vm_call_method): Save/restore stack
+       pointer
+       properly. Fixed copy&paste error in restoring callee-save registers.
+
+2006-03-22 18:32  edwin
+
+       * src/vm/jit/stack.c (analyse_stack): Added throw_stack_overflow
+       label.
+       
+       * src/vm/jit/stack.h (CHECKOVERFLOW): Make this a NOP if
+       ENABLE_VERIFIER
+       is undefined.
+       (REQUIRE): Use #if defined(...)
+
+2006-03-22 17:25  edwin
+
+       * src/vm/jit/stack.h (REQUIRE): Made a NOP if ENABLE_VERIFIER is
+       undefined.
+       
+       * src/vm/jit/stack.c (analyse_stack): Only define
+       throw_stack_underflow
+       if ENABLE_VERIFIER is defined.
+       (jit_type): Do not define that for NDEBUG.
+
+2006-03-22 17:14  edwin
+
+       * src/vm/jit/stack.h (REQUIRE): Avoid duplication of exception
+       throwing code.
+       
+       * src/vm/jit/stack.c (analyse_stack): Added label
+       throw_stack_underflow
+       for the REQUIRE macro.
+
+2006-03-22 15:30  edwin
+
+       * src/vm/jit/powerpc/md.c (DISASSINSTR): #ifdef'ed
+       * src/vm/jit/alpha/md.c (DISASSINSTR): #ifdef'ed
+       * src/vm/jit/i386/md.c (DISASSINSTR): #ifdef'ed
+       * src/vm/jit/x86_64/md.c (DISASSINSTR): #ifdef'ed
+       * src/vm/jit/mips/md.c (DISASSINSTR): #ifdef'ed
+
+2006-03-22 12:35  edwin
+
+       * src/vm/jit/inline/inline.c (stack_depth): Moved here from
+       inline_debug.c.
+       (NDEBUG): Put debug stuff inside #ifndef NDEBUG.
+       
+       * src/vm/jit/inline/inline_debug.c (stack_depth): Moved to inline.c
+
+2006-03-22 09:19  edwin
+
+       * src/vm/jit/inline/inline_debug.c (debug_dump_stack): Fixed warning
+       on
+       platforms that don't define NULL as a pointer.
+
+2006-03-22 01:22  edwin
+
+       * src/vm/jit/inline/inline.c (relocate_stack_ptr_inter,
+       rewrite_method):
+       Fixed warnings.
+       
+       * src/vm/jit/inline/inline_debug.c (DEBUG_SLOT, dump_inline_tree):
+       Fixed warnings.
+
+2006-03-21 14:07  twisti
+
+       * src/vm/jit/i386/codegen.h (ALIGNCODENOP): Added.
+       
+       * src/vm/jit/i386/codegen.c (codegen): Renamed to parentargs_base to
+       stackframesize. Align stack to 16-bytes.
+       (ICMD_GOTO): Use ALIGNCODENOP.
+       
+       * src/vm/jit/i386/asmpart.S (asm_vm_call_method): Align stack to
+       16-bytes. Use register defines for better readability.
+
+2006-03-21 11:58  twisti
+
+       * src/vm/jit/Makefile.am: Removed ifconv. Again...
+
+2006-03-21 11:50  twisti
+
+       * configure.ac (AC_INIT): Changed cvs to svn.
+       (--enable-inlining): Added.
+       
+       * src/vm/jit/Makefile.am (DIST_SUBDIRS): Added ifconv.
+       (ENABLE_IFCONV): Added. Use IFCONV_LIB.
+       (USE_INLINING): Renamed to ENABLE_INLINING.
+
+2006-03-21 07:57  edwin
+
+       * src/vm/jit/alpha/codegen.c (codegen): Comment 16-byte stack
+       alignment.
+       
+       * src/vm/jit/alpha/asmpart.S (asm_replacment_out): Fix comment about
+       stack layout.
+
+2006-03-21 07:42  edwin
+
+       * src/vm/jit/alpha/asmpart.S (REPLACEMENT_ROOM): Fixed deleted
+       characters.
+
+2006-03-21 04:14  edwin
+
+       * src/vm/jit/inline/Makefile.am (AM_CPPFLAGS): Added OS include dir.
+
+2006-03-21 03:15  edwin
+
+       * src/vm/jit/inline/inline_debug.c: Added file.
+
+2006-03-21 00:13  edwin
+
+       * src/vm/jit/inline/inline.c: Committed the inliner. This code works
+       but
+       it is still in prototyping stage.
+       
+       * src/vm/jit/parse.c (parse): Added (#if 0-ed) code for storing the
+       exception table that the inliner uses.
+
+2006-03-21 00:04  motse
+
+       major rework of jvmti. now we have three processes in jvmti mode.
+       there are still many debug statements
+
+2006-03-20 23:56  edwin
+
+       * src/vm/jit/code.h (codeinfo): Comment that profiling fields
+       will be removed.
+
+2006-03-20 15:41  edwin
+
+       * src/vm/jit/alpha/asmpart.S (asm_replacement_out): 16-byte align
+       stack.
+
+2006-03-20 15:37  edwin
+
+       * doc/stack_frames.txt: Some fixes, described PowerPC stack frames.
+
+2006-03-20 15:12  twisti
+
+       * src/vm/jit/alpha/codegen.c (codegen): Align stack to 16-bytes in
+       replacement stub.
+       * src/vm/jit/alpha/asmpart.S (asm_replacement_out): Load GP before
+       symbolic jumps.
+
+2006-03-20 14:43  twisti
+
+       * autogen.sh, src/boehm-gc/autogen.sh: Prefix all shell variables with
+       CACAO_ to prevent problems on OpenBSD.
+
+2006-03-20 14:27  twisti
+
+       * src/boehm-gc/darwin_stop_world.c,
+       src/boehm-gc/threadlibs.c,
+       src/boehm-gc/doc/README.changes,
+       src/boehm-gc/doc/README,
+       src/boehm-gc/doc/gcinterface.html,
+       src/boehm-gc/mark.c,
+       src/boehm-gc/include/gc.h,
+       src/boehm-gc/include/gc_cpp.h,
+       src/boehm-gc/include/gc_pthread_redirects.h,
+       src/boehm-gc/include/leak_detector.h,
+       src/boehm-gc/include/gc_config_macros.h,
+       src/boehm-gc/include/private/gc_priv.h,
+       src/boehm-gc/include/private/gcconfig.h,
+       src/boehm-gc/include/private/gc_pmark.h,
+       src/boehm-gc/include/private/gc_locks.h,
+       src/boehm-gc/configure.in,
+       src/boehm-gc/allchblk.c,
+       src/boehm-gc/powerpc_darwin_mach_dep.s,
+       src/boehm-gc/dbg_mlc.c,
+       src/boehm-gc/version.h,
+       src/boehm-gc/pthread_stop_world.c,
+       src/boehm-gc/malloc.c,
+       src/boehm-gc/headers.c,
+       src/boehm-gc/pthread_support.c,
+       src/boehm-gc/Makefile.direct,
+       src/boehm-gc/os_dep.c,
+       src/boehm-gc/Makefile.am,
+       src/boehm-gc/dyn_load.c,
+       src/boehm-gc/alloc.c,
+       src/boehm-gc/misc.c: Updated to upstream version 6.7.
+
+2006-03-19 19:46  edwin
+
+       * src/vm/jit/code.c (code_get_stack_frame_size): Implement stack
+       alignment
+       for MIPS.
+       
+       * src/vm/jit/mips/md.c (md_patch_replacement_point): Added.
+       
+       * src/vm/jit/mips/codegen.c (codegen): Handle replacement points.
+       8-byte align blocks that start with replacement points.
+       
+       * src/vm/jit/mips/asmpart.S (asm_replacement_out): Added.
+       (asm_replacement_in): Likewise.
+       
+       * src/vm/jit/replace.c (replace_activate_replacement_point): Activated
+       for MIPS.
+       (replace_deactivate_replacement_poin): Likewise.
+       (replace_me): Likewise.
+       (replace_read_executionstate): MIPS also keeps returnAddress in ITMP1.
+       (replace_write_executionstate): Likewise.
+       
+       * doc/stack_frames.txt: Documented MIPS stack frames.
+       
+       * src/vm/jit/powerpc/asmpart.S (asm_replacement_out): Fixed comment.
+
+2006-03-18 04:14  edwin
+
+       * src/vm/jit/powerpc/md.c (md_patch_replacement_point): Added.
+       
+       * src/vm/jit/powerpc/codegen.c (codegen): Handle replacement points.
+       
+       * src/vm/jit/powerpc/asmpart.S (asm_replacement_out): Added.
+       (asm_replacement_in): Likewise.
+       
+       * src/vm/jit/alpha/codegen.c (codegen): Added missing initialization
+       of `replacementpoint`.
+       
+       * src/vm/jit/alpha/asmpart.S (asm_replacement_out): Store PV register.
+       
+       * src/vm/jit/code.c (code_get_sync_slot_count): Ported to PowerPC.
+       (code_get_stack_frame_size): Likewise.
+       
+       * src/vm/jit/replace.c (replace_activate_replacement_point)
+       (replace_deactivate_replacement_poin): Activated for PowerPC.
+       (replace_read_value, replace_write_value): Added.
+       (replace_read_executionstate): Ported to PowerPC, more complete
+       data type handling.
+       (replace_write_executionstate): Ported to Ported, more complete
+       data type handling, fixed missing initialization of `topslot`.
+       (replace_me): Activated for PowerPC.
+
+2006-03-16 23:32  edwin
+
+       * src/vm/jit/alpha/codegen.c (codegen): Use `disp` for displacement.
+
+2006-03-16 21:12  edwin
+
+       * src/vm/jit/alpha/md.c (Changes): Added my name.
+
+2006-03-16 21:11  edwin
+
+       * src/vm/jit/alpha/md.c (md_patch_replacement_point): Added.
+       (vim boilerplate): Added.
+       
+       * src/vm/jit/replace.c (replace_activate_replacement_point)
+       (replace_deactivate_replacement_point, replace_me):
+       Activated replacement for alpha.
+
+2006-03-16 20:31  edwin
+
+       * src/vm/jit/alpha/asmpart.S (asm_replacement_out)
+       (asm_replacement_in): Use stt/ldt for float registers.
+       
+       * src/vm/jit/alpha/codegen.c (codegen): Put replacement-out stub
+       generation in correct scope. Fix warnings.
+
+2006-03-16 19:55  edwin
+
+       * src/vm/jit/alpha/codegen.c (codegen): Handle replacement points.
+       
+       * src/vm/jit/alpha/asmpart.S (asm_replacement_out): Added.
+       (asm_replacement_in): Likewise.
+       (vim boilerplate): Added.
+
+2006-03-16 19:36  edwin
+
+       * src/vm/jit/replace.c (replace_read_executionstate)
+       (replace_write_executionstate): Position of synchronization slot must
+       be calculated from low addresses up, instead of backwards from stack
+       base.
+
+2006-03-16 19:00  edwin
+
+       * src/vm/jit/replace.c (replace_create_replacement_points): Set
+       isleafmethod.
+
+2006-03-16 18:57  edwin
+
+       * src/vm/jit/code.c (code_codeinfo_new): Set codeinfo.isleafmethod.
+
+2006-03-16 18:44  edwin
+
+       * src/vm/jit/x86_64/codegen.c (codegen): Reuse `disp` variable.
+       * src/vm/jit/i386/codegen.c (codegen): Likewise.
+
+2006-03-16 18:38  edwin
+
+       * src/vm/jit/i386/asmpart.S (asm_replacement_out): Added pv.
+       * src/vm/jit/x86_64/asmpart.S (asm_replacement_out): Added pv.
+       
+       * src/vm/jit/replace.c (replace_read_executionstate)
+       (replace_write_executionstate): Prepared for alpha. Some cleanup.
+       
+       * src/vm/jit/replace.c (replace_write_executionstate):
+       Calculate stack pointer from given stack base.
+       (replace_executionstate_println): Added pv.
+       (replace_sourcestate_println): Added stackbase.
+       
+       * src/vm/jit/replace.h (executionstate): Added pv.
+       (sourcestate): Added stackbase.
+       
+       * src/vm/jit/tools/genoffsets.c (main): Added offes_pv.
+       
+       * doc/stack_frames.txt: Clarifications.
+
+2006-03-16 18:32  edwin
+
+       * src/vm/jit/code.c (code_get_sync_slot_count): No synchronization
+       slots
+       if USE_THREADS is undefined.
+       (code_get_stack_frame_size): Added x86_64 alignment slot.
+
+2006-03-16 17:29  edwin
+
+       * doc/stack_frames.txt: Added description of x86_64 stack frames.
+
+2006-03-16 17:24  twisti
+
+       * src/vm/jit/mips/md.c (sys/cachectl.h): Added.
+       (md_cacheflush, md_icacheflush, md_dcacheflush): New method.
+       
+       * src/vm/jit/mips/codegen.c: Use new exception stubs.
+       * src/vm/jit/mips/codegen.h (gen_nullptr_check, gen_bound_check)
+       (gen_div_check): Use new add reference functions.
+       
+       * src/vm/jit/mips/patcher.c: Replaced cacheflush with md_icacheflush
+       or md_dcacheflush.
+       
+       * src/vm/jit/mips/asmpart.S: (asm_calljavafunction): Removed.
+       (asm_calljavafunction2): Renamed to asm_vm_call_method. Pointer to
+       vm_arg block is now in a2. Use new defines.
+
+2006-03-16 17:22  edwin
+
+       * doc/stack_frames.txt: Added description of alpha stack frames.
+
+2006-03-16 17:16  twisti
+
+       * src/vm/vm.c (version): Check if __VERSION__ is defined.
+
+2006-03-16 15:36  twisti
+
+       * src/vm/jit/x86_64/md.c (md_cacheflush): New method.
+
+2006-03-16 15:28  edwin
+
+       * src/vm/jit/alpha/codegen.c (codegen): Cast to avoid compiler
+       warning.
+
+2006-03-16 15:19  twisti
+
+       * src/vm/jit/alpha, src/vm/jit/alpha/linux,
+       src/vm/jit/alpha/linux/.cvsignore, src/vm/jit/alpha/freebsd,
+       src/vm/jit/alpha/freebsd/.cvsignore, src/vm/jit/alpha/.cvsignore:
+       Added TAGS.
+
+2006-03-16 15:16  twisti
+
+       * src/vm/jit/alpha/md.c (md_cacheflush, md_icacheflush): New method.
+       * src/vm/jit/alpha/asmpart.S (asm_sync_instruction_cache): Renamed to
+       asm_cacheflush.
+       * src/vm/jit/alpha/patcher.c: Replaced asm_sync_instruction_cache with
+       md_icacheflush.
+
+2006-03-16 14:29  twisti
+
+       * src/vm/jit/i386/md.c (md_cacheflush): New method.
+
+2006-03-16 14:23  twisti
+
+       * src/vm/jit/powerpc, src/vm/jit/powerpc/linux,
+       src/vm/jit/powerpc/linux/.cvsignore, src/vm/jit/powerpc/darwin,
+       src/vm/jit/powerpc/darwin/.cvsignore, src/vm/jit/powerpc/.cvsignore:
+       Added TAGS.
+
+2006-03-16 14:19  twisti
+
+       * src/vm/jit/jit.h (md_cacheflush, md_icacheflush, md_dcacheflush):
+       Added.
+       * src/vm/jit/asmpart.h (asm_sync_instruction_cache): Removed.
+       
+       * src/vm/jit/codegen-common.c (codegen_finish): Call md_cacheflush for
+       the dynamic superinstructions (intrp) and the generated code.
+       
+       * src/vm/jit/powerpc/codegen.c: Use new exception stubs.
+       * src/vm/jit/powerpc/codegen.h (gen_nullptr_check, gen_bound_check):
+       Use new add reference functions.
+       
+       * src/vm/jit/powerpc/md.c (vm/jit/asmpart.h): Added.
+       (md_cacheflush, md_icacheflush, md_dcacheflush): New function.
+       * src/vm/jit/powerpc/patcher.c: Use new cache flush functions.
+
+2006-03-16 14:00  twisti
+
+       * src/cacao/cacao.c (mm/boehm.h, mm/memory.h): Removed.
+
+2006-03-16 13:59  twisti
+
+       * src/vm/jit/intrp/engine.c (USE_spTOS): Define it for __POWERPC__,
+       __POWERPC64__, __SPARC__. We know we need it there.
+
+2006-03-16 13:56  twisti
+
+       * tests/regression/native/Makefile.am (AM_CPPFLAGS): Added OS_DIR.
+
+2006-03-16 12:53  twisti
+
+       * src/vm/jit/tools/Makefile.am, src/vm/jit/verify/Makefile.am,
+       src/vm/jit/loop/Makefile.am, src/vm/jit/profile/Makefile.am,
+       src/cacao/Makefile.am, src/native/tools/Makefile.am,
+       src/native/vm/Makefile.am, src/native/Makefile.am,
+       src/toolbox/Makefile.am, src/mm/Makefile.am, src/cacaoh/Makefile.am
+       (AM_CPPFLAGS): Added OS_DIR.
+
+2006-03-16 12:03  twisti
+
+       * src/vm/jit/alpha/codegen.c: Use new exception stubs.
+       * src/vm/jit/alpha/codegen.h (gen_nullptr_check, gen_bound_check): Use
+       new add reference functions.
+
+2006-03-16 04:38  edwin
+
+       * src/vm/jit/replace.h (RPLPOINT_SBR): Removed obsolete flag constant.
+
+2006-03-16 04:17  edwin
+
+       * src/vm/jit/code.c (code_codeinfo_new): Commented.
+       (code_get_sync_slot_count): Added.
+       (code_get_stack_frame_size): Commented.
+       (code_codeinfo_free): Commented.
+       (code_free_code_of_method): Commented. Some cleanup.
+       
+       * src/vm/jit/code.h (code_get_sync_slot_count): Added.
+       
+       * src/vm/jit/i386/codegen.c (codegen): Use cd->lastmcodeptr to avoid
+       patching over basic block boundaries.
+       * src/vm/jit/x86_64/codegen.c (codegen): Likewise.
+       
+       * src/vm/jit/replace.h (rplpoint): `type` and `flags` added,
+       `hashlink` removed.
+       (sourcestate): Added slots for synchronized methods.
+       
+       * src/vm/jit/replace.c (replace_create_replacement_points): Store
+       basicblock
+       type.
+       (replace_read_executionstate, replace_write_executionstate):
+       Handle 2-word locals. Special handling for BBTYPE_SBR and BBTYPE_EXH
+       blocks.
+       Transfer synchronization slots.
+
+2006-03-16 00:05  edwin
+
+       * src/vm/jit/code.c (code_get_stack_frame_size): Deal with 4/8-byte
+       stackslots.
+       
+       * src/vm/jit/tools/genoffsets.c (main): Offsets of intregs and
+       fltregs.
+       
+       * src/vm/jit/i386/asmpart.S (asm_replacement_out): Renamed regs to
+       intregs. Some cleanup.
+       
+       * src/vm/jit/replace.c (replace_activate_replacement_point)
+       (replace_deactivate_replacement_point): Enabled on x86_64.
+       (replace_read_executionstate, replace_write_executionstate):
+       Deal with 4/8-byte stackslots. Handle float registers.
+       (replace_executionstate_println, replace_sourcestate_println):
+       Print register names where possible.
+       
+       * src/vm/jit/x86_64/md.c (md_patch_replacement_point): Added.
+       (vim boilerplate): Added.
+       
+       * src/vm/jit/x86_64/codegen.c (codegen): Handle replacement points.
+       Generate replacement-out stubs.
+       
+       * src/vm/jit/x86_64/asmpart.S (asm_replacement_out,
+       asm_replacement_in):
+       Added.
+       (vim boilerplate): Added.
+       
+       * src/vm/jit/replace.h (executionstate): Separate registers into int
+       and float registers. Some cleanup, use INT_REG_CNT, FLT_REG_CNT
+       macros.
+
+2006-03-15 21:27  edwin
+
+       * src/vm/jit/replace.c (replace_read_executionstate): Commented.
+       (replace_write_executionstate): Likewise, and set new PC here.
+       (replace_me): Target PC is now set in replace_write_executionstate.
+
+2006-03-15 20:53  edwin
+
+       * src/vm/jit/code.h (codeinfo): Changed regalloc to use rplalloc
+       structs.
+       Added fields storing stack slot counts.
+       
+       * src/vm/jit/code.c, src/vm/jit/code.h (code_get_stack_frame_size):
+       Added.
+       
+       * src/vm/jit/replace.c (replace_create_replacement_points): Store full
+       allocation info for locals and stack slots in rplalloc structs. Store
+       number of stack slots.
+       
+       * src/vm/jit/replace.c (replace_read_executionstate): Added.
+       (replace_write_executionstate): Likewise.
+       
+       * src/vm/jit/replace.c (replace_me): Use dump memory for sourcestate.
+       Read an write executionstate. Do actual replace by calling
+       asm_replace_in.
+       
+       * src/vm/jit/replace.c (replace_replacement_point_println)
+       (replace_executionstate_println): Print new fields. Show correct
+       number
+       of stack slots.
+       (replace_sourcestate_println): Added.
+       
+       * src/vm/jit/replace.h (rplalloc): Added.
+       (rplpoint): Changed regalloc fields to use rplalloc structs.
+       (executionstate): Removed saved regs.
+       (sourcestate): Added saved regs.
+       (replace_executionstate_println): Now takes codeinfo* argument.
+       (replace_sourcestate_println): Added.
+
+2006-03-15 20:43  edwin
+
+       * doc/stack_frames.txt: Added arrows indicating increasing
+       addresses/indices.
+
+2006-03-15 20:42  edwin
+
+       * src/vm/jit/asmpart.h (asm_replacement_in): Added prototype.
+
+2006-03-15 20:40  edwin
+
+       * src/vm/jit/i386/asmpart.S (asm_replacement_out): Save all integer
+       registers,
+       add space between stack frame and executionstate to accomodate
+       changing stack
+       frame size.
+       
+       * src/vm/jit/i386/asmpart.S (asm_replacement_in): Added.
+
+2006-03-15 20:38  edwin
+
+       * src/vm/jit/tools/genoffsets.c (main): Added offset of pc and sp
+       in executionstate.
+
+2006-03-15 17:17  twisti
+
+       * src/vm/jit/i386/codegen.c: Use new exception stubs. Don't cast with
+       M_MOV_IMM.
+       * src/vm/jit/i386/codegen.h (M_MOV_IMM, M_IST_IMM, M_IST32_IMM)
+       (M_PUSH_IMM): Added cast.
+       (M_CMP, M_CMP_MEMBASE, M_CMP_IMM_MEMBASE): Added.
+
+2006-03-15 16:36  twisti
+
+       * src/vm/jit/codegen-common.h (branchref): Removed.
+       (codegendata): Removed xboundrefs, xnullrefs, xcastrefs, xstorerefs,
+       xdivrefs and xexceptionrefs. Added exceptionrefs.
+       (codegen_addxboundrefs, codegen_addxcastrefs, codegen_addxdivrefs)
+       (codegen_addxstorerefs, codegen_addxnullrefs)
+       (codegen_addxexceptionrefs): Removed.
+       (codegen_add_arithmeticexception_ref)
+       (codegen_add_arrayindexoutofboundsexception_ref)
+       (codegen_add_arraystoreexception_ref)
+       (codegen_add_classcastexception_ref)
+       (codegen_add_nullpointerexception_ref)
+       (codegen_add_fillinstacktrace_ref): New function.
+       * src/vm/jit/codegen-common.c: Likewise.
+       
+       * src/vm/jit/dseg.h (exceptionref): New structure.
+       
+       * src/vm/jit/x86_64/codegen.c: Use new exception stubs. Don't cast
+       with M_MOV_IMM.
+       * src/vm/jit/x86_64/codegen.h (M_MOV_IMM, M_IMOV_IMM): Added cast.
+       
+       * src/vm/jit/stacktrace.c (stacktrace_inline_fillInStackTrace): Moved.
+       * src/vm/jit/stacktrace.h (STACKTRACE_inline_arithmeticexception)
+       (STACKTRACE_inline_arrayindexoutofboundsexception)
+       (STACKTRACE_inline_arraystoreexception)
+       (STACKTRACE_inline_classcastexception)
+       (STACKTRACE_inline_nullpointerexception)
+       (STACKTRACE_inline_fillInStackTrace): Added functionptr defines.
+       
+       * src/vm/jit/jit.h (branchref): Added.
+
+2006-03-15 12:14  edwin
+
+       * doc/stack_frames.txt: Added slots for synched methods.
+
+2006-03-15 12:04  edwin
+
+       * doc/stack_frames.txt: Added file.
+       
+       * src/vm/jit/code.h (codeinfo): Rearranged fields.
+       
+       * src/vm/jit/i386/md.c, src/vm/jit/i386/asmpart.S,
+       src/vm/jit/replace.c:
+       Comment changes.
+
+2006-03-15 11:38  edwin
+
+       * src/vm/jit/i386/md.c (md_patch_replacement_point): Generalized to
+       activation and deactivation of replacement points.
+       
+       * src/vm/jit/i386/codegen.c (codegen): Prepare machine code for
+       patching replacement points.
+       
+       * src/vm/jit/replace.c, src/vm/jit/replace.h
+       (replace_deactivate_replacement_point): Added.
+       
+       * src/vm/jit/replace.c
+       (replace_replacement_point_println): Print machine code.
+       
+       * src/vm/jit/replace.h (rplpoint): Added `mcode` field.
+
+2006-03-15 11:18  twisti
+
+       * src/vm/jit/i386/codegen.c (GETFIELD, PUTFIELD, PUTFIELDCONST): Use
+       M_ILD32 and M_LLD32 macros.
+       (patcher): Save REG_ITMP3. Don't allocate a codegendata structure,
+       just do it as on Alpha.
+       * src/vm/jit/i386/codegen.h (var_to_reg_lng): Added.
+       (store_reg_to_var_lng): Likewise.
+       (M_ILD32, M_LLD, M_LLD32, M_IST32, M_IST32_IMM, M_LST, M_LST32)
+       (M_LST_IMM, M_LST32_IMM): Likewise.
+       
+       * src/vm/jit/i386/patcher.c: Changed position of return address due to
+       saving of REG_ITMP3.
+       * src/vm/jit/i386/asmpart.S (asm_wrapper_patcher): Changed due to
+       saving of REG_ITMP3.
+
+2006-03-15 10:34  edwin
+
+       * src/vm/jit/replace.c (replace_create_replacement_points): Don't use
+       rd->locals in the interpreter -- it's NULL there.
+
+2006-03-15 05:13  edwin
+
+       * src/vm/jit/codegen-common.c (codegen_finish): Removed a compiler
+       warning.
+
+2006-03-15 05:08  edwin
+
+       * src/vm/jit/replace.h, src/vm/jit/i386/md.c
+       (md_patch_replacement_point):
+       Fixed return type.
+       
+       * src/vm/jit/replace.c (replace_activate_replacement_point): Only call
+       md_patch_replacement_point if ENABLE_JIT is defined.
+
+2006-03-15 04:57  edwin
+
+       * src/vm/jit/replace.c (replace_activate_replacement_point): Do not
+       use
+       the symbol md_patch_replacement_point on platforms where it does not
+       exist, yet.
+
+2006-03-15 04:43  edwin
+
+       * src/vm/jit/replace.h, src/vm/jit/replace.c
+       (replace_activate_replacement_point): Added.
+       (replace_activate): Added prototype.
+       (md_patch_replacement_point): Added prototype.
+       (replace_me): Added.
+       (replace_replacement_point_println): Added.
+       (replace_show_replacement_points): Cleaned up.
+       (replace_executionstate_println): Added.
+       
+       * src/vm/jit/i386/codegen.c (codegen): Generate replacement-out stubs.
+       
+       * src/vm/jit/codegen-common.c (codegen_finish): Resolve replacement
+       points.
+       
+       * src/vm/jit/asmpart.h, src/vm/jit/i386/asmpart.S
+       (asm_replacement_out): Added.
+       
+       * src/vm/method.h (executionstate): Typo fixed.
+       
+       * src/vm/jit/stack.c (src/vm/jit/stack.c): Minor output change.
+       
+       * src/vm/jit/tools/genoffsets.c (executionstate): Added size and
+       offset.
+       
+       * src/vm/jit/i386/md.c (md_patch_replacement_point): Added.
+
+2006-03-15 01:50  edwin
+
+       * src/vm/jit/replace.h, src/vm/jit/replace.c
+       (replace_replacement_info_print): Renamed to
+       replace_show_replacement_points.
+       * src/vm/jit/stack.c: Likewise.
+
+2006-03-15 01:39  edwin
+
+       * src/vm/jit/replace.c, src/vm/jit/replace.h
+       (replace_create_replacement_points): Added.
+       (replace_free_replacement_points): Added.
+       (replace_replacement_info_print): Added.
+       
+       * src/vm/jit/replace.h (rplpoint): Changed fields, made fixed length.
+       
+       * src/vm/jit/code.h (codeinfo): Changed replacement point fields.
+       
+       * src/vm/jit/jit.c (jit_compile_intern): Create replacement points.
+       
+       * src/vm/jit/jit.c (jit_compile_intern): Use already allocated
+       codeinfo
+       for do-nothing methods.
+       
+       * src/vm/jit/code.c (code_codeinfo_free): Free replacement points.
+       
+       * src/vm/jit/stack.c (show_icmd_method): Print replacement points.
+
+2006-03-15 00:06  edwin
+
+       * src/vm/jit/stack.c, src/vm/jit/stack.h (icmd_print_stack): Renamed
+       to
+       stack_print. Documented.
+       (show_icmd_method, show_icmd_block, show_icmd): Documented.
+       (show_icmd_block): Print basicblock.bitflags.
+       
+       * src/vm/jit/stack.h (MARKREACHED): Mark targets of backward branches
+       as replacement points (BBFLAG_REPLACEMENT)
+
+2006-03-14 23:49  edwin
+
+       * src/vm/jit/jit.h (basicblock): Added `bitflags` field. Note: The
+       flags
+       of this struct should really be cleaned up.
+       
+       * src/vm/jit/jit.h (BASICBLOCK_INIT): Added, so we have a central
+       place
+       where to put initialization of the fields.
+       
+       * src/vm/jit/parse.c (parse): Cleaned up basicblock allocation.
+
+2006-03-14 23:16  edwin
+
+       * src/vm/jit/jit.h (basicblock): Comment.
+
+2006-03-14 23:00  edwin
+
+       * src/vm/jit/parse.c (fillextable): Removed unused label_index.
+       (parse): Likewise.
+       
+       * src/vm/jit/replace.h: Comment moved.
+
+2006-03-14 22:30  edwin
+
+       * src/native/jvmti/jvmti.c (GetMethodLocation): Use the new
+       m->code field to get to the location of the method.
+
+2006-03-14 22:16  edwin
+
+       * src/vm/method.h (methodinfo): Moved `entrypoint` to `codeinfo`.
+       * src/vm/loader.c (load_method): Likewise.
+       
+       * src/vm/loader.c (load_newly_created_array): Use codeinfo.entrypoint.
+       * src/vm/builtin.c (builtin_trace_exception): Likewise. Note:
+       Currently
+       we always use the current codeinfo. This is preliminary.
+       
+       * src/vm/jit/powerpc/codegen.c (codegen): Use cd->code->entrypoint.
+       * src/vm/jit/alpha/codegen.c (createnativestub): Likewise.
+       * src/vm/jit/dseg.c (dseg_resolve_datareferences): Likewise.
+       * src/vm/jit/mips/codegen.c (codegen, createnativestub): Likewise.
+       * src/vm/jit/i386/codegen.c (createnativestub): Likewise.
+       * src/vm/jit/intrp/codegen.c (intrp_codegen, intrp_createnativestub)
+       (createcalljavafunction): Likewise.
+       * src/vm/jit/x86_64/codegen.c (createnativestub): Likewise.
+       
+       * src/vm/jit/intrp/codegen.c (nativecall): Use m->code->entrypoint.
+       
+       * src/vm/jit/codegen-common.h, src/vm/jit/codegen-common.c,
+       src/cacaoh/headers.c (codegen_createnativestub): Now returns
+       the created codeinfo instead of the entrypoint.
+       
+       * src/vm/jit/stacktrace.c (stacktrace_add_method): Find the codeinfo
+       that contains the current PC. Note: This is preliminary. We should
+       find the codeinfo * via the PV of the code containing the PC.
+       
+       * src/vm/jit/jit.c (jit_compile): Use m->code. Create a codeinfo
+       for native stubs and the do-nothing stub
+       
+       * src/vm/jit/codegen-common.c (codegen_finish): Set entrypoint
+       in codeinfo instead of in methodinfo.
+
+2006-03-14 20:59  edwin
+
+       * src/vm/jit/code.c, src/vm/jit/replace.c, src/vm/jit/replace.h:
+       Added GPL header and boilerplate.
+
+2006-03-14 20:57  edwin
+
+       * src/vm/jit/code.h: Added GPL header and boilerplate.
+
+2006-03-14 20:51  edwin
+
+       * src/vm/jit/code.c, src/vm/jit/code.h: Files added.
+       
+       * src/vm/jit/replace.c, src/vm/jit/replace.h: Files added.
+       
+       * src/vm/jit/Makefile.am (code.[ch], replace.[ch]): Added.
+       
+       * src/vm/method.h (methodinfo): Added field `code`. Each method
+       may now have zero or more codeinfo:s associated with it. A
+       codeinfo represents the machine code of a particular version
+       of the compiled method. Note: Some fields in methodinfo that
+       may need to be moved to codeinfo where marked XXX.
+       
+       * src/vm/jit/codegen-common.h (codegendata): Added field `code`.
+       
+       * src/vm/jit/codegen-common.c (codegen_setup): Allocate
+       a new codeinfo.
+       (codegen_finish): Use `code` field of codegendata.
+       (codegen_createnativestub): Likewise.
+       
+       * src/vm/jit/stack.c (show_icmd_method, show_icmd_block):
+       Use `code` field of codegendata.
+       * src/vm/jit/dseg.c (dseg_display): Likewise.
+       * src/vm/jit/jit.c (jit_compile_intern): Likewise. Switch
+       current codeinfo after compilation is complete.
+       
+       * src/cacaoh/headers.c (code_free_code_of_method): Added stub.
+       
+       * src/vm/method.c (method_free): Free codeinfo:s of method.
+       
+       * src/vm/loader.c (load_method): Initialize m->code.
+
+2006-03-14 16:40  twisti
+
+       * src/cacao/Makefile.am (ENABLE_STATICVM): Added cacao_LDFLAGS,
+       otherwise the sumbols are not exported.
+       
+       * src/native/include/Makefile.am (ENABLE_STATICVM): Renamed to
+       WITH_STATIC_CLASSPATH.
+
+2006-03-14 16:30  twisti
+
+       * src/vm/jit/stacktrace.c (stacktrace_create): We have to check for an
+       OOM when allocating from the heap. Fixes a crash in Jonas.
+
+2006-03-14 15:00  edwin
+
+       * doc/design_onstack_replacement.txt: More design options added.
+
+2006-03-13 21:26  edwin
+
+       * design_onstack_replacement.txt: Added file.
+
+2006-03-13 11:35  twisti
+
+       * src/vm/vm.c (vm_create): Only put .jar file into classpath. Fixes
+       startup bug with knopflerfish.
+
+2006-03-13 08:02  edwin
+
+       * src/native/vm/VMClass.c (Java_java_lang_VMClass_getComponentType):
+       Link class before accessing c->vftbl->arraydesc.
+
+2006-03-13 07:06  edwin
+
+       * src/native/vm/VMClass.c (Java_java_lang_VMClass_getSuperclass): We
+       must not
+       assume that the class is already linked, so we have to resolve the
+       super class
+       reference. This fixes a NPE bug with Jonas.
+
+2006-03-12 23:23  twisti
+
+       * src/vm/suck.c (suck_start): We really should close class files after
+       reading it.
+
+2006-03-11 21:34  edwin
+
+       * src/vm/resolve.c (resolve_class_from_typedesc): Safer check for
+       reference types.
+
+2006-03-11 20:41  edwin
+
+       * src/vm/jit/codegen-common.c (codegen_finish): When setting the
+       entrypoint of a method, be sure not to overwrite an already set
+       entrypoint.
+
+2006-03-11 20:34  edwin
+
+       * src/vm/references.h (IS_XCLASSREF): Commented.
+
+2006-03-11 20:32  edwin
+
+       * src/vm/references.h (IS_XCLASSREF): Added.
+       (CLASSREF_OR_CLASSINFO_NAME): Added.
+
+2006-03-11 20:30  edwin
+
+       * src/vm/class.c, src/vm/class.h (class_classref_print): Added.
+       (class_classref_println): Added.
+
+2006-03-11 16:06  edwin
+
+       * src/vm/jit/jit.c (jit_compile_intern): Check if the method has been
+       compiled during static class initialization.
+
+2006-03-11 15:03  edwin
+
+       * src/vm/method.c (vim boilerplate): Added.
+
+2006-03-11 15:01  edwin
+
+       * src/vm/method.c (method_vftbl_lookup): Check ACC_INTERFACE on the
+       class, instead of on the method, where it is not set. Do not check
+       ACC_ABSTRACT here, because non-interface ACC_ABSTRACT methods are
+       looked up just like non-abstract non-interface methods.
+
+2006-03-10 22:22  twisti
+
+       * src/native/vm/VMRuntime.c (vm/options.h): Added.
+       (nativeLoad): Print dlerror output when dlopen fails.
+
+2006-03-09 16:13  twisti
+
+       * autogen.sh: Fixed typo.
+
+2006-03-09 13:51  twisti
+
+       * src/vm/jit/powerpc/darwin/md-asm.h (asm_calljavafunction): Removed.
+       (asm_calljavafunction_int): Likewise.
+       (asm_calljavafunction2): Likewise.
+       (asm_calljavafunction2int): Likewise.
+       (asm_calljavafunction2long): Likewise.
+       (asm_calljavafunction2float): Likewise.
+       (asm_calljavafunction2double): Likewise.
+       (_exceptionptr): Likewise.
+       (asm_vm_call_method): Define added.
+       (asm_vm_call_method_int): Likewise.
+       (asm_vm_call_method_long): Likewise.
+       (asm_vm_call_method_float): Likewise.
+       (asm_vm_call_method_double): Likewise.
+
+2006-03-09 13:46  twisti
+
+       * src/vm/jit/powerpc/patcher.c (patcher_get_putfield): Check for the
+       instruction order on long fields.
+
+2006-03-09 13:26  twisti
+
+       * autogen.sh: Check for installed programs and exit if no proper one
+       was found.
+       * src/boehm-gc/autogen.sh: Use the programs found by top-level
+       autogen.
+
+2006-03-08 09:44  twisti
+
+       * src/native/jni.c (PushLocalFrame): Implemented.
+       (PopLocalFrame): Likewise.
+       (DeleteLocalRef): Walk through all local frames.
+       (NewLocalRef): Allocate a new local frame if the current frame is out
+       of space.
+       (EnsureLocalCapacity): Implemented.
+       * src/vm/jit/codegen-common.c (codegen_finish_native_call): Release
+       all local reference frames.
+
+2006-03-07 20:44  twisti
+
+       * src/native/vm/VMClassLoader.c (nativeGetResources): Check if
+       resource is a directory and don't add it.
+
+2006-03-07 19:32  twisti
+
+       * src/vm/vm.c (usage): Small change.
+       
+       * src/native/vm/VMSystemProperties.c (preInit): Set java.ext.dirs to
+       $JAVA_HOME/jre/lib/ext.
+
+2006-03-07 18:18  twisti
+
+       * src/cacaoh/headers.c (intrp_main_stack): Changed type.
+
+2006-03-07 17:21  twisti
+
+       test
+
+2006-03-07 17:19  twisti
+
+       test
+
+2006-03-07 10:48  twisti
+
+       * src/native/jni.c (_Jv_jni_CallIntMethodA): New function.
+       (CallBooleanMethodA): Implemented.
+
+2006-03-07 10:36  twisti
+
+       * src/vm/string.c (string_java_lang_StringIndexOutOfBoundsException):
+       Added.
+       * src/vm/stringlocal.h: Likewise.
+       
+       * src/vm/exceptions.c
+       (exceptions_new_stringindexoutofboundsexception): New function.
+       (exceptions_throw_stringindexoutofboundsexception): Likewise.
+       * src/vm/exceptions.h: Likewise.
+       
+       * src/native/jni.c (GetStringRegion): Implemented.
+
+2006-03-07 09:40  twisti
+
+       * src/vm/vm.c (_Jv_jvm): Changed type to _Jv_JavaVM.
+       * src/vm/vm.h (_Jv_jvm): Added.
+       
+       * src/native/jni.c (ptr_jvm): Removed.
+       (ptr_env): Likewise.
+       (CallStaticObjectMethodA): Implemented.
+       (GetJavaVM): Return _Jv_jvm as vm.
+       (AttachCurrentThread): Return _Jv_env as env.
+       (GetEnv): Likewise.
+       (JNI_JavaVMTable): Renamed to _Jv_JNIInvokeInterface.
+       (JNI_JNIEnvTable): Renamed to _Jv_JNINativeInterface.
+       (JNI_CreateJavaVM): Allocate a _Jv_JavaVM structure and set it up
+       correctly, this fixes the usage in C++ programs.
+       * src/native/jni.h (_Jv_JavaVM): Added.
+       
+       * src/native/jvmti/jvmti.c: Renamed JNI_JavaVMTable to
+       _Jv_JNIInvokeInterface and JNI_JNIEnvTable to _Jv_JNINativeInterface.
+
+2006-03-06 18:45  christian
+
+       * src/vm/jit/stack.c (analyse_stack): Bugfix for copy elimination.
+
+2006-03-06 13:03  twisti
+
+       * src/vm/jit/powerpc/linux/Makefile.am (LIBS): Added defined empty, as
+       * this makes problems on darwin and actually we do not need to link
+       * the configured libraries into convenience libraries.
+       * src/vm/jit/powerpc/darwin/Makefile.am: Likewise.
+       * src/vm/jit/powerpc/Makefile.am: Likewise.
+       * src/vm/jit/alpha/linux/Makefile.am: Likewise.
+       * src/vm/jit/alpha/Makefile.am: Likewise.
+       * src/vm/jit/alpha/freebsd/Makefile.am: Likewise.
+       * src/vm/jit/tools/Makefile.am: Likewise.
+       * src/vm/jit/verify/Makefile.am: Likewise.
+       * src/vm/jit/mips/linux/Makefile.am: Likewise.
+       * src/vm/jit/mips/Makefile.am: Likewise.
+       * src/vm/jit/mips/irix/Makefile.am: Likewise.
+       * src/vm/jit/loop/Makefile.am: Likewise.
+       * src/vm/jit/inline/Makefile.am: Likewise.
+       * src/vm/jit/allocator/Makefile.am: Likewise.
+       * src/vm/jit/i386/linux/Makefile.am: Likewise.
+       * src/vm/jit/i386/Makefile.am: Likewise.
+       * src/vm/jit/i386/freebsd/Makefile.am: Likewise.
+       * src/vm/jit/schedule/Makefile.am: Likewise.
+       * src/vm/jit/intrp/Makefile.am: Likewise.
+       * src/vm/jit/x86_64/Makefile.am: Likewise.
+       * src/vm/jit/profile/Makefile.am: Likewise.
+       * src/vm/jit/Makefile.am: Likewise.
+       * src/vm/Makefile.am: Likewise.
+       * src/native/tools/Makefile.am: Likewise.
+       * src/native/vm/Makefile.am: Likewise.
+       * src/native/Makefile.am: Likewise.
+       * src/toolbox/Makefile.am: Likewise.
+       * src/mm/Makefile.am: Likewise.
+       * src/threads/native/Makefile.am: Likewise.
+       * src/fdlibm/Makefile.am: Likewise.
+       
+       * src/cacaoh/Makefile.am (INCLUDES): Renamed to AM_CPPFLAGS.
+
+2006-03-06 00:30  twisti
+
+       * src/vm/jit/powerpc/asmpart.S (asm_calljavafunction): Removed.
+       (asm_calljavafunction2): Renamed to asm_vm_call_method.
+
+2006-03-05 23:53  twisti
+
+       * src/vm/jit/alpha/asmpart.S (asm_calljavafunction): Removed.
+       (asm_calljavafunction2): Renamed to asm_vm_call_method.
+
+2006-03-05 23:35  twisti
+
+       * src/vm/jit/codegen-common.c (codegen_init): Removed
+       asm_calljavafunction.
+       * src/vm/jit/i386/asmpart.S (asm_calljavafunction): Removed.
+       (asm_calljavafunction2): Renamed to asm_vm_call_method.
+
+2006-03-05 23:24  twisti
+
+       * src/vm/vm.c (vm_call_method_intern): Removed.
+       (vm_vmargs_from_valist): Added.
+       (vm_vmargs_from_jvalue): Likewise.
+       (vm_call_method): New function.
+       (vm_call_method_valist): Likewise.
+       (vm_call_method_jvalue): Likewise.
+       (vm_call_method_vmarg): Likewise.
+       (vm_call_method_int): Likewise.
+       (vm_call_method_int_valist): Likewise.
+       (vm_call_method_int_jvalue): Likewise.
+       (vm_call_method_int_vmarg): Likewise.
+       (vm_call_method_long): Likewise.
+       (vm_call_method_long_valist): Likewise.
+       (vm_call_method_long_jvalue): Likewise.
+       (vm_call_method_long_vmarg): Likewise.
+       (vm_call_method_float): Likewise.
+       (vm_call_method_float_valist): Likewise.
+       (vm_call_method_float_jvalue): Likewise.
+       (vm_call_method_float_vmarg): Likewise.
+       (vm_call_method_double): Likewise.
+       (vm_call_method_double_valist): Likewise.
+       (vm_call_method_double_jvalue): Likewise.
+       (vm_call_method_double_vmarg): Likewise.
+       * src/vm/vm.h: Likewise.
+       
+       * src/native/jni.c (_Jv_jni_fill_vmargs_from_vargs): Removed.
+       (_Jv_jni_vmargs_from_args): Likewise.
+       (_Jv_jni_CallObjectMethodA): New function.
+       (_Jv_jni_CallObjectMethod): Use vm_call_method.
+       (_Jv_jni_CallIntMethod): Likewise.
+       (_Jv_jni_CallLongMethod): Likewise.
+       (_Jv_jni_CallFloatMethod): Likewise.
+       (_Jv_jni_CallDoubleMethod): Likewise.
+       (_Jv_jni_CallVoidMethod): Likewise.
+       (_Jv_jni_CallVoidMethodA): Likewise.
+       (_Jv_jni_invokeNative): Likewise.
+       (CallObjectMethodA): Implemented.
+       
+       * src/vm/loader.c (load_class_from_sysloader): Replaced
+       vm_call_method_intern by vm_call_method.
+       (load_class_from_classloader): Likewise.
+       * src/vm/finalizer.c (finalizer_run): Likewise.
+       * src/vm/initialize.c (initialize_class_intern): Likewise.
+       * src/vm/jit/stacktrace.c (stacktrace_inline_fillInStackTrace):
+       Likewise.
+       * src/vm/exceptions.c (throw_exception_exit_intern): Likewise.
+       (new_arrayindexoutofboundsexception): Likewise.
+       * src/vm/properties.c (properties_system_add): Likewise.
+       * src/cacao/cacao.c (setup_debugger_process): Likewise.
+       (getmainclassnamefromjar): Likewise.
+       (main): Likewise.
+       * src/native/vm/VMClassLoader.c (nativeGetResources): Likewise.
+       * src/native/native.c (native_new_and_init): Likewise.
+       (native_new_and_init_string): Likewise.
+       (native_new_and_init_int): Likewise.
+       (native_new_and_init_throwable): Likewise.
+       * src/threads/native/threads.c (threads_init): Likewise.
+       (threads_startup_thread): Likewise.
+       * src/cacaoh/headers.c: Likewise.
+       
+       * src/vm/jit/x86_64/asmpart.S (asm_calljavafunction): Removed.
+       (asm_calljavafunction2): Renamed to asm_vm_call_method.
+       * src/vm/jit/intrp/asmpart.c: Likewise.
+       * src/vm/jit/asmpart.h: Likewise.
+
+2006-03-05 23:05  twisti
+
+       * tests/regression/native/testarguments.c (nlsub): Use %llx on all
+       architectures.
+       (ndsub): Likewise.
+
+2006-03-05 21:54  christian
+
+       * src/vm/jit/allocator/simplereg.c (allocate_scratch_registers):
+       Bugfix and reformatting.
+
+2006-03-05 15:51  twisti
+
+       * src/vm/jit/i386/asmpart.S (asm_calljavafunction2): Pointer to vm_arg
+       block is now in a2. Use new defines.
+
+2006-03-04 18:35  twisti
+
+       * src/vm/jit/alpha/asmpart.S (asm_calljavafunction2): Pointer to
+       vm_arg block is now in a2. Use new defines.
+
+2006-03-04 18:01  twisti
+
+       * src/vm/jit/powerpc/asmpart.S (asm_calljavafunction2): Pointer to
+       vm_arg block is now in a2. Use new defines.
+
+2006-03-04 17:19  twisti
+
+       * src/vm/jit/asmpart.h (ASM_CALLJAVAFUNCTION): Removed.
+       (ASM_CALLJAVAFUNCTION_ADR): Likewise.
+       (ASM_CALLJAVAFUNCTION_INT): Likewise.
+       (ASM_CALLJAVAFUNCTION2): Likewise.
+       (ASM_CALLJAVAFUNCTION2_ADR): Likewise.
+       (ASM_CALLJAVAFUNCTION2_INT): Likewise.
+       (ASM_CALLJAVAFUNCTION2_LONG): Likewise.
+       (ASM_CALLJAVAFUNCTION2_FLOAT): Likewise.
+       (ASM_CALLJAVAFUNCTION2_DOUBLE): Likewise.
+       (asm_calljavafunction2int): Changed signature.
+       (asm_calljavafunction2long): Likewise.
+       (asm_calljavafunction2float): Likewise.
+       (asm_calljavafunction2double): Likewise.
+
+2006-03-04 17:15  twisti
+
+       * src/vm/global.h (jni_callblock): Removed.
+       
+       * src/vm/vm.c (vm/vm.h): Added.
+       (vm_call_method_intern): New function.
+       (vm_call_method_intern_int): Likewise.
+       (vm_call_method): Likewise.
+       (vm_call_method_int): Likewise.
+       (vm_call_method_long): Likewise.
+       (vm_call_method_float): Likewise.
+       (vm_call_method_double): Likewise.
+       * src/vm/vm.h (vm_arg): Structure added.
+       (vm_call_method_intern): New function.
+       (vm_call_method_intern_int): Likewise.
+       (vm_call_method): Likewise.
+       (vm_call_method_int): Likewise.
+       (vm_call_method_long): Likewise.
+       (vm_call_method_float): Likewise.
+       (vm_call_method_double): Likewise.
+       
+       * src/vm/jit/tools/genoffsets.c (vm/vm.h): Added.
+       (sizejniblock): Renamed to sizevmarg.
+       (offjniitemtype): Renamed to offvmargtype.
+       (offjniitem): Renamed to offvmargdata.
+       * src/vm/jit/x86_64/asmpart.S (asm_calljavafunction2): Pointer to
+       vm_arg block is now in a2. Use new defines.
+       
+       * src/vm/jit/stacktrace.c (vm/vm.h): Added.
+       (ASM_CALLJAVAFUNCTION): Replaced with vm_call_method_intern.
+       * src/vm/exceptions.c: Likewise.
+       * src/vm/properties.c: Likewise.
+       * src/vm/loader.c: Likewise.
+       * src/vm/finalizer.c: Likewise.
+       * src/vm/initialize.c: Likewise.
+       * src/cacao/cacao.c: Likewise.
+       * src/native/vm/VMClassLoader.c: Likewise.
+       * src/threads/native/threads.c: Likewise.
+       
+       * src/cacaoh/headers.c (asm_calljavafunction): Removed.
+       (intrp_asm_calljavafunction): Likewise.
+       (vm_call_method_intern): New function.
+       
+       * src/native/jni.c (fill_callblock_from_vargs): Renamed to
+       _Jv_jni_vmargs_from_vargs.
+       (fill_callblock_from_objectarray): Renamed to
+       _Jv_jni_vmargs_from_objectarray.
+       (_Jv_jni_vmargs_from_objectarray): New function.
+       (_Jv_jni_CallVoidMethodA): Likewise.
+       (ASM_CALLJAVAFUNCTION2): Replaced with appropriate vm_call_method
+       function.
+       (NewObjectA): Implemented.
+       (CallVoidMethodA): Likewise.
+       (CallNonvirtualVoidMethodA): Likewise.
+       (CallStaticVoidMethodA): Likewise.
+
+2006-03-03 00:00  twisti
+
+       * src/vm/linker.c (link_class_intern): Handle miranda methods
+       properly.
+       * src/vm/global.h (ACC_MIRANDA): Defined.
+       * src/native/vm/VMClass.c (getDeclaredMethods): Don't return miranda
+       methods.
+
+2006-03-01 17:00  twisti
+
+       * src/vm/options.c: Renamed runverbose to opt_verbosecall.
+       * src/vm/options.h: Likewise.
+       * src/vm/jit/alpha/codegen.c: Likewise.
+       * src/vm/jit/i386/codegen.c: Likewise.
+       * src/vm/jit/intrp/codegen.c: Likewise.
+       * src/vm/jit/mips/codegen.c: Likewise.
+       * src/vm/jit/powerpc/codegen.c: Likewise.
+       * src/vm/jit/x86_64/codegen.c: Likewise.
+       * src/vm/jit/intrp/asmpart.c: Likewise.
+       * src/vm/jit/intrp/dynamic-super.c: Likewise.
+       * src/vm/jit/intrp/java.vmg: Likewise.
+       
+       * src/vm/builtin.c (builtin_trace_exception): Renamed runverbose to
+       opt_verbosecall. Removed stacktrace printing code.
+       * src/vm/exceptions.c (exceptions_handle_exception): Renamed
+       runverbose to opt_verbosecall. Print exception stacktrace when caught.
+       
+       * src/vm/vm.c: Support Sun's commandline options and ignore them if
+       not supported. Reordered options.
+       
+       * src/native/vm/VMObject.c (notify): Removed debug output.
+       (notifyAll): Likewise.
+       (wait): Likewise.
+       * src/native/vm/VMThread.c (suspend): Likewise.
+       (resume): Likewise.
+       (nativeSetPriority): Likewise.
+       (nativeStop): Likewise.
+       (yield): Likewise.
+       
+       * src/native/vm/VMThrowable.c (fillInStackTrace): Renamed par1 to t.
+
+2006-02-23 14:08  twisti
+
+       * src/vm/jit/intrp/dynamic-super.c (disassemble_prim): New function.
+       (dynamic_super_init): Added disassembling of IADD, ILOAD and
+       GETFIELD_INT.
+
+2006-02-22 14:03  twisti
+
+       * src/vm/jit/i386/codegen.c (createnativestub): Renamed _exceptionptr
+       to _no_threads_exceptionptr.
+
+2006-02-22 13:34  twisti
+
+       * src/vm/jit/i386/codegen.c (mm/memory.h): Added.
+
+2006-02-21 16:17  twisti
+
+       * configure.ac (VERSION_CONFIGURE_ARGS, VERSION_CC, VERSION_CFLAGS):
+       Added define.
+       * src/vm/vm.c (version): Print configure options, compiler version and
+       CFLAGS.
+
+2006-02-21 16:06  twisti
+
+       * src/vm/jit/intrp/java.vmg (MULTIANEWARRAY): Use malloc instead of a
+       dynamic-sized array (-fomit-frame-pointer).
+
+2006-02-21 13:43  twisti
+
+       * src/vm/jit/intrp/codegen.c (cacao/cacao.h): Removed.
+       (vm/vm.h): Added.
+       (createnativestub): Replaced ENABLE_STATICVM with
+       WITH_STATIC_CLASSPATH and &env by _Jv_env.
+       
+       * src/vm/jit/intrp/patcher.c: Replaced ENABLE_STATICVM by
+       WITH_STATIC_CLASSPATH.
+       * src/vm/jit/intrp/java.vmg: Likewise.
+       
+       * src/vm/vm.c (mm/memory.h): Added.
+       (vm_create): Allocate the main thread interpreter stack on the Java
+       heap.
+
+2006-02-21 13:40  twisti
+
+       * src/vm/jit/jit.c (jit_compile_intern): Replaced ENABLE_STATICVM by
+       WITH_STATIC_CLASSPATH.
+
+2006-02-21 13:39  twisti
+
+       * src/cacao/cacao.c (main): Added main utf variable for better
+       debugability.
+
+2006-02-21 13:37  twisti
+
+       * src/native/native.c: Small changes.
+
+2006-02-21 13:35  twisti
+
+       * src/vm/loader.c (load_class_from_classloader): Added name
+       java.lang.String variable for better debugability.
+
+2006-02-21 12:41  twisti
+
+       * src/vm/jit/powerpc/asmpart.S: Rewritten for PIC code.
+
+2006-02-21 10:47  twisti
+
+       * src/vm/jit/alpha/asmpart.S: Rewritten for PIC code.
+
+2006-02-21 10:39  twisti
+
+       * src/vm/jit/x86_64/codegen.c (cacao/cacao.h): Removed.
+       (vm/vm.h): Added.
+       (createnativestub): Replaced ENABLE_STATICVM with
+       WITH_STATIC_CLASSPATH and &env by _Jv_env.
+
+2006-02-21 10:25  twisti
+
+       * src/vm/jit/i386/.cvsignore, src/vm/jit/i386/linux/.cvsignore: Added
+       TAGS.
+
+2006-02-21 09:34  twisti
+
+       * src/vm/jit/i386/asmpart.S: Rewritten for PIC code.
+
+2006-02-21 09:31  twisti
+
+       * src/threads/native/threads.c (vm/vm.h): Added.
+       (threads_startup_thread): Compiler warning fix.
+
+2006-02-21 09:25  twisti
+
+       * src/vm/jit/stacktrace.c (stacktrace_getCurrentClassLoader): Renamed
+       to stacktrace_getCurrentClass and it returns the first Java method's
+       class on the stack.
+       * src/vm/jit/stacktrace.h (stacktrace_getCurrentClassLoader):
+       Likewise.
+
+2006-02-21 09:18  twisti
+
+       * src/vm/jit/intrp/engine.c (cacao/cacao.h): Removed.
+
+2006-02-21 09:14  twisti
+
+       * configure.ac (AC_CONFIG_FILES): Remvoed ifconv, not yet.
+
+2006-02-21 09:11  twisti
+
+       * configure.ac: Default to AC_ENABLE_SHARED and AC_DISABLE_STATIC.
+       (ifconv): Added.
+       (jni.h): Check for jni.h in GNU Classpath.
+       (static-classpath): Added.
+       
+       * src/vm/vm.c, src/vm/vm.h: New files, contain the JVM startup code.
+       * src/vm/Makefile.am (libvm_la_SOURCES): Added vm.[ch].
+       
+       * src/cacao/cacao.c: Removed JVM startup code.
+       * src/cacao/cacao.h: Removed.
+       * src/cacao/Makefile.am: Replaced ENABLE_STATICVM by
+       WITH_STATIC_CLASSPATH.
+       (ENABLE_STATICVM): Build a shared library when not defined.
+       
+       * src/vm/options.c, src/vm/options.h (mm/memory.h, native/jni.h):
+       Added.
+       (native/jni.h): Added.
+       (opt_ind): Renamed to opt_index.
+       (opt_jar, opt_run, opt_method, opt_signature, opt_ifconv): Added.
+       (get_opt): Renamed to options_get.
+       (options_prepare): New method.
+       
+       * src/cacaoh/cacaoh.c (main): Use new option handling.
+       
+       * src/vm/jit/alpha/codegen.c, src/vm/jit/arm/codegen.c,
+       src/vm/jit/i386/codegen.c, src/vm/jit/mips/codegen.c,
+       src/vm/jit/powerpc/codegen.c (cacao/cacao.h): Removed.
+       (vm/vm.h): Added.
+       (createnativestub): Replaced ENABLE_STATICVM with
+       WITH_STATIC_CLASSPATH and &env by _Jv_env.
+       
+       * src/vm/jit/patcher.h, src/vm/jit/alpha/patcher.c,
+       src/vm/jit/arm/patcher.c, src/vm/jit/i386/patcher.c,
+       src/vm/jit/mips/patcher.c, src/vm/jit/powerpc/patcher.c,
+       src/vm/jit/x86_64/patcher.c: Replaced ENABLE_STATICVM by
+       WITH_STATIC_CLASSPATH.
+       
+       * src/vm/jit/x86_64/asmpart.S: Rewritten for PIC code.
+       
+       * src/vm/signal.c (cacao/cacao.h): Removed.
+       (vm/vm.h): Added.
+       (signal_handler_sigint): Use vm_* functions.
+       
+       * src/native/native.c: Replaced ENABLE_STATICVM by
+       WITH_STATIC_CLASSPATH.
+       (cacao/cacao.h): Removed.
+       (native_resolve_function): Smaller changes.
+       
+       * src/native/vm/VMRuntime.c: Replaced ENABLE_STATICVM by
+       WITH_STATIC_CLASSPATH.
+       (cacao/cacao.h): Removed.
+       (vm/vm.h): Added.
+       (execInternal): Removed.
+       (exit): Use vm_shutdown.
+       
+       * src/native/native.h: Replaced ENABLE_STATICVM by
+       WITH_STATIC_CLASSPATH.
+       * src/native/Makefile.am: Likewise.
+       * src/native/vm/VMSystemProperties.c: Likewise.
+       
+       * src/threads/native/threads.c (cacao/cacao.h): Removed.
+       
+       * src/native/jni.h: Removed our JNI stuff and include GNU Classpath's.
+       * src/native/jni.c: Adapt to the new jni.h header.
+       (Release<type>ArrayElements): Copy correct element type.
+       (Get<type>ArrayRegion): Likewise.
+       (Set<type>ArrayRegion): Likewise.
+
+2006-02-20 23:35  twisti
+
+       * src/vm/global.h: Sorted java_<type>array definitions.
+
+2006-02-20 23:31  twisti
+
+       * src/vm/linker.c (link_class_intern): Comment reformatted.
+
+2006-02-20 15:19  twisti
+
+       * src/vm/jit/intrp/engine.c (USE_spTOS): Disable per default.
+
+2006-02-20 14:08  twisti
+
+       * src/vm/classcache.c (classcache_new_name): Keep c89 compilers happy.
+
+2006-02-19 22:27  christian
+
+       * src/vm/jit/jit.h: added define STKEEP
+       
+       * src/vm/jit/simplereg.c (reg_free_tmp_func): SAVEDTMP and TMPARG
+       flags are not cleared anymore from Stackslots.
+       (reg_alloc_dup): TEMPVARs are not reused as SAVEDVARs anymore. This
+       has to be checked for conflicts.
+       (reg_mark_copy): Added. TEMPVAR Destination Stackslots are marked here
+       with STCOPY, if they use a duplicated register/memory location. Not
+       reused register/memory locations of TEMPVAR source Stacklots are freed
+       again.
+       (allocate_scratch_registers): ICMD_DUPx and ICMD_SWAP use now the new
+       reg_mark_copy.
+
+2006-02-16 19:39  christian
+
+       * src/vm/jit/stack.h (COPY): Prevent setting varkind to STACKVAR for
+       stackslots copied by DUPx and SWAP.
+       (DUP) Likewise.
+       * src/vm/jit/stack.c (analyse_stack): Copy elimination and needed
+       conflict resolution was implemented as
+       described in the CACAO paper. As "potential exception throwing
+       instruction" for now only INVOKE*s are
+       regarded. Conflict resolution over DUPx and SWAP should be refined to
+       be less conservative.
+       * src/vm/jit/jit.c (jit_init): Stackreq for JAVA_IINC is set to 0
+       again, since no dummy stackslot is
+       needed anymore for conflict resolution with XSTORE.
+       * src/vm/jit/allocator/simplereg.c (interface_regalloc): Reuse unused
+       float and int argument registers
+       for interfaces, too.
+       (reg_free_temp): Regard the new stackslot flag STCOPY, before freeing
+       a register/memory location.
+       (reg_alloc_dup): New function to allocate, if possible, the same
+       register/memory location for stackslot
+       copied by DUPx and SWAP.
+       (allocate_scratch_registers): The new function reg_alloc_dup is used
+       now for allocation at ICMD_DUPx and
+       ICMD_SWAP, if possible.
+       * src/vm/jit/jit.h: Added STCOPY as stackslot flag to mark
+       simultanously live stackslots with same
+       register after DUPx and SWAP.
+       * doc/stack.txt: Updated invariants to show the change with IINC (no
+       dummy stacklot anymore).
+
+2006-02-14 20:27  edwin
+
+       * src/native/jni.c (_Jv_jni_invokeNative): Cleanup.
+       
+       * src/native/jni.c (Changes): Added my name.
+       
+       * src/native/jni.c (vim boilerplate): Added.
+
+2006-02-14 20:10  edwin
+
+       * src/native/jni.c (_Jv_jni_invokeNative): Look up _all_ instance
+       methods
+       in the vftbl.
+
+2006-02-14 20:09  edwin
+
+       * src/vm/linker.c (link_class_intern): Do not override
+       package-private methods
+       from other packages.
+       
+       * src/vm/linker.c (vim boilerplate): Added.
+
+2006-02-14 15:53  edwin
+
+       * src/vm/classcache.c, src/vm/classcache.h: Merge cache entries when
+       they are resolved to the same class.
+
+2006-02-14 15:34  edwin
+
+       * src/vm/utf8.c, src/vm/utf8.h (utf_full_hashkey): Added.
+
+2006-02-14 11:01  twisti
+
+       * configure.ac (AC_INIT): Changed version number to 0.95+cvs.
+       (CFLAGS): Changed optimization back to -O0.
+
+2006-02-14 10:30  twisti
+
+       * ChangeLog: Updated for release 0.95.
+
+2006-02-14 10:14  twisti
+
+       * configure.ac: Updated version to 0.95, set optimization level to
+       -O2, some indent changes.
+       * ChangeLog-2005: Removed 2006 entries.
+
+2006-02-14 01:10  twisti
+
+       * src/vm/jit/profile/profile.c (profile_thread): Fixed compiler
+       warning.
+
+2006-02-14 01:05  twisti
+
+       * src/vm/jit/intrp/codegen.c (createcompilerstub): Store the
+       methodinfo pointer in the same place as in the methodheader for
+       compiled methods.
+
+2006-02-14 00:41  twisti
+
+       * src/vm/jit/x86_64/codegen.c (createcompilerstub): Store the
+       methodinfo pointer in the same place as in the methodheader for
+       compiled methods.
+
+2006-02-14 00:33  twisti
+
+       * contrib/svn2cl.xsl: New file.
+       * THIRDPARTY (contrib/svn2cl.xsl): Added copyright message.
+
+2006-02-14 00:05  twisti
+
+       * NEWS: Updated 0.95 release notes.
+
+2006-02-14 00:03  twisti
+
+       * src/vm/loader.c (load_field): Removed f->xta.
+       
+       * src/vm/class.h (vm/method.h): Added.
+       (vm/jit/inline/sets.h): Removed.
+       
+       * src/vm/method.h (vm/jit/inline/parseXTA.h): Removed.
+       
+       * src/vm/field.h (vm/jit/inline/parseXTA.h): Likewise.
+       (fieldinfo): Removed member xta.
+       
+       * src/lib/Makefile.am (EXTRA_DIST): Fixed typo.
+
+2006-02-14 00:01  twisti
+
+       * src/vm/jit/inline/sets.c, src/vm/jit/inline/parseRTstats.c,
+       src/vm/jit/inline/parseRT.c, src/vm/jit/inline/parseRTflags.h,
+       src/vm/jit/inline/parseRTprint.h, src/vm/jit/inline/sets.h,
+       src/vm/jit/inline/parseRTstats.h, src/vm/jit/inline/parseRT.h,
+       src/vm/jit/inline/parseXTA.c, src/vm/jit/inline/parseXTA.h: Removed.
+
+2006-02-13 23:45  twisti
+
+       * src/vm/class.c (class_findmethod_approx): Removed.
+       * src/vm/class.h (class_findmethod_approx): Likewise.
+       (class_resolvemethod_approx): Likewise.
+
+2006-02-13 23:16  edwin
+
+       * NEWS: Added JNI method resolution fix.
+
+2006-02-13 18:55  twisti
+
+       * src/vm/method.c (assert.h): Added.
+       (vm/linker.h): Likewise.
+       (vm/jit/methodheader.h): Likewise.
+       (method_vftbl_lookup): New method.
+       
+       * src/vm/method.h (vm/linker.h): Added.
+       (method_vftbl_lookup): New method.
+       
+       Fixes bug #17 and #18.
+       * src/native/jni.c: Complete rewrite of Call*Method code.
+
+2006-02-13 10:53  twisti
+
+       * src/vm/utf8.c (utf_display): Some reformatting.
+       (utf_display_classname): Likewise.
+
+2006-02-13 00:12  twisti
+
+       * src/vm/jit/mips/codegen.c (createcompilerstub): Store the methodinfo
+       pointer in the same place as in the methodheader for compiled methods.
+
+2006-02-12 23:43  twisti
+
+       * src/vm/jit/alpha/md.c (md_assembler_get_patch_address): New method.
+       (md_codegen_findmethod): Use assert's directly.
+       
+       * src/vm/jit/mips/md.c (md_assembler_get_patch_address): Likewise.
+       (md_codegen_findmethod): Likewise.
+       
+       * src/vm/jit/alpha/codegen.c (createcompilerstub): Store the
+       methodinfo pointer in the same place as in the methodheader for
+       compiled methods and pass the pointer in REG_ITMP1.
+       
+       * src/vm/jit/alpha/md-asm.h (mptr): Defined.
+       
+       * src/vm/jit/powerpc/asmpart.S (asm_call_jit_compiler): methodinfo
+       pointer is passed via itmp1. Use md_assembler_get_patch_address to
+       get the patch address.
+       (asm_calljavafunction, asm_calljavafunction2): Pass methodinfo pointer
+       via itmp1.
+
+2006-02-12 23:22  twisti
+
+       * src/vm/jit/powerpc/codegen.c (createcompilerstub): Store the
+       methodinfo pointer in the same place as in the methodheader for
+       compiled methods.
+       
+       * src/vm/jit/powerpc/asmpart.S (asm_call_jit_compiler): methodinfo
+       pointer is passed via itmp1.
+       (asm_calljavafunction, asm_calljavafunction2): Pass methodinfo pointer
+       via itmp1.
+
+2006-02-12 22:08  edwin
+
+       * src/threads/native/threads.c (threads_dump): Removed unused
+       variable 'ee'.
+
+2006-02-12 21:57  edwin
+
+       * src/native/vm/VMClass.c (Java_java_lang_VMClass_getDeclaredMethods):
+       Cast to java_lang_Class in order to avoid compiler warning.
+       
+       * src/native/vm/VMClass.c (Changes): Added my name.
+       
+       * src/native/vm/VMClass.c (vim biolerplate): Added.
+
+2006-02-12 21:47  edwin
+
+       * src/threads/native/threads.c (allocLockRecordSimple): Fixed
+       declaration
+       after code error.
+
+2006-02-12 16:28  twisti
+
+       * src/vm/jit/i386/codegen.c (createcompilerstub): Store the
+       methodinfo* in the same place as in the methodheader for compiled
+       methods.
+
+2006-02-12 16:24  edwin
+
+       * NEWS: Added directory check bugfix.
+
+2006-02-12 16:10  edwin
+
+       * NEWS: Added two bugfixes.
+
+2006-02-12 16:02  edwin
+
+       * src/vm/loader.c, src/vm/loader.h (vim boilerplate): Added.
+
+2006-02-12 13:11  twisti
+
+       * src/vm/zip.c (zip_open): Don't add directories to the zipfile
+       hashtable. We use the trailing `/' to identify a directory (i hope
+       that's correct).
+
+2006-02-12 12:59  christian
+
+       * src/vm/jit/x86_64/md-abi.c (md_param_alloc): Regard use of A0 for
+       returning float values.
+
+2006-02-12 02:18  edwin
+
+       * src/native/vm/VMClassLoader.c (vim boilerplate): Added.
+
+2006-02-12 02:17  edwin
+
+       * src/vm/classcache.c (classcache_store): Made classcache_store
+       idempotent.
+       
+       * src/native/vm/VMClassLoader.c
+       (Java_java_lang_VMClassLoader_defineClass):
+       Store defined class with classcache_store instead of just with
+       classcache_store_defined, so it an initiating loader is recorded for
+       the
+       class. This should solve problems with classes that are defined
+       outside
+       of a loadClass context (e.g. by java.lang.reflect.Proxy).
+
+2006-02-12 00:30  twisti
+
+       * src/native/vm/VMClass.c (getDeclaredMethods): Set the method's class
+       in java.lang.reflect.Method.
+       
+       * src/native/vm/Method.c (toolbox/logging.h, vm/jit/stacktrace.h):
+       Removed.
+       
+       * src/native/vm/VMSystem.c (identityHashCode): Use casts.
+
+2006-02-12 00:25  twisti
+
+       * src/vm/exceptions.c, src/vm/exceptions.h
+       (exceptions_throw_nosuchmethoderror): New method.
+
+2006-02-11 21:25  christian
+
+       * src/vm/jit/stack.h (COPY) All copied stackslots set to TEMPVAR.
+       This prevents conflicts with LOCALVAR
+       and
+       (DUP) Likewise.
+       STACKVARS.
+
+2006-02-07 23:18  edwin
+
+       * src/vm/jit/stack.h (TYPE_VERIFYERROR): Converted most of body to a
+       function.
+       
+       * src/vm/exceptions.c, src/vm/exceptions.h
+       (exceptions_throw_verifyerror_for_stack): Added.
+       
+       * src/vm/exceptions.c, src/vm/exceptions.h (vim boilerplate): Added.
+
+2006-02-07 21:27  edwin
+
+       * src/vm/jit/stack.h (vim boilerplate): Fixed.
+
+2006-02-07 21:15  twisti
+
+       * NEWS: Added some stuff.
+
+2006-02-07 17:28  edwin
+
+       * src/vm/jit/intrp/codegen.c (createcalljavafunction):
+       Removed t_inlining_globals.
+
+2006-02-07 17:22  edwin
+
+       * src/vm/jit/codegen-common.c, src/vm/jit/codegen-common.h
+       (codegen_setup):
+       Removed t_inlining_globals argument.
+       
+       * src/vm/jit/codegen-common.c (codegen_finish): Prepared for inlined
+       line
+       number tables. References with line number <-3 will not be relocated.
+       
+       * src/vm/jit/codegen-common.c (codegen_createnativestub):
+       Removed t_inlining_globals and inlining_setup.
+       
+       * src/vm/jit/codegen-common.h (Changes): Added my name to 'Changes'.
+       
+       * src/vm/jit/inline/inline.c, src/vm/jit/inline/inline.h: Ripped out
+       old
+       inliner.
+       
+       * src/vm/jit/jit.c: Removed inlining headers.
+       
+       * src/vm/jit/jit.c (INLINE_GOTO): Added instruction name to table.
+       
+       * src/vm/jit/jit.c (jit_compile_intern): Removed t_inlining_globals
+       argument.
+       
+       * src/vm/jit/codegen-common.c, src/vm/jit/codegen-common.h,
+       src/vm/jit/inline/inline.c, src/vm/jit/inline/inline.h (vim
+       boilerplate):
+       Added.
+
+2006-02-07 16:52  edwin
+
+       * src/vm/jit/i386/codegen.c (codegen): Prepared for inlining. The
+       icmds
+       ICMD_INLINE_START, ICMD_INLINE_END, ICMD_INLINE_GOTO were
+       implemented, and
+       at the start of exception handlers the indepth is no longer assumed
+       to be 1.
+
+2006-02-07 16:47  edwin
+
+       * src/vm/jit/jit.h (Changes): Fixed tabs.
+
+2006-02-06 21:06  twisti
+
+       * src/threads/native/threads.c, src/threads/native/threads.h
+       (sleepThread): Renamed to thread_sleep.
+
+2006-02-06 21:01  twisti
+
+       * src/cacao/cacao.c (vm/jit/profile.h): Changed to
+       vm/jit/profile/profile.h.
+       (main): profile_init and profile_start_thread calls added.
+
+2006-02-06 18:50  twisti
+
+       * configure.ac (AC_CONFIG_FILES): Added src/vm/jit/profile/Makefile.
+
+2006-02-06 18:49  twisti
+
+       * src/vm/jit/Makefile.am (DIST_SUBDIRS): Added profile.
+       (PROFILE_LIB): Added.
+       (PROFILE_SOURCES): Removed.
+
+2006-02-06 18:48  twisti
+
+       * src/vm/jit/profile/profile.c (profile_init): New method.
+       (profile_thread): Likewise.
+       (profile_start_thread): Likewise.
+       * src/vm/jit/profile/profile.h (profile_init): Added.
+       (profile_start_thread): Likewise.
+       * src/vm/jit/profile/Makefile.am: New file.
+       * src/vm/jit/profile/.cvsignore: Likewise.
+
+2006-02-06 18:34  twisti
+
+       * src/vm/jit/profile.h: Moved to src/vm/jit/profile/.
+
+2006-02-06 18:33  twisti
+
+       * src/vm/jit/profile.c: Moved to src/vm/jit/profile/.
+       * src/vm/jit/profile: Added.
+
+2006-02-06 18:32  twisti
+
+       * src/vm/jit/profile: Ooops.
+
+2006-02-06 18:31  twisti
+
+       * src/vm/jit/profile.c: Moved to src/vm/jit/profile/.
+
+2006-02-06 18:14  twisti
+
+       * src/vm/jit/allocator/Makefile.am: Use tabs instead of space.
+       (INCLUDE): Renamed to AM_CPPFLAGS.
+
+2006-02-06 08:22  edwin
+
+       * doc/Makefile.am (EXTRA_DIST): Added inlining_stacktrace.txt and
+       native_threads.txt.
+
+2006-02-06 06:49  edwin
+
+       * src/threads/native/threads.c: Minor cleanup.
+
+2006-02-06 06:46  edwin
+
+       * src/threads/native/threads.c: Uncuddled `else`s and other cleanup.
+
+2006-02-06 06:16  edwin
+
+       * doc/inlining_stacktrace.txt: Clarified, added entry after the
+       inlined body
+       for the rest of the line after the call.
+
+2006-02-06 05:00  edwin
+
+       * src/vm/jit/i386/machine-instr.h (compare_and_swap): Commented.
+
+2006-02-06 04:50  edwin
+
+       * doc/native_threads.txt: Added.
+
+2006-02-06 04:46  edwin
+
+       * src/threads/native/threads.c (allocLockRecordPool): Relink the free
+       list
+       of lock records when reusing a pool from the global_pool. This avoids
+       cross-linking of lock record owned by different threads, and hopefully
+       fixes our long-standing deadlock problem.
+       
+       * src/threads/native/threads.c (allocLockRecordSimple,
+       recycleLockRecord)
+       (initObjectLock): Temporarily added assertions to shake out possible
+       further bugs in the free list handling.
+       
+       * src/threads/native/threads.c (monitorEnter, monitorExit): Commented.
+       
+       * src/threads/native/threads.c (Changes): Added my name to 'Changes'.
+       
+       * src/threads/native/threads.c (vim boilerplate): Added.
+
+2006-02-06 01:28  edwin
+
+       * src/vm/jit/stacktrace.c (stacktrace_add_method_intern): Added.
+       (stacktrace_add_method): Documented. Now uses
+       stacktrace_add_method_intern.
+       (stacktrace_getCurrentClassLoader): Documented.
+       (stacktrace_dump_trace): Removed unused variable.
+       (Changes): Added my name to 'Changes'.
+
+2006-02-06 01:08  edwin
+
+       * src/vm/jit/verify/typecheck.c (verify_basic_block): Teach the
+       verifier
+       about the new inline instructions ICMD_INLINE_START, ICMD_INLINE_END,
+       and ICMD_INLINE_GOTO.
+
+2006-02-06 01:02  edwin
+
+       * src/vm/jit/stack.c (analyse_stack): Set bptr->stack for each visited
+       block.
+       (show_icmd): Implemented printing of new inline instructions.
+
+2006-02-06 00:02  edwin
+
+       * src/vm/jit/allocator/simplereg.c (ICMD_INLINE_GOTO): Added.
+       (Changes): Added my name to 'Changes'.
+       (vim boilerplate): Added.
+
+2006-02-05 23:34  edwin
+
+       * src/vm/jit/allocator/lsra.c, src/vm/jit/allocator/lsra.h (lsra,
+       lsra_init):
+       Removed t_inlining_globals argument.
+       (Changes): Added my name to 'Changes'.
+       (vim boilerplate): Added.
+       
+       * src/vm/jit/jit.c (lsra): Removed t_inlining_globals argument.
+
+2006-02-05 23:24  edwin
+
+       * src/vm/jit/jit.c (reg_setup): Removed t_inlining_globals argument.
+       
+       * src/vm/jit/codegen-common.c (reg_setup): Removed t_inlining_globals
+       argument.
+       
+       * src/vm/jit/reg.c, src/vm/jit/reg.h (reg_setup): Removed
+       t_inlining_globals
+       argument.
+       (Changes): Added my name to 'Changes'.
+       (vim boilerplate): Added.
+
+2006-02-05 23:09  edwin
+
+       * src/vm/jit/jit.h (Changes): Added my name to 'Changes'.
+
+2006-02-05 23:07  edwin
+
+       * src/vm/jit/jit.h (ICMD_INLINE_GOTO): Added. Not used, yet.
+       
+       * src/vm/jit/jit.h (basicblock): Added 'stack' field. Not used, yet.
+       
+       * src/vm/jit/jit.h, src/vm/jit/jit.c (vim boilerplate): Added.
+
+2006-02-05 23:02  edwin
+
+       * src/vm/jit/parse.c (parseRT.h, parseXTA.h, inline.h,
+       parseRTprint.h):
+       No longer included.
+       (parse): Removed t_inlining_globals * from arguments.
+       
+       * src/vm/jit/jit.c (parse): Removed t_inlining_globals * from
+       arguments.
+
+2006-02-05 22:47  edwin
+
+       * src/vm/jit/parse.c, src/vm/jit/parse.h (inline_env): Removed most
+       occurences.
+       (bound_check1): Renamed to bound_check_exclusive.
+
+2006-02-05 22:22  edwin
+
+       * src/vm/jit/parse.c (useinlining): Removed.
+
+2006-02-05 17:36  edwin
+
+       * doc/inlining_stacktrace.txt: Added warning about signedness.
+       Fixed copy&paste errors.
+
+2006-02-05 15:26  edwin
+
+       * doc/inlining_stacktrace.txt: Added.
+       
+       * src/vm/jit/dseg.c (dseg_addlinenumber_inline_start): Added.
+       (dseg_addlinenumber_inline_end): Added.
+       (dseg_addlinenumber): Commented.
+       (vim boilerplate): Added.
+       
+       * src/vm/jit/dseg.h (linenumberref): Changed for inlining stacktraces.
+       Made targetmpc a ptrint, made linenumber s4, reordered fields.
+       (dseg_addlinenumber_inline_start): Added.
+       (dseg_addlinenumber_inline_end): Added.
+       (vim boilerplate): Added.
+
+2006-02-05 13:52  stefan
+
+       * src/threads/native/threads.h: waiting is correctly typed now
+       (previous checkin was wrong).
+
+2006-02-05 13:39  stefan
+
+       * src/threads/native/threads.c: Let's see if this improves the dead
+       lock situation (waiter handling changed slightly).
+
+2006-02-05 12:22  twisti
+
+       * tests/regression/native/.cvsignore (*.h, *.so): Added.
+
+2006-02-05 12:20  twisti
+
+       * tests/regression/native/Makefile.am,
+       tests/regression/codepatching/Makefile.am,
+       tests/regression/Makefile.am (JAVAFLAGS): Use VM_ZIP_STRING and
+       GLIBJ_ZIP_STRING.
+
+2006-02-05 12:03  twisti
+
+       * src/vm/jit/powerpc/asmpart.S, src/vm/jit/alpha/asmpart.S,
+       src/vm/jit/mips/asmpart.S, src/vm/jit/i386/asmpart.S,
+       src/vm/jit/x86_64/asmpart.S, src/vm/jit/arm/asmpart.S: Disable
+       executable stacks, this is required for Gentoo and we actually don't
+       need them.
+
+2006-02-05 00:40  twisti
+
+       * src/vm/jit/stacktrace.c (stacktrace_create): Get the value of
+       _no_threads_stackframeinfo, since it's a pointer, not a structure.
+       (stacktrace_print_trace): Check for NULL value and return.
+       * src/vm/exceptions.c (exceptions_handle_exception): Compiler warning
+       fixed.
+       (exceptions_print_exception): Check for NULL value, print it and
+       return.
+
+2006-02-05 00:16  twisti
+
+       * src/mm/memory.h (string.h): Moved after config.h.
+       (OFFSET): Use internal datatypes.
+       (NEW, MNEW): Use the proper GC macro when Gc is disabled.
+
+2006-02-05 00:13  twisti
+
+       * src/mm/nogc.c (config.h): Moved in front of system headers.
+       (heap_allocate): Call exceptions_throw_outofmemory_exit.
+       (nogc_init): Likewise.
+
+2006-02-05 00:01  twisti
+
+       * src/threads/none/: New.
+       * src/threads/none/threads.h: New file. We need this one for
+       e.g. stacktrace.c where we use thread stuff in the code.
+
+2006-02-04 23:59  twisti
+
+       * src/vm/access.c (assert.h): Move after config.h.
+       * src/vm/properties.c (mm/memory.h): Added.
+       * src/vm/jit/stacktrace.c (mm/memory.h): Likewise.
+       (threads.h): Added.
+       (stacktrace_create): Handle stackframeinfo when threads disabled
+       properly.
+
+2006-02-04 23:56  twisti
+
+       * src/vm/jit/allocator/simplereg.c (allocate_scratch_registers):
+       Generate an exception instead of exiting.
+       * src/vm/jit/allocator/lsra.c (lsra_scan_registers_canditates):
+       Likewise.
+
+2006-02-04 20:15  twisti
+
+       * src/vm/jit/stacktrace.h (stacktrace_getCallingClassLoader): Renamed
+       to stacktrace_getCurrentClassLoader.
+       
+       * src/cacaoh/headers.c (nativelyoverloaded): Fixed compiler warning.
+
+2006-02-04 19:09  twisti
+
+       * src/native/native.c (native_resolve_function): Print failed is the
+       symbol was not found.
+
+2006-02-04 19:08  twisti
+
+       * src/vm/jit/stacktrace.h (STACKTRACE_CAPACITY_DEFAULT)
+       (STACKTRACE_CAPACITY_INCREMENT): Changed default from 40 to 80, seems
+       this is what eclipse and tomcat want.
+       (stacktracebuffer): Changed entries from an array to a pointer.
+
+2006-02-04 19:04  twisti
+
+       * src/vm/jit/stacktrace.c (stacktrace_add_entry): Reallocate to
+       stb->entries.
+       (stacktrace_create): Do two dump and heap allocs, does not affect
+       performance.
+       (stacktrace_getCallingClassLoader): Renamed to
+       stacktrace_getCurrentClassLoader.
+       
+       * src/native/jni.c (FindClass): Renamed
+       stacktrace_getCallingClassLoader to stacktrace_getCurrentClassLoader.
+       
+       * src/native/vm/VMStackWalker.c (getCallingClassLoader): Revert to old
+       implementation.
+
+2006-02-04 17:39  edwin
+
+       * doc/stack.txt: Typos fixed.
+
+2006-02-04 17:31  edwin
+
+       * doc/stack.txt: Expanded tabs.
+       * doc/Makefile.am (stack.txt): Added EXTRA_DIST entry for stack.txt.
+
+2006-02-04 17:25  edwin
+
+       * doc/stack.txt: Added. This file describes some details about the
+       stack representation.
+
+2006-02-04 00:43  twisti
+
+       * src/native/Makefile.am (CLEANFILES): Always clean nativetable.inc.
+       ($(srcdir)/native.c): Moved inside if ENABLE_STATICVM where it
+       belongs! Dammit!
+
+2006-02-04 00:33  twisti
+
+       * src/native/Makefile.am: Accidentally moved the library into if
+       ENABLE_STATICVM.
+       * src/native/include/Makefile.am: Enable accidentally removed
+       dependencies.
+
+2006-02-04 00:13  edwin
+
+       * src/vm/jit/verify/typecheck.c (logging): Adapted to new logging API.
+
+2006-02-04 00:08  edwin
+
+       * src/vm/jit/stack.h (MARKREACHED): Use BBREACHED for readability.
+       (vim boilerplate): Added.
+
+2006-02-04 00:04  edwin
+
+       * src/vm/method.h (methodinfo): Fixed copy&paste error in comment.
+       (vim boilerplate): Added.
+
+2006-02-04 00:00  edwin
+
+       * src/vm/jit/stacktrace.c (vim boilerplate): Added.
+
+2006-02-03 22:57  twisti
+
+       * configure.ac (VM_ZIP_STRING): Added.
+       (GLIBJZ): Renamed to GLIBJ_ZIP_STRING.
+       * src/vm/global.h (CACAO_VM_ZIP_PATH): Use GLIBJ_ZIP_STRING.
+       * src/lib/Makefile.am (GLIBJ_ZIP): Likewise.
+       * src/native/include/Makefile.am, src/native/Makefile.am (VM_ZIP): Use
+       VM_ZIP_STRING.
+       (GLIBJ_ZIP): Use GLIBJ_ZIP_STRING.
+       * contrib/setenvinstalled.in, contrib/setenvsource.in: Likewise.
+
+2006-02-03 22:53  twisti
+
+       * src/native/vm/VMRuntime.c (nativeLoad): #ifdef ENABLE_STATICVM
+       warning fix.
+
+2006-02-03 22:24  twisti
+
+       * src/vm/global.h (CACAO_VM_ZIP_PATH): Removed accidentally commited
+       VM_ZIP_FILE.
+       * src/native/Makefile.am (VM_ZIP): Likewise.
+       * src/native/include/Makefile.am (VM_ZIP): Likewise.
+
+2006-02-03 22:03  twisti
+
+       * src/vm/global.h (CACAO_VM_ZIP_PATH): Set correctly for ifndef
+       ENABLE_ZLIB.
+       * src/lib/Makefile.am (JAVA_VM_FILES): Renamed to VM_JAVA_FILES.
+       (VM_CLASS_FILES): Added.
+       (pkgdata_DATA): Set to class files for ifndef ENABLE_ZLIB.
+       * src/native/include/Makefile.am (VM_ZIP): Set correctly for ifndef
+       ENABLE_ZLIB.
+       * src/native/Makefile.am (VM_ZIP): Likewise.
+
+2006-02-03 21:58  twisti
+
+       * src/vm/suck.c (suck_add): Fixed compiler warning with #ifndef
+       ENABLE_ZLIB.
+
+2006-02-03 21:51  twisti
+
+       * src/native/tools/.cvsignore (TAGS): Added.
+
+2006-02-03 20:54  twisti
+
+       * src/native/Makefile.am (VM_ZIP, GLIBJ_ZIP, CLASSPATH): Added.
+
+2006-02-03 20:53  twisti
+
+       * src/native/tools/gennativetable.c (main): Don't free bootclasspath,
+       do proper initalization of subsystems, don't link classes.
+
+2006-02-03 19:44  twisti
+
+       * src/native/Makefile.am (nativetable.inc): Pass classpath on
+       commandline, environment variable support was removed.
+
+2006-02-03 19:42  twisti
+
+       * src/native/tools/gennativetable.c: Updated to work again.
+
+2006-02-03 19:27  twisti
+
+       * src/cacao/Makefile.am (INCLUDES): Renamed to AM_CPPFLAGS.
+       (CLASSPATH_PREFIX): Renamed to CLASSPATH_LIBDIR.
+
+2006-02-03 18:45  twisti
+
+       * configure.ac (ENABLE_SOFTFLOAT): Added.
+       (NDEBUG): Bugfix for AM_CONDITIONAL.
+
+2006-02-03 14:14  twisti
+
+       * src/vm/jit/stacktrace.c (stacktrace_entry): Wrong return value,
+       added some checks.
+
+2006-02-03 13:19  twisti
+
+       * src/vm/jit/stacktrace.c, src/vm/jit/stacktrace.h
+       (lineNumberTableEntry): Renamed to linenumbertable_entry.
+       (addEntry): Renamed to stacktrace_add_entry.
+       (stacktrace_fillInStackTrace_methodRecursive): Removed.
+       (stacktrace_fillInStackTrace_method): Renamed to
+       stacktrace_add_method.
+       (cacao_stacktrace_fillInStackTrace): Renamed to stacktrace_create.
+       (stackTraceCollector): Removed.
+       (cacao_stacktrace_NormalTrace): Renamed to
+       stacktrace_fillInStackTrace.
+       (classContextCollector): Removed.
+       (cacao_createClassContextArray): Renamed to
+       stacktrace_getClassContext.
+       (stacktrace_classLoaderCollector): Removed.
+       (cacao_currentClassLoader): Renamed to
+       stacktrace_getCallingClassLoader.
+       (getStackCollector): Removed.
+       (cacao_getStackForVMAccessController): Renamed to stacktrace_getStack.
+       
+       * src/native/jni.c (jni_init): Use new GCNEW.
+       (FindClass): Renamed cacao_currentClassLoader to
+       stacktrace_getCallingClassLoader.
+       
+       * src/native/vm/VMAccessController.c (getStack): Renamed
+       cacao_getStackForVMAccessController to stacktrace_getStack.
+       
+       * src/native/vm/VMStackWalker.c (getClassContext): Renamed
+       cacao_createClassContextArray to stacktrace_getClassContext.
+       (getCallingClass): Likewise.
+       (getCallingClassLoader): Call stacktrace_getCallingClassLoader.
+       
+       * src/native/vm/Method.c (config.h): Added.
+       (invokeNative): Renamed cacao_createClassContextArray to
+       stacktrace_getClassContext.
+       
+       * src/native/vm/Field.c (config.h): Added.
+       (cacao_get_field_address): Renamed cacao_createClassContextArray to
+       stacktrace_getClassContext. Check for CLASS_INITIALIZED.
+       
+       * src/native/vm/VMThrowable.c
+       (native/include/gnu_classpath_Pointer.h): Added.
+       (fillInStackTrace): Call stacktrace_fillInStackTrace.
+       (getStackTrace): Adapted.
+       
+       * src/mm/memory.h (GCNEW): Use only 1 parameter, like NEW.
+       (GCMNEW): Added.
+
+2006-02-03 12:46  twisti
+
+       * src/threads/native/threads.h (THREADOBJECT): Don't cast to
+       java_lang_VMThread*, we don't need that.
+
+2006-02-03 12:38  twisti
+
+       * src/vm/method.c (method_printflags, method_print): Check for NULL.
+       * src/vm/field.c (field_printflags, field_print) Likewise.
+       (stdio.h): Added.
+       * src/vm/class.c (class_printflags, class_print): Likewise.
+
+2006-02-02 09:16  twisti
+
+       * configure.ac (AC_PROG_JAR): Added.
+       * m4/ac_prog_jar.m4: New file.
+       * src/lib/Makefile.am (VM_ZIP): Added.
+       (vm.zip): Check if $(JAR) is zip or jar type.
+
+2006-02-02 08:51  twisti
+
+       * src/vm/loader.c (loader_load_all_classes): Added missing #ifde
+       ENABLE_ZLIB.
+
+2006-02-02 08:45  twisti
+
+       * configure.ac (NDEBUG): Added missing WITH_BINUTILS_DISASSEMBLER
+       conditional.
+       (zlib): Fixed handling.
+
+2006-01-31 23:54  twisti
+
+       * src/vm/jit/i386/codegen.c (codegen): Added basic block frequency
+       count code.
+
+2006-01-31 23:45  twisti
+
+       * src/vm/jit/profile.c ("mm/memory.h,vm/options.h): Added.
+       (list_method_entry): Likewise.
+       (profile_printstats): Sort methods into a list and print it sorted,
+       added basic block frequency output.
+
+2006-01-31 23:43  twisti
+
+       * src/vm/method.h (methodinfo): Renamed executioncount to
+       frequency. Added bbfrequency and cycles.
+       
+       * src/vm/jit/x86_64/codegen.c (codegen): Added cycle profiling code.
+       
+       * src/vm/jit/x86_64/codegen.h (M_FMOV): Added.
+       (M_IADD_MEMBASE, M_IADC_MEMBASE, M_ISUB_MEMBASE, M_ISBB_MEMBASE):
+       Likewise.
+       (M_RDTSC, PROFILE_CYCLE_START, PROFILE_CYCLE_STOP): Likewise.
+       
+       * src/vm/jit/x86_64/emitfuncs.c (x86_64_inc_membase)
+       (x86_64_incl_membase): Fixed.
+       (emit_rdtsc): Added.
+       
+       * src/vm/jit/jit.c (jit_compile): Free m->bbfrequency memory.
+       (jit_compile_intern): Allocate m->bbfrequency memory.
+       
+       * src/vm/jit/jit.h: Reformatting.
+
+2006-01-31 23:29  twisti
+
+       * src/vm/statistics.c, src/vm/jit/inline/inline.c: Removed inlining
+       statistics stuff.
+
+2006-01-31 23:27  twisti
+
+       * src/vm/options.c, src/vm/options.h (opt_rt, opt_xta, opt_vta):
+       Removed.
+       (opt_prof_bb): Added.
+       * src/cacao/cacao.c: Likewise.
+       (OPT_PROF_OPTION): Added.
+
+2006-01-31 22:31  twisti
+
+       * src/vm/jit/stack.c (show_icmd_block): Print the basic block type.
+
+2006-01-31 22:27  twisti
+
+       * src/toolbox/list.c, src/toolbox/list.h (list_add_before): Added.
+
+2006-01-31 15:41  twisti
+
+       * src/vm/jit/powerpc/codegen.c, src/vm/jit/alpha/codegen.c,
+       src/vm/jit/mips/codegen.c, src/vm/jit/i386/codegen.c (codegen): Use
+       CLASS_IS_OR_ALMOST_INITIALIZED macro, saves some code space.
+
+2006-01-31 15:35  twisti
+
+       Fixes Debian bug #350729
+       * src/vm/jit/i386/asmpart.S (asm_md_init): Added, puts the FPU to
+       64-bit precision mode.
+       * src/vm/jit/i386/md.c (md_init): Call asm_md_init.
+       
+       * src/vm/jit/asmpart.h (asm_md_init): Added.
+       (has_no_x_instr_set): Removed.
+       * src/vm/options.c, src/vm/options.h (has_ext_instr_set): Removed.
+       * src/vm/jit/jit.c (jit_init): Removed has_no_x_instr_set call.
+       * src/vm/jit/alpha/asmpart.S (has_no_x_instr_set): Renamed to
+       asm_md_init.
+       * src/vm/jit/alpha/md.c (has_ext_instr_set): Added.
+       (md_init): Call asm_md_init.
+       * src/vm/jit/alpha/md.h (has_ext_instr_set): Added.
+
+2006-01-31 15:18  edwin
+
+       * src/vm/classcache.c: Added a formal description of the classcache.
+
+2006-01-31 14:24  twisti
+
+       * src/vm/signal.c (signal_handler_sigint): Typo, reported by Chris
+       Burdess on irc.
+
+2006-01-30 16:25  twisti
+
+       * src/vm/jit/i386/codegen.c (codegen): Added profiling code.
+       (ICMD_IINC): Use macros.
+       * src/vm/jit/i386/codegen.h (ucontext.h): Removed.
+       (thread_restartcriticalsection): Likewise.
+       (M_IADD_IMM_MEMBASE): Added.
+
+2006-01-30 15:44  twisti
+
+       * src/vm/options.h, src/vm/options.c (opt_prof): Added.
+       * src/cacao/cacao.c (OPT_PROF): Added.
+       (exit_handler): Added profile_printstats when opt_prof is enabled.
+       
+       * src/vm/class.h (classinfo): Members classUsed and impldBy removed.
+       * src/vm/loader.c (load_class_from_classbuffer): Likewise.
+       * src/vm/linker.c (link_primitivetype_table): Likewise.
+       (link_class_intern): Likewise.
+       * src/vm/jit/inline/inline.c: Likewise.
+       
+       * src/vm/method.h (methodinfo): Added member executioncount.
+       
+       * src/vm/jit/x86_64/codegen.c (codegen): Added profiling code. Some
+       code reordering, using more macros and save some code space.
+       * src/vm/jit/x86_64/codegen.h (M_ILD32, M_LLD32, M_IST_IMM, M_IST32)
+       (M_LST32, M_IST32_IMM, M_LST32_IMM32, M_IINC_MEMBASE, M_ITEST)
+       (M_CMP_IMM_MEMBASE, M_ICMP, M_ICMP_IMM, M_ICMP_IMM_MEMBASE, M_CMOVEQ)
+       (M_CMOVNE, M_CMOVLT, M_CMOVLE, M_CMOVGE, M_CMOVGT, M_CMOVB, M_CMOVA)
+       (M_CMOVP, M_CLR): Added.
+       
+       * src/vm/jit/x86_64/emitfuncs.c (x86_64_emit_ifcc): Use macros.
+       (x86_64_call_mem): Changed mem argument to ptrint type.
+       * src/vm/jit/x86_64/emitfuncs.h (x86_64_call_mem): Likewise.
+       
+       * src/vm/jit/profile.c, src/vm/jit/profile.h: New files.
+       * src/vm/jit/Makefile.am (DISASS_OBJ): Renamed to DISASS_SOURCES.
+       (PROFILE_SOURCES): Added.
+
+2006-01-30 14:24  christian
+
+       * src/vm/jit/allocator/simplereg.c (interface_regalloc): Used
+       m->parseddesc->arg[int|flt|adr]reguse to enable use of unused
+       argumentregisters in leadmethods.
+       (local_regalloc): Likewise.
+       (reg_init_temp): Likewise.
+
+2006-01-30 11:26  christian
+
+       * src/vm/jit/allocator/simplereg.c: Ensured proper alignment of all
+       doubles and longs if ALIGN_[DOUBLES|LONGS]_IN_MEMORY is defined.
+       (local_regalloc): Fixed error for HAS_ADREDD_REGISTER_FILE - else was
+       missing. Ensured use of unused argument register in leafmethod before
+       use of saved registers. Regarded PACK_REGS for
+       SUPPORT_COMBINE_INTEGER_REGISTER archs for unused integer argument
+       registers.
+       * src/vm/jit/i386/arch.h: Added defines for
+       ALIGN_[DOUBLES|LONGS]_IN_MEMORY.
+       * src/vm/jit/powerpc/arch.h: Likewise.
+
+2006-01-29 17:27  twisti
+
+       * src/vm/jit/stack.c (show_icmd): Fixed ICMD_ELSE_ICONST output.
+
+2006-01-28 14:42  twisti
+
+       * src/vm/jit/powerpc/linux/md-abi.c,
+       src/vm/jit/powerpc/darwin/md-abi.c (md_return_alloc): Use
+       m->parseddesc->paramcount instead of m->paramcount.
+       * src/vm/jit/schedule/schedule.c (schedule_init): Likewise.
+       
+       * src/vm/jit/powerpc/codegen.c, src/vm/jit/alpha/codegen.c,
+       src/vm/jit/mips/codegen.c, src/vm/jit/i386/codegen.c (codegen):
+       Removed first MCODECHECK since it not required.
+       
+       * src/vm/jit/methodheader.h: Added comment.
+
+2006-01-28 14:25  twisti
+
+       * src/vm/jit/x86_64/.cvsignore: Added TAGS.
+
+2006-01-28 14:21  twisti
+
+       * src/vm/loader.c (load_method): Removed reference to
+       nativelyoverloaded, monoPoly, subRedefs, subRedefsUsed, xta.
+       (load_newly_created_array): Removed reference to monoPoly.
+
+2006-01-28 14:18  twisti
+
+       * src/vm/method.c (method_descriptor2types): Removed.
+       * src/vm/method.h (methodinfo): Removed members returntype,
+       returnclass, paramcount, paramtypes, paramclass, xta, methodXTAparsed,
+       methodUsed, monoPoly, subRedefs, subRedefsUsed, and
+       nativelyoverloaded, this saves about 3.2MB of classinfo memory for
+       -all.
+       (method_descriptor2types): Removed.
+       
+       * src/vm/jit/inline/inline.c (inlining_analyse_method): Use
+       m->parseddesc->paramcount instead of m->paramcount.
+       * src/vm/jit/allocator/simplereg.c (local_regalloc): Likewise.
+       * src/vm/jit/x86_64/md-abi.c (md_return_alloc): Likewise.
+       
+       * src/vm/jit/jit.c (jit_compile): Removed RT_jit_parse and
+       XTA_jit_parse calls.
+       (jit_compile_intern): Removed method_descriptor2types call.
+       
+       * src/cacaoh/cacaoh.c (main): Call string_init. Removed
+       nativemethod_chain and nativeclass_chain stuff.
+       
+       * src/cacaoh/headers.c (nativemethod_chain): Removed.
+       (nativeclass_chain): Likewise.
+       (printmethod): Use m->isleafmethod instead of m->nativelyoverloaded.
+       (headerfile_generate): Likewise.
+
+2006-01-28 11:26  twisti
+
+       * src/vm/jit/inline/Makefile.am (INCLUDES): Renamed to AM_CPPFLAGS.
+       (libinline_la_SOURCES): Don't build RTA/XTA stuff.
+
+2006-01-28 11:24  twisti
+
+       * Makefile.am (EXTRA_DIST): Added THIRDPARTY.
+
+2006-01-27 19:05  stefan
+
+       * src/threads/native/threads.c: Removed a superfluous (I hope) NULL
+       check.
+
+2006-01-27 18:53  stefan
+
+       * src/threads/native/threads.c: Repaired thread_getself.
+
+2006-01-27 17:35  twisti
+
+       * src/toolbox/logging.c, src/toolbox/logging.h (log_start): Added.
+       (log_vprint): Likewise.
+       (log_print): Likewise.
+       (log_println): Likewise.
+       (log_finish): Likewise.
+       (log_plain): Removed.
+       (log_nl): Removed.
+       (log_flush): Likewise.
+       (dolog_plain): Likewise.
+       (get_logfile): Likewise.
+       (log_utf): Likewise.
+       (log_plain_utf): Likewise.
+       (log_text): Removed but added a define until we have ported all files.
+       (dolog): Likewise.
+       * src/vm/statistics.c (print_stats): Started to use new logging
+       functions. Print some ratios.
+
+2006-01-27 16:32  twisti
+
+       * src/native/vm/VMSystemProperties.c (preInit): Don't add . to
+       java.library.path per default.
+
+2006-01-27 12:43  twisti
+
+       * NEWS: Added powerpc fixes found by javver.
+
+2006-01-24 19:09  twisti
+
+       * src/vm/jit/powerpc/codegen.h (var_to_reg_dbl): Added.
+       (M_COPY): Handle doubles properly.
+
+2006-01-24 13:52  twisti
+
+       * src/vm/jit/powerpc/codegen.h (M_LNGMOVE): Added.
+       (var_to_reg_lng): Likewise.
+       (M_COPY): Support longs. This was actually never implemented and never
+       worked, grrr.
+
+2006-01-24 10:30  twisti
+
+       * src/vm/jit/stacktrace.c (cacao_stacktrace_fillInStackTrace): Use
+       method_print. Fixed typo.
+       * src/vm/jit/powerpc/md.c (md_codegen_findmethod): Handle 2
+       instruction returns properly.
+
+2006-01-24 10:28  twisti
+
+       * src/vm/builtin.c (builtin_f2i): Enable for interpreter.
+       (builtin_d2i): Likewise.
+       * src/vm/jit/stack.c (icmd_print_stack): Fixed for ENABLE_INTRP and
+       SUPPORT_COMBINE_INTEGER_REGISTERS.
+
+2006-01-23 16:03  twisti
+
+       * src/vm/jit/stack.c (show_icmd_method): Fixed basic block count
+       output.
+       
+       * src/vm/jit/i386/codegen.c (codegen): Use disp instead of a. Usage of
+       some more macros.
+       * src/vm/jit/i386/codegen.h (M_BLT): Added.
+       (M_BLE): Likewise.
+       (M_BGE): Likewise.
+       (M_BGT): Likewise.
+       (M_BBE): Likewise.
+       (M_BAE): Likewise.
+
+2006-01-23 01:12  twisti
+
+       * configure.ac (AC_INIT): Changed version number to 0.94+cvs.
+       (CFLAGS): Changed optimization back to -O0.
+
+2006-01-23 01:01  twisti
+
+       * ChangeLog: Updated for 0.94 release.
+
+2006-01-22 23:42  twisti
+
+       * configure.ac (AC_INIT): Changed version number to 0.94.
+       (CFLAGS): Changed optimization to -O2.
+
+2006-01-22 23:33  twisti
+
+       * Updated header: Added 2006. Changed address of FSF. Changed email
+       address.
+
+2006-01-22 23:16  twisti
+
+       * Updated svn:ignore propset.
+
+2006-01-22 23:00  twisti
+
+       * src/vm/jit/intrp/Makefile.am (EXTRA_DIST): Added gray.fs and
+       BUILT_SOURCES.
+
+2006-01-22 22:46  twisti
+
+       * tests/regression/extest.java: Typo.
+
+2006-01-22 22:36  twisti
+
+       * NEWS: Added releases 0.90, 0.91, 0.92, 0.93, 0.94.
+
+2006-01-22 22:34  twisti
+
+       * README: Updated.
+
+2006-01-22 21:42  twisti
+
+       * src/vm/jit/intrp/codegen.c (cacaotype2ffitype): Revert edwin's
+       bugfix, but we can't use ffi_type_slong as it's defined as 64-bit
+       value on 32-bit machines.
+
+2006-01-22 21:40  twisti
+
+       * src/native/Makefile.am (INCLUDES): Renamed to AM_CPPFLAGS.
+       (libnative_la_SOURCES): Removed nativecalls.inc.
+
+2006-01-22 21:39  twisti
+
+       * tests/Makefile.am (SUBDIRS): Removed native.
+
+2006-01-22 21:38  twisti
+
+       * tests/regression/native/testarguments.output: Updated.
+       * tests/regression/native/Makefile.am: Made it work with distcheck.
+       * tests/regression/codepatching/Makefile.am: Likewise.
+       * tests/regression/Makefile.am: Likewise.
+       
+       * tests/regression/extest.java: Comment changed.
+
+2006-01-22 21:22  twisti
+
+       * configure.in: Renamed to configure.ac.
+
+2006-01-22 21:21  twisti
+
+       * configure.in (AC_CONFIG_FILES): Removed tests/native/Makefile, added
+       tests/regression/native/Makefile.
+
+2006-01-22 20:21  twisti
+
+       * tests/native: Moved to tests/regression/native.
+
+2006-01-22 20:00  twisti
+
+       * src/vm/jit/asmpart.h (asm_handle_exception)
+       (asm_handle_nat_exception): #ifdef ENABLE_JIT.
+
+2006-01-22 19:59  twisti
+
+       * src/vm/jit/jit.c (jit_compile_intern): Use
+       CLASS_IS_OR_ALMOST_INITIALIZED to check uninitialized.
+
+2006-01-22 19:57  twisti
+
+       * src/vm/jit/stacktrace.c (stacktrace_create_inline_stackframeinfo):
+       Compiler warning fix.
+
+2006-01-22 19:56  twisti
+
+       * src/vm/jit/intrp/java.vmg: Some reformatting.
+
+2006-01-22 19:55  twisti
+
+       * src/vm/jit/intrp/asmpart.c (vm/loader.h): Added.
+       (intrp_asm_calljavafunction_intern): Use u1* instead of entrypoint.
+       (jni_invoke_java_intern): Likewise.
+
+2006-01-22 19:50  twisti
+
+       * .cvsignore, src/toolbox/.cvsignore, src/vm/jit/inline/.cvsignore,
+       src/vm/jit/allocator/.cvsignore: TAGS added.
+
+2006-01-22 19:37  twisti
+
+       * src/boehm-gc/.cvsignore, src/boehm-gc/include/.cvsignore,
+       src/vm/.cvsignore, src/vm/jit/tools/.cvsignore,
+       src/vm/jit/verify/.cvsignore, src/vm/jit/loop/.cvsignore,
+       src/vm/jit/.cvsignore, src/vm/jit/intrp/.cvsignore,
+       src/cacao/.cvsignore, src/native/vm/.cvsignore,
+       src/native/include/.cvsignore, src/native/.cvsignore,
+       src/mm/.cvsignore, src/threads/native/.cvsignore,
+       src/threads/.cvsignore, src/fdlibm/.cvsignore, src/.cvsignore,
+       src/cacaoh/.cvsignore: TAGS added.
+
+2006-01-22 19:29  edwin
+
+       * src/vm/jit/intrp/codegen.c (nativecall): Fixed calculation of the
+       stackframeinfo address.
+
+2006-01-22 14:44  twisti
+
+       * src/vm/jit/codegen-common.c (codegen_addreference): The last fix was
+       not correct if only the intrp is built.
+
+2006-01-22 14:39  twisti
+
+       * src/vm/class.c (class_showmethods): Use class_printflags.
+       * src/vm/loader.c, src/vm/loader.h (fprintflags): Removed.
+       (printflags): Likewise.
+       * src/vm/jit/inline/sets.c (printFldSet): Use field_println instead of
+       field_display.
+       * src/vm/field.c, src/vm/field.h (field_display): Removed.
+       (field_printflags): Added.
+       (field_print): Likewise.
+       (field_println): Likewise.
+
+2006-01-22 00:45  edwin
+
+       * src/vm/jit/intrp/codegen.c (cacaotype2ffitype): Use ffi_type_sint
+       for
+       values of TYPE_INT. This fixes the interpreter on i386, though I'm not
+       sure if it is a correct and complete solution.
+
+2006-01-21 21:46  edwin
+
+       * src/vm/jit/codegen-common.c (codegen_addreference): Fixed bug when
+       both ENABLE_INTRP and ENABLE_JIT were defined.
+
+2006-01-21 20:22  edwin
+
+       * src/vm/jit/verify/typecheck.c (typestack_copy,
+       typestack_separable_with)
+       (typestack_separable_from, verify_basic_block): Comment-only changes.
+       (verify_basic_block): Small typo fix in string.
+
+2006-01-20 14:49  twisti
+
+       * src/native/jni.c (fill_callblock_from_objectarray): Fixed typo.
+       (jni_method_invokeNativeHelper): Major code rewrite and speed
+       improvement, renamed to _Jv_jni_invokeNative.
+       (cacao_jni_CallVoidMethod): Fixed interpreter bug, renamed to
+       _Jv_jni_CallVoidMethod.
+       (callLongMethod): Renamed to _Jv_jni_CallLongMethod.
+       * src/native/jni.h (jni_method_invokeNativeHelper): Renamed to
+       _Jv_jni_invokeNative.
+       * src/native/vm/Method.c (Java_java_lang_reflect_Method_invokeNative):
+       Renamed jni_method_invokeNativeHelper to _Jv_jni_invokeNative.
+       * src/native/vm/Constructor.c: Updated includes.
+       (Java_java_lang_reflect_Constructor_constructNative): Renamed
+       jni_method_invokeNativeHelper to _Jv_jni_invokeNative.
+
+2006-01-20 13:41  twisti
+
+       * tests/regression/Makefile.am (EXTRA_DIST): Made it more readable.
+
+2006-01-20 13:40  twisti
+
+       * src/vm/jit/intrp/intrp.h (ffi.h): Removed, not required in this
+       file.
+       * src/vm/jit/intrp/codegen.c (nativecall): Removed unused big-endian
+       code.
+       * src/vm/jit/intrp/asmpart.c (asm_calljavafunction_intern): Renamed to
+       intrp_asm_calljavafunction_intern, just to be sure.
+
+2006-01-20 13:33  twisti
+
+       * src/vm/jit/mips/irix/md-os.c (md_signal_handler_sigsegv): Missed the
+       actal rename from the previous commit.
+
+2006-01-20 13:28  twisti
+
+       * src/vm/signal.c (vm/signallocal.h): Added.
+       * src/vm/signallocal.h (md_signal_handler_sigfpe): #ifdef for i386 and
+       x86_64.
+
+2006-01-20 13:25  twisti
+
+       * src/vm/jit/powerpc/linux/md-os.c, src/vm/jit/powerpc/darwin/md-os.c,
+       src/vm/jit/alpha/linux/md-os.c, src/vm/jit/alpha/freebsd/md-os.c,
+       src/vm/jit/mips/linux/md-os.c, src/vm/jit/mips/irix/md-os.c
+       (signal_handler_sigsegv): Renamed to md_signal_handler_sigsegv.
+       * src/vm/jit/i386/linux/md-os.c, src/vm/jit/i386/freebsd/md-os.c,
+       src/vm/jit/x86_64/md.c (signal_handler_sigsegv): Renamed to
+       md_signal_handler_sigsegv.
+       (signal_handler_sigfpe): Renamed to md_signal_handler_sigfpe.
+       * src/vm/signal.c (signal_init): Renamed signal_handler_sigsegv to
+       md_signal_handler_sigsegv and signal_handler_sigfpe to
+       md_signal_handler_sigfpe respectively.
+       * src/vm/signallocal.h (md_signal_handler_sigsegv): Added.
+       (md_signal_handler_sigfpe): Likewise.
+
+2006-01-20 13:19  twisti
+
+       * src/vm/jit/alpha/codegen.h (ucontext.h): Removed.
+       (thread_restartcriticalsection): Removed.
+
+2006-01-20 13:06  twisti
+
+       * src/vm/jit/x86_64/disass.c (dis-asm.h): Added.
+       (vm/global.h): Likewise.
+       (mm/memory.h): Removed.
+
+2006-01-20 13:05  twisti
+
+       * src/vm/class.c, src/vm/class.h (class_printflags): Added.
+       (class_print): Likewise.
+       (class_println): Likewise.
+
+2006-01-20 12:58  twisti
+
+       * src/vm/jit/i386/disass.c (disassinstr): Set the read_memory_func in
+       disassemble_info to disass_buffer_read_memory.
+       (disassemble): Removed.
+
+2006-01-20 12:57  twisti
+
+       * src/vm/jit/stack.c (show_icmd_method): Print basic blocks count and
+       better basic block header output.
+       ICMD_MULTIANEWARRAY: Changed iptr->target and iptr->val.a value.
+       ICMD_IFLE_ICONST, ICMD_ELSE_ICONST: Print values better.
+
+2006-01-20 12:01  twisti
+
+       * src/vm/jit/powerpc/disass.c (disassinstr): Set the read_memory_func
+       in disassemble_info to disass_buffer_read_memory.
+       (disassemble): Removed.
+
+2006-01-20 11:38  twisti
+
+       * src/vm/jit/disass-common.c, src/vm/jit/disass.h: Added
+       disassemble_info and disass_initialized.
+       (disassemble): Added.
+       (buffer_read_memory): Renamed to disass_buffer_read_memory.
+       * src/vm/jit/x86_64/disass.c (disassinstr): Set the read_memory_func
+       in disassemble_info to disass_buffer_read_memory.
+       (disassemble): Removed.
+
+2006-01-20 10:15  twisti
+
+       * regression/extest.java: Removed asmpart exceptions as they are now
+       checked with codepatching.
+       * regression/extest.2output: Regenerated.
+       * regression/extest_clinit.java: Added.
+
+2006-01-20 10:08  twisti
+
+       * src/vm/jit/alpha/md.c (md_init): Moved #include and extern's to the
+       top of the file, since this broke compilation on debian unstable.
+
+2006-01-19 23:40  edwin
+
+       * src/vm/jit/parse.h: Added vim boilerplate.
+
+2006-01-19 23:35  edwin
+
+       * src/vm/jit/stack.c: Added vim boilerplate.
+
+2006-01-19 22:21  twisti
+
+       * configure.in (AC_CONFIG_FILES): Removed tests/codepatching/Makefile
+       and added tests/regression/codepatching/Makefile.
+       * tests/Makefile.am (SUBDIRS): Removed codepatching.
+       * tests/regression/Makefile.am (SUBDIRS) Added with codepatching.
+       * tests/regression/codepatching/Makefile.am (JAVAFLAGS): Added.
+
+2006-01-19 22:11  edwin
+
+       * src/vm/jit/parse.c (parse): Removed inlining code.
+
+2006-01-19 22:06  edwin
+
+       * src/vm/options.c, src/vm/options.h (useinliningm): Removed.
+
+2006-01-19 22:05  twisti
+
+       * tests/codepatching: Moved to tests/regression/codepatching.
+
+2006-01-19 21:31  edwin
+
+       * src/vm/jit/jit.c (jit_compile): Removed the INAFTERMAIN hack.
+
+2006-01-19 21:27  edwin
+
+       * src/vm/jit/inline/inline.c (inlining_setup): Removed INAFTERMAIN
+       hack.
+
+2006-01-19 21:26  edwin
+
+       * src/cacao/cacao.c (main): Disabled useinlining and useinliningm.
+
+2006-01-19 20:56  twisti
+
+       * src/vm/jit/intrp/codegen.c, src/vm/jit/intrp/java.vmg (FALOAD)
+       (FASTORE): Added, required for big-endian machines.
+       * src/vm/jit/intrp/engine.c (access_array_float): Likewise.
+
+2006-01-19 20:53  twisti
+
+       * src/vm/global.h (java_floatarray): Typo.
+
+2006-01-19 20:28  edwin
+
+       * src/vm/jit/parse.c (parse, fillextable): Removed debugging code.
+       Minor cleanup.
+
+2006-01-19 20:13  edwin
+
+       * src/vm/jit/parse.c (parse): Removed commented out debugging code.
+
+2006-01-19 20:03  twisti
+
+       * src/vm/class.c (class_showmethods): Replaced method_display with
+       method_println.
+
+2006-01-19 20:00  twisti
+
+       * src/vm/jit/inline/inline.c, src/vm/jit/inline/sets.c,
+       src/vm/jit/inline/parseRTstats.c, src/vm/jit/inline/parseRT.c,
+       src/vm/jit/inline/parseRTprint.h, src/vm/jit/inline/parseXTA.c:
+       Replaced method_display and method_display_w_class calls with
+       method_println.
+
+2006-01-19 19:49  twisti
+
+       * src/vm/method.c, src/vm/method.h (method_display): Removed.
+       (method_display_w_class): Likewise.
+       (method_printflags): Added.
+       (method_print): Likewise.
+       (method_println): Likewise.
+       Removed. --This line, and those below, will be ignored--
+       
+       M method.c
+       M method.h
+
+2006-01-19 17:02  twisti
+
+       * src/vm/jit/powerpc/linux/Makefile.am (INCLUDES): Renamed to
+       AM_CPPFLAGS.
+       * src/vm/jit/powerpc/Makefile.am (AM_CPPFLAGS): Added missing
+       $(OS_DIR) include.
+
+2006-01-19 16:02  twisti
+
+       * INCLUDES: Replaced with AM_CPPFLAGS as Tom Tromey suggested on irc,
+       as this is more common these days.
+
+2006-01-19 11:58  edwin
+
+       * alpha, mips, nat: removed obsolete directories resurrected by svn
+       migration
+
+2006-01-19 09:47  twisti
+
+       * INCLUDES: Replaced with AM_CPPFLAGS as Tom Tromey suggested on irc,
+       as this is more common these days.
+
+2006-01-18 21:41  edwin
+
+       * havoc.class: fix corruption by svn eol-style conversion
+
+2006-01-18 15:43  twisti
+
+       * AC_CHECK_HEADER: Added ansidecl.h, symcat.h, bfd.h and zconf.h.
+
+2006-01-18 15:41  twisti
+
+       * main: Call nogc_init for DISABLE_GC.
+
+2006-01-17 18:51  twisti
+
+       * Removed extern stuff that was removed from the lib.
+
+2006-01-17 18:37  twisti
+
+       * Updated to new classpath configure options.
+
+2006-01-17 18:24  twisti
+
+       * CLASSPATH_INSTALL_DIR: Renamed to CLASSPATH_PREFIX.
+
+2006-01-17 17:06  twisti
+
+       * CACAO_INSTALL_PREFIX: Renamed to CACAO_PREFIX.
+       * NDEBUG: Check for libintl on cygwin and darwin.
+       * --with-classpath-install-dir: Renamed to --with-classpath-prefix.
+       * --with-classpath-libdir: Added to support 64-bit platforms where the
+       libdir may be /usr/lib64.
+
+2006-01-17 16:59  twisti
+
+       * main: Removed CACAO_INSTALL_PREFIX and CLASSPATH_INSTALL_DIR since
+       CACAO_VM_ZIP_PATH and CLASSPATH_GLIBJ_ZIP_PATH are now full paths.
+
+2006-01-17 16:58  twisti
+
+       * Java_gnu_classpath_VMSystemProperties_preInit: Renamed
+       CACAO_INSTALL_PREFIX to CACAO_PREFIX.
+
+2006-01-17 16:57  twisti
+
+       * CACAO_VM_ZIP_PATH: Prepend CACAO_PREFIX.
+       * CLASSPATH_GLIBJ_ZIP_PATH: Prepend CLASSPATH_PREFIX.
+       * CLASSPATH_LIBRARY_PATH: Prepend CLASSPATH_LIBDIR.
+
+2006-01-17 16:55  twisti
+
+       * CLASSPATH_INSTALL_DIR: Renamed to CLASSPATH_PREFIX.
+
+2006-01-17 16:53  twisti
+
+       * Added.
+
+2006-01-17 16:51  twisti
+
+       * m4/as-ac-expand.m4: Added.
+
+2006-01-16 00:07  twisti
+
+       * jni_init: Fixed small typo.
+
+2006-01-16 00:04  twisti
+
+       * Java_gnu_classpath_VMSystemProperties_preInit: Use the same os.arch
+       property values as SUN and others do, so we are compatible (e.g.
+       jogl had
+       some problems), file.encoding removed as it's set by GNU Classpath,
+       hardcode values for gnu.cpu.endian.
+
+2006-01-15 23:32  twisti
+
+       * utf_java_nio_DirectByteBufferImpl_ReadWrite: Removed.
+       * utf_gnu_classpath_Pointer{32,64}: Likewise.
+       * class_java_nio_Buffer: Added, load and link this class in
+       jni_init().
+       * class_java_nio_DirectByteBufferImpl: Likewise.
+       * NewDirectByteBuffer: Removed debug output.
+       * GetDirectBufferAddress: Added instanceof check.
+       * GetDirectBufferCapacity: Likewise.
+
+2006-01-15 14:12  twisti
+
+       * native_new_and_init: Ooops, reverting last change and added an
+       explaining
+       comment.
+
+2006-01-15 13:32  twisti
+
+       * CLASSPATH_LIBRARY_PATH, CLASSPATH_GLIBJ_ZIP_PATH: Temporary bugfix.
+
+2006-01-15 12:28  twisti
+
+       * native_findfunction: #ifdef ENABLE_STATICVM.
+       * native_new_and_init: Fixed return value.
+
+2006-01-15 01:56  twisti
+
+       * math.h: Added for isnan.
+
+2006-01-15 00:37  twisti
+
+       * JAVAC: Removed.
+
+2006-01-15 00:36  twisti
+
+       * Java_gnu_classpath_VMSystemProperties_preInit: Set user.country
+       instead
+       of user.region, set en_US if none is defined,
+       java.protocol.handler.pkgs
+       removed.
+
+2006-01-14 20:02  twisti
+
+       * builtin_trace_args: Added callcount to verbose call output.
+
+2006-01-14 17:19  edwin
+
+       * src/native/vm/Method.c (invokeNative): check class access rights
+
+2006-01-13 19:37  twisti
+
+       * codegen_setup: #ifdef datareferences.
+
+2006-01-13 18:51  twisti
+
+       * This class does not differ from the GNU classpath upstream version.
+
+2006-01-13 18:49  twisti
+
+       * defineClassWithTransformers: Added, updated to generics version.
+
+2006-01-13 15:29  twisti
+
+       * codegendata: #ifdef datareferences member.
+       * codegen_finish: Moved data segment reference resolving into
+       dseg_resolve_datareferences.
+
+2006-01-13 15:28  twisti
+
+       * dseg_resolve_datareferences: Added.
+
+2006-01-13 15:27  twisti
+
+       * Small reformatting.
+
+2006-01-13 10:47  twisti
+
+       * src/vm/jit/{i386,x86_64}/{dis-asm.h,i386-dis.c}: Removed.
+       * src/vm/jit/powerpc/{ppc.h,ppc-dis.c,ppc-opc.c}: Likewise.
+       * m4/{ac_prog_javac.m4,ac_prog_javac_works.m4}: Added.
+
+2006-01-13 10:42  twisti
+
+       * ICMD_MULTIANEWARRAY: Usage of iptr->val.a and iptr->target changed.
+
+2006-01-13 10:11  twisti
+
+       * codegen.h: Added when ENABLE_JIT defined.
+       * codegen_addpatchref: Set lastmcodeptr when ENABLE_JIT is defined
+       and the
+       architecture requires it.
+
+2006-01-13 10:09  twisti
+
+       * ICMD_MULTIANEWARRAY: Usage of iptr->val.a and iptr->target changed.
+
+2006-01-12 23:54  twisti
+
+       * ICMD_MULTIANEWARRAY: Usage of iptr->val.a and iptr->target changed.
+
+2006-01-12 23:33  twisti
+
+       * arch.h: Added.
+       * GC_test_and_set: Removed 64-bit version since the 32-bit seems to be
+       sufficient and works.
+
+2006-01-12 23:31  twisti
+
+       * show_icmd: Use CLASS_IS_OR_ALMOST_INITIALIZED.
+       * initialize_class: Use CLASS_IS_OR_ALMOST_INITIALIZED.
+
+2006-01-12 23:30  twisti
+
+       * CLASS_IS_OR_ALMOST_INITIALIZED: Added.
+
+2006-01-12 23:27  twisti
+
+       * GETSTATIC_FLOAT, PUTSTATIC_FLOAT, GETFIELD_FLOAT, PUTFIELD_FLOAT:
+       Added.
+       * PATCHER_GETSTATIC_FLOAT, PATCHER_PUTSTATIC_FLOAT,
+       PATCHER_GETFIELD_FLOAT,
+       PATCHER_PUTFIELD_FLOAT: Likewise.
+       * TRACENATIVECALL: Removed codegen_findmethod, use methodinfo* from
+       threaded code stream.
+       * TRACECALL, TRACERETURN, TRACELRETURN: Likewise.
+
+2006-01-12 23:23  twisti
+
+       * Some 64-bit big-endian bugfixes.
+       * Use CLASS_IS_OR_ALMOST_INITIALIZED macro.
+
+2006-01-12 23:21  twisti
+
+       * 64-bit big-endian bugfix: replace s4 with ptrint.
+
+2006-01-12 23:10  twisti
+
+       * Imported for the interpreter.
+
+2006-01-12 23:09  twisti
+
+       * Added powerpc64 target.
+
+2006-01-12 23:08  twisti
+
+       * intrp_disassinstr, intrp_disassemble: Added.
+
+2006-01-12 23:07  twisti
+
+       * vm/options.h: Added.
+
+2006-01-12 23:05  twisti
+
+       * config.h, vm/types.h: Added.
+
+2006-01-12 23:03  twisti
+
+       * Use ASM_CALLJAVAFUNCTION* macros.
+
+2006-01-12 22:42  twisti
+
+       * thread_addstaticcritical: Quick hack: #ifdef ENABLE_JIT
+       asm_criticalsections.
+       * sigsuspend_handler: Quick hack: #ifdef ENABLE_JIT
+       thread_restartcriticalsection.
+
+2006-01-12 22:41  twisti
+
+       * vm/options.h: Added.
+       * descriptor_pool_parse_method_descriptor: #ifdef ENABLE_JIT
+       md_param_alloc
+       call.
+       * descriptor_params_from_paramtypes: Likewise.
+
+2006-01-12 22:40  twisti
+
+       * Fixed a lot of compiler warnings (functionptr -> u1*).
+
+2006-01-12 22:39  twisti
+
+       * regs: Removed.
+       * disassinstr, disassemble: Prefixed with intrp_.
+
+2006-01-12 22:38  twisti
+
+       * ICMD_MULTIANEWARRAY: Usage of iptr->val.a and iptr->target changed.
+
+2006-01-12 22:37  twisti
+
+       * builtin_gen_table: #if function according to arch.h.
+       * codegen: Prefixed with intrp_, usage of iptr->val.a and iptr->target
+       changed.
+       * codegen_createlinenumbertable: Renamed to
+       dseg_createlinenumbertable.
+       * createcompilerstub: Prefixed with intrp_.
+       * createnativestub: Likewise.
+
+2006-01-12 22:35  twisti
+
+       * verify_multianewarray: Usage iptr->val.a and iptr->target changed.
+       * JAVA_MULTIANEWARRAY: Pass c in iptr->val.a and cr in iptr->target.
+
+2006-01-12 22:34  twisti
+
+       * codegen_createnativestub: #ifdef ENABLE_JIT md_param_alloc call.
+       * codegen_disassemble_nativestub: Use DISASSEMBLE macro.
+
+2006-01-12 22:32  twisti
+
+       * analyse_stack: #ifdef ENBALE_JIT md_return_alloc call.
+       * icmd_print_stack: Print regs correctly for jit.
+       * show_icmd_method: Likewise.
+
+2006-01-12 21:55  twisti
+
+       * builtintable_internal: Removed ICMD_CHECKCAST.
+
+2006-01-12 21:39  twisti
+
+       * Prefixed functions with intrp_.
+       * md_init, md_stacktrace_get_returnaddress: Prefixed with intrp_.
+       * thread_restartcriticalsection, md_param_alloc, md_return_alloc:
+       Removed.
+
+2006-01-12 21:38  twisti
+
+       * Prefix functions with intrp_.
+
+2006-01-12 21:37  twisti
+
+       * Use ptrint instead of s8 in some places.
+
+2006-01-12 21:36  twisti
+
+       * Use DISASSINSTR macro.
+
+2006-01-12 21:36  michi
+
+       * Comment updated (for asm_cacheflush)
+
+2006-01-12 21:35  twisti
+
+       * intrp_createcompilerstub, intrp_createnativestub, intrp_codegen:
+       Added.
+       * codegen.h: Include only for some archs.
+       * md-abi.h: Include only for arm.
+       * codegen_init: Changed #ifdef to ENABLE_JIT.
+       * codegen_createnativestub: Call reg_setup only for jit, #ifdef
+       createnativestub to support interpreter.
+
+2006-01-12 21:30  twisti
+
+       * intrp_md_stacktrace_get_returnaddress: Added.
+       * cacao_stacktrace_fillInStackTrace: #ifdef
+       md_stacktrace_get_returnaddress
+       to support interpreter.
+
+2006-01-12 21:29  twisti
+
+       * Seperate ENABLE_JIT and ENABLE_INTRP.
+
+2006-01-12 21:17  twisti
+
+       * config.h: Added.
+       * intrp_patcher_get_putstatic, intrp_patcher_get_putfield,
+       intrp_patcher_aconst, intrp_patcher_builtin_multianewarray,
+       intrp_patcher_builtin_arraycheckcast,
+       intrp_patcher_invokestatic_special,
+       intrp_patcher_invokevirtual, intrp_patcher_invokeinterface,
+       intrp_patcher_checkcast_instanceof, intrp_patcher_resolve_native:
+       Likewise.
+
+2006-01-12 21:16  twisti
+
+       * jit_compile_intern: #ifdef codegen call to support interpreter, use
+       DISASSEMBLE macro.
+
+2006-01-12 21:15  twisti
+
+       * DISASSINSTR, DISASSEMBLE: Added.
+
+2006-01-12 21:14  twisti
+
+       * Use ASM_CALLJAVAFUNCTION macro.
+
+2006-01-12 21:13  twisti
+
+       * Use ASM_CALLJAVAFUNCTION_INT macro.
+
+2006-01-12 21:11  twisti
+
+       * intrp_asm_calljavafunction, intrp_createcompilerstub,
+       intrp_asm_getclassvalues_atomic: Added.
+
+2006-01-12 21:08  twisti
+
+       * Use ASM_CALLJAVAFUNCTION macros.
+       * main: #ifdef md_init call to support interpreter.
+       * link_class_intern: #ifdef createcompilerstub call to support
+       interpreter.
+
+2006-01-12 21:07  twisti
+
+       * Use ASM_CALLJAVAFUNCTION macros.
+
+2006-01-12 21:06  twisti
+
+       * Use ASM_CALLJAVAFUNCTION_ADR macro.
+       * Use ASM_CALLJAVAFUNCTION macro.
+
+2006-01-12 21:04  twisti
+
+       * intrp_md_init: Added.
+
+2006-01-12 20:57  twisti
+
+       * Check explicitly for isnan.
+
+2006-01-12 18:25  twisti
+
+       * print_dynamic_super_statistics: Added from intrp.
+
+2006-01-12 18:09  michi
+
+       * Included md-abi.h (needed for REG_SPLIT on Arm)
+
+2006-01-12 17:52  twisti
+
+       * We have to use a machine dependent arch.h.
+
+2006-01-11 12:16  twisti
+
+       * vm/jit/codegen.inc.h: Removed.
+       * Fixed compiler warnings.
+
+2006-01-11 10:35  twisti
+
+       * ICMD_F2I, ICMD_D2I, ICMD_F2L, ICMD_D2L: #if 0.
+
+2006-01-11 10:01  twisti
+
+       * SUPPORT_FMOD: Removed.
+       * SUPPORT_IFCVT: Replaced with SUPPORT_I2F, SUPPORT_I2D or
+       SUPPORT_L2F,
+       SUPPORT_L2D.
+       * SUPPORT_LONG_ICVT: Replaced with SUPPORT_F2L or SUPPORT_D2L.
+       * SUPPORT_LONG_FCVT: Replaced with SUPPORT_L2F or SUPPORT_L2D.
+
+2006-01-10 22:44  twisti
+
+       * SUPPORT_FMOD: Removed.
+       * SUPPORT_IFCVT: Replaced with SUPPORT_I2F, SUPPORT_I2D or
+       SUPPORT_L2F,
+       SUPPORT_L2D.
+       * SUPPORT_LONG_ICVT: Replaced with SUPPORT_F2L or SUPPORT_D2L.
+       * SUPPORT_LONG_FCVT: Replaced with SUPPORT_L2F or SUPPORT_L2D.
+
+2006-01-10 22:38  twisti
+
+       * SUPPORT_FMOD: Removed.
+       * SUPPORT_IFCVT: Replaced with SUPPORT_I2F, SUPPORT_I2D or
+       SUPPORT_L2F,
+       SUPPORT_L2D.
+       * SUPPORT_LONG_ICVT: Replaced with SUPPORT_F2L or SUPPORT_D2L.
+       * SUPPORT_LONG_FCVT: Replaced with SUPPORT_L2F or SUPPORT_L2D.
+
+2006-01-10 22:22  twisti
+
+       * EXTRA_DIST: Added ChangeLog-2005.
+
+2006-01-10 22:18  twisti
+
+       * SUPPORT_FMOD: Removed.
+       * SUPPORT_IFCVT: Replaced with SUPPORT_I2F, SUPPORT_I2D or
+       SUPPORT_L2F,
+       SUPPORT_L2D.
+       * SUPPORT_LONG_ICVT: Replaced with SUPPORT_F2L or SUPPORT_D2L.
+       * SUPPORT_LONG_FCVT: Replaced with SUPPORT_L2F or SUPPORT_L2D.
+
+2006-01-10 22:11  twisti
+
+       * asm_getclassvalues_atomic: Replaced with ASM_GETCLASSVALUES_ATOMIC.
+       * SUPPORT_IFCVT: Replaced with SUPPORT_I2F or SUPPORT_I2D.
+       * SUPPORT_FICVT: Replaced with SUPPORT_F2I.
+       * SUPPORT_LONG_FCVT: Replaced with SUPPORT_L2F.
+       * SUPPORT_LONG_ICVT: Replaced with SUPPORT_F2L or SUPPORT_D2L.
+
+2006-01-10 22:09  twisti
+
+       * ASM_CALLJAVAFUNCTION, ASM_CALLJAVAFUNCTION_ADR,
+       ASM_CALLJAVAFUNCTION_INT,
+       ASM_CALLJAVAFUNCTION2, ASM_CALLJAVAFUNCTION2_ADR,
+       ASM_CALLJAVAFUNCTION2_INT, ASM_CALLJAVAFUNCTION2_LONG,
+       ASM_CALLJAVAFUNCTION2_FLOAT, ASM_CALLJAVAFUNCTION2_DOUBLE: Macros
+       added,
+       these macros hide the selection between jit and intrp functions.
+       * ASM_GETCLASSVALUES_ATOMIC: Likewise.
+       * intrp_asm_calljavafunction, intrp_asm_calljavafunction_int: Added.
+       * intrp_asm_calljavafunction2, intrp_asm_calljavafunction2int,
+       intrp_asm_calljavafunction2long, intrp_asm_calljavafunction2float,
+       intrp_asm_calljavafunction2double: Likewise.
+       * intrp_asm_getclassvalues_atomic: Likewise.
+
+2006-01-10 21:58  twisti
+
+       * SUPPORT_IFCVT: Replaced with SUPPORT_I2F or SUPPORT_I2D.
+       * SUPPORT_LONG_FCVT: Replaced with SUPPORT_L2F or SUPPORT_L2D.
+       * SUPPORT_LONG_ICVT: Replaced with SUPPORT_F2I, SUPPORT_F2L or
+       SUPPORT_D2I,
+       SUPPORT_D2L.
+
+2006-01-10 21:11  twisti
+
+       * exceptions_throw_negativearraysizeexception: Use
+       * builtin_throw_exception: #ifndef NDEBUG.
+       * builtin_trace_exception: Likewise.
+       * builtin_trace_args: Likewise.
+       * builtin_displaymethodstop: Likewise.
+       * builtin_*: #if the function regarding the defines in arch.h.
+
+2006-01-10 20:57  twisti
+
+       * exceptions_throw_classformaterror,
+       exceptions_throw_arrayindexoutofboundsexception,
+       exceptions_throw_illegalargumentexception,
+       exceptions_throw_negativearraysizeexception,
+       exceptions_throw_nullpointerexception: Added.
+       * exceptions_print_exception: #ifndef NDEBUG.
+
+2006-01-10 20:56  twisti
+
+       * exceptions_throw_classformaterror: Use this function.
+
+2006-01-10 20:55  twisti
+
+       * exceptions_throw_nullpointerexception: Use this function.
+
+2006-01-10 20:50  twisti
+
+       * exceptions_throw_nullpointerexception,
+       exceptions_throw_arrayindexoutofboundsexception: Use these
+       functions.
+
+2006-01-10 20:48  twisti
+
+       * exceptions_throw_nullpointerexception,
+       exceptions_throw_illegalargumentexception: Use these functions.
+
+2006-01-10 20:46  twisti
+
+       * exceptions_throw_illegalargumentexception,
+       exceptions_throw_negativearraysizeexception,
+       exceptions_throw_arrayindexoutofboundsexception,
+       exceptions_throw_nullpointerexception: Use these functions.
+
+2006-01-10 20:44  twisti
+
+       * exceptions_throw_classformaterror,
+       exceptions_throw_negativearraysizeexception,
+       exceptions_throw_nullpointerexception: Added.
+
+2006-01-10 15:52  twisti
+
+       * Not required anymore.
+
+2006-01-10 15:50  twisti
+
+       * use_class_as_object, create_property, copy_vftbl, create_methodsig:
+       Removed.
+       * classMeth, nativeCall, methodCall, nativeMethod, nativeCompCall,
+       methodCompCall, nativeCompMethod: Likewise.
+       * natcall2utf, printNativeCall, markNativeMethodsRT: Likewise.
+
+2006-01-10 15:48  twisti
+
+       * nativeCalls, nativeCompCalls: Removed.
+       * copy_vftbl, create_methodsig: Likewise.
+       * printNativeCall, printCompNativeCall, findNativeMethodCalls,
+       findNativeClassCalls, utfNativeCall, natcall2utf: Likewise.
+
+2006-01-10 10:59  twisti
+
+       * codegen_ncode_increase: Typo.
+
+2006-01-09 20:52  twisti
+
+       * disass_buf: Fixed typo.
+
+2006-01-09 20:28  twisti
+
+       * disass_printf: Ooops, #ifdef was wrong.
+
+2006-01-09 20:19  twisti
+
+       * Removed, we now link against libbfd and libopcodes.
+       * stdarg.h, string.h, assert.h, vm/jit/powerpc/dis-asm.h: Removed.
+       * dis-asm.h, stdio.h, vm/jit/disass.h: Added.
+       * myprintf, buffer_read_memory, perror_memory, generic_print_address,
+       generic_symbol_at_address, bfd_getb32, bfd_getl32, sprintf_vma:
+       Removed.
+       * Use disass-common.c stuff.
+
+2006-01-09 20:15  twisti
+
+       * libarch_la_SOURCES: Removed dis-asm.h, ppc-dis.c, ppc-opc.c and
+       ppc.h.
+
+2006-01-09 19:21  twisti
+
+       * assert.h, stdarg.h, vm/jit/x86_64/dis-asm.h: Removed.
+       * stdio.h, vm/jit/disass.h: Added.
+       * myprintf, buffer_read_memory, generic_symbol_at_address,
+       generic_print_address, perror_memory: Likewise.
+       * Use disass-common.c stuff.
+
+2006-01-09 16:37  twisti
+
+       * string.h, vm/jit/i386/dis-asm.h: Removed.
+       * mylinebuf, mylen: Likewise.
+       * myprintf, buffer_read_memory, generic_symbol_at_address,
+       generic_print_address, perror_memory: Likewise.
+       * Use disass-common.c stuff.
+
+2006-01-09 16:36  twisti
+
+       * WITH_BINUTILS_DISASSEMBLER: Added, define DISASS_OBJ.
+       * noinst_LTLIBRARIES: Added DISASS_OBJ.
+
+2006-01-09 16:30  twisti
+
+       * This file contains the common functions required when we use the
+       binutils
+       disassembler.
+
+2006-01-09 16:29  twisti
+
+       * WITH_BINUTILS_DISASSEMBLER: Added.
+       * disass_printf: Added.
+
+2006-01-09 16:26  twisti
+
+       * WITH_BINUTILS_DISASSEMBLER: Added.
+
+2006-01-09 12:12  twisti
+
+       * Removed, we now link against libbfd and libopcodes.
+
+2006-01-09 12:10  twisti
+
+       * libarch_la_SOURCES: Removed dis-asm.h and i386-dis.c.
+
+2006-01-09 10:37  twisti
+
+       * AC_CHECK_HEADER checks for ansidecl.h, bfd.h and symcat.h removed.
+       * AC_CHECK_HEADER check for dis-asm.h added.
+       * AC_CHECK_LIB checks for libbfd and libopcodes added.
+
+2006-01-09 10:35  twisti
+
+       * Removed, we now link against libbfd and libopcodes.
+       * libarch_la_SOURCES: Removed dis-asm.h and i386-dis.c, we now link
+       against
+       libbfd and libopcodes.
+
+2006-01-08 23:37  twisti
+
+       * Updated from GNU Classpath:
+       
+       2005-12-17 Guilhem Lavaux <guilhem@kaffe.org>
+       
+       * native/fdlibm/fdlibm.h
+       (isnan): Define explicitly isnan if it is not a macro.
+
+2006-01-08 23:00  twisti
+
+       * loader_load_all_classes: Print exception when loading failed.
+
+2006-01-08 22:38  twisti
+
+       * SUCK_xx_xx: We can only optimize little endian loads on i386 and
+       x86_64
+       machines. All others have problems with alignment.
+
+2006-01-08 22:12  twisti
+
+       * Ignore *.class files.
+
+2006-01-08 22:11  twisti
+
+       * java-assert.h: Unused, removed.
+
+2006-01-08 22:01  twisti
+
+       * Added VM interface change to be consistent:
+       
+       2005-11-13 Archie Cobbs <archie@dellroad.org>
+       
+       * vm/reference/gnu/classpath/VMStackWalker.java (getClassLoader()):
+       added to fix an infinite loop bug.
+       * NEWS: note VM interface change.
+
+2006-01-08 21:32  twisti
+
+       * suck_add: Check for lce != NULL before adding it to the list, since
+       zip_open can return NULL.
+
+2006-01-08 19:14  twisti
+
+       * JAVAC: Removed.
+
+2006-01-08 19:13  twisti
+
+       * SOURCE_FILES: Added.
+       * JAVAC: Removed.
+       * checkall: Renamed to check.
+
+2006-01-08 19:12  twisti
+
+       * Use $(mkdir_p), $(JAVAC) and $(ZIP) variables.
+
+2006-01-08 19:11  twisti
+
+       * AM_PROG_MKDIR_P: Added.
+       * Added headers checks for ansidecl.h, bfd.h, and symcat.h if we have
+       debugging enabled.
+       * AC_PROG_JAVAC: Added.
+       * AC_PATH_PROG: Added check for zip.
+
+2006-01-08 19:09  twisti
+
+       * Macros to check for a Java compiler, taken from
+       http://ac-archive.sourceforge.net/.
+
+2006-01-04 09:35  twisti
+
+       * Removed src/toolbox/avl.[ch] copyright.
+
+2006-01-04 09:34  twisti
+
+       * avl_dump: Only print node->data.
+
+2006-01-03 23:46  twisti
+
+       * Use new avl tree code.
+       * Rewritten.
+
+2006-01-03 23:44  twisti
+
+       * exit_handler: Removed print_dynamic_super_statistics.
+       * print_stats: Added print_dynamic_super_statistics.
+
+2006-01-03 23:43  twisti
+
+       * threads.h: Added.
+       * builtin.h: Likewise.
+
+2006-01-03 23:08  twisti
+
+       * CallNonvirtualBooleanMethodA: Added missing ;.
+
+2006-01-03 23:05  twisti
+
+       * ENABLE_STATISTICS: Fixed typo.
+
+2006-01-02 21:01  christian
+
+       typeing error
+
+2006-01-02 17:13  twisti
+
+       * nregdescint, nregdescfloat: Moved to md-abi.c.
+
+2006-01-02 17:12  twisti
+
+       * nregdescint, nregdescfloat: Added.
+
+2006-01-02 17:11  twisti
+
+       * noinst_HEADERS: Removed md-abi.inc.
+
+2006-01-02 16:40  twisti
+
+       * signal_handler_sigsegv: Replaced functionptr with u1*.
+
+2006-01-02 16:18  twisti
+
+       * nregdescint, nregdescfloat: Moved to md-abi.c.
+
+2006-01-02 16:17  twisti
+
+       * nregdescint, nregdescfloat: Added.
+       * noinst_HEADERS: Removed md-abi.inc.
+
+2006-01-02 16:12  twisti
+
+       * INCLUDES: Added OS_DIR, some archs have their md-abi.* files in the
+       os
+       directory.
+
+2006-01-02 16:08  christian
+
+       *** empty log message ***
+
+2006-01-02 16:04  twisti
+
+       * nregdescint, nregdescfloat: Moved to md-abi.c.
+
+2006-01-02 16:03  twisti
+
+       * nregdescint, nregdescfloat: Added.
+       * noinst_HEADERS: Removed md-abi.inc.
+
+2006-01-02 14:32  christian
+
+       Removed old debug message
+
+2006-01-02 14:26  twisti
+
+       * md-abi.inc: Removed.
+
+2006-01-02 14:25  twisti
+
+       * nregdescint, nregdescfloat: Moved to md-abi.c.
+
+2006-01-02 14:24  twisti
+
+       * nregdescint, nregdescfloat: Added.
+       * noinst_HEADERS: Removed md-abi.inc.
+
+2006-01-02 14:11  christian
+
+       Corrected \"\" to \<\> for system header include
+
+2006-01-02 14:07  twisti
+
+       * nregdescint, nregdescfloat: Moved to md-abi.c.
+       * noinst_HEADERS: Removed md-abi.inc.
+
+2006-01-02 14:06  twisti
+
+       * nregdescint, nregdescfloat: Added.
+       * disassinstr: Some code improvement.
+
+2006-01-02 14:05  twisti
+
+       * md-abi.inc: Removed.
+
+2006-01-02 13:05  christian
+
+       Changed register allocator .inc to .c files and moved them to
+       src/vm/jit/allocator
+
+2006-01-02 12:59  christian
+
+       Changed register allocator .inc to .c files and moved them to
+       src/vm/jit/allocator
+
+2006-01-02 12:22  twisti
+
+       * Fixed result message for debug.
+
+2006-01-02 12:10  twisti
+
+       * Typo.
+
+2006-01-02 12:04  twisti
+
+       * Added ltdl.h check.
+
+2006-01-02 11:34  twisti
+
+       * Fixed ltdl.h include path.
+
+2006-01-02 01:34  twisti
+
+       * Fixed ltdl.h include path.
+
+2006-01-02 01:15  twisti
+
+       * I don't think we really need them, but they are still in Attic.
+
+2006-01-02 01:10  twisti
+
+       * Generated changelog for 2005.
+
+2006-01-02 01:05  twisti
+
+       * unzip.[ch], libffi, libltdl: Removed.
+
+2006-01-01 21:53  twisti
+
+       * Removed libltdl.
+
+2006-01-01 21:38  twisti
+
+       * We now use the system libltdl.
+
+2006-01-01 21:32  twisti
+
+       * Changed text of kaffe's stuff, dalibor pointed this out.
+
+2006-01-01 21:29  twisti
+
+       * AC_LIBLTDL_CONVENIENCE, AC_SUBST(LIBLTDL): Removed.
+       * AC_COMPILE_CHECK_SIZEOF: Replaced with AC_CHECK_SIZEOF.
+
+2006-01-01 21:22  twisti
+
+       * m4 macros have a different copyright header.
+
+2006-01-01 21:13  twisti
+
+       * Lists all third party software we use. This list contains all
+       stuff we
+       used in 0.93. Stuff that has been ripped will be deleted after that
+       commit, this is for the records.
+
+2006-01-01 20:55  twisti
+
+       * Not required.
+
+2006-01-01 19:39  twisti
+
+       * Removed libltdlc.la.
+       * DIST_SUBDIRS: Removed libltdl.
+       * SUBDIRS: Likewise.
+
+2006-01-01 19:38  twisti
+
+       * Added libltdl check.
+       * AC_CONFIG_SUBDIRS: Removed src/libltdl.
+
+2006-01-01 18:39  twisti
+
+       * libarch_la_SOURCES: Removed symcat.h.
+
+2006-01-01 18:34  twisti
+
+       * Use system one.
+
+2006-01-01 18:33  twisti
+
+       * libarch_la_SOURCES: Removed symcat.h.
+
+2006-01-01 18:30  twisti
+
+       * generic_symbol_at_address: Print only 8 bytes.
+
+2006-01-01 18:21  twisti
+
+       * Use system ones.
+       * generic_symbol_at_address: Added, they were implemented in dis-buf.c
+       which was removed.
+       * generic_print_address: Likewise.
+       * perror_memory: Likewise.
+
+2006-01-01 18:20  twisti
+
+       * libarch_la_SOURCES: Removed ansidecl.h, bfd.h and dis-buf.c.
+       * config.h, vm/jit/codegen-common.h: Added.
+
+2006-01-01 16:40  twisti
+
+       * Changed include to use system headers.
+
+2006-01-01 16:39  twisti
+
+       * Use system ones.
+       * generic_symbol_at_address: Added, they were implemented in dis-buf.c
+       which was removed.
+       * generic_print_address: Likewise.
+       * perror_memory: Likewise.
+
+2006-01-01 16:37  twisti
+
+       * libarch_la_SOURCES: Removed ansidecl.h, bfd.h and dis-buf.c.
+
+2006-01-01 16:35  twisti
+
+       * DEC OSF cc only defines __alpha.
+
+2006-01-01 16:34  twisti
+
+       * class_resolvefield: Renamed except to throwexception since some
+       compilers
+       have a builtin except macro (like DEC OSF cc).
+       * class_resolveclassmethod: Likewise.
+       * class_resolveinterfacemethod: Likewise.
+
+2006-01-01 16:31  twisti
+
+       * zip_open: Handle compiler error with DEC OSF's cc.