* ChangeLog: Updated for release 0.97.
authortwisti <none@none>
Tue, 31 Oct 2006 00:07:07 +0000 (00:07 +0000)
committertwisti <none@none>
Tue, 31 Oct 2006 00:07:07 +0000 (00:07 +0000)
ChangeLog

index 3fa8f4334b3150d4f539352180ba1cdc4e5df5e7..897a5684fd269036bea86ab4df77e547af69c0fe 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
+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.
 2006-01-01 16:31  twisti
 
        * zip_open: Handle compiler error with DEC OSF's cc.
-
-2005-12-30 20:45  twisti
-
-       * vm/jit/codegen.inc: Removed.
-       * vm/exceptions.h: Added.
-       * vm/jit/codegen-common.h: Likewise.
-       * vm/jit/dseg.h: Likewise.
-       * codegen: Renamed codegen_createlinenumbertable to
-       dseg_createlinenumbertable.
-