+2006-05-29 18:52 twisti
+
+ * configure.ac (AC_INIT): Changed to version 0.96.
+ (CFLAGS): Changed to -O2.
+ * NEWS: Changed date.
+
+2006-05-29 15:51 twisti
+
+ * src/vm/vm.c (usage): Removed new-line.
+
+2006-05-29 15:37 twisti
+
+ * src/vm/vm.c (OPT_GLIBJ): Added.
+ (Xusage): Added help for -Xglibj.
+ (version): Changed signature for conditional exit.
+ (main): Added OPT_GLIBJ. Print version after all commandline arguments
+ have been handled.
+
+2006-05-29 15:21 edwin
+
+ * src/vm/linker.c (link_class_intern): On i386 align all fields to
+ just 4 bytes as gcc does. This makes the offsets of Java fields match
+ the offset of native headers. This fixes a bug (java.lang.Double.value
+ had been at offset 16, but java_lang_Double.value is offset 12).
+
+2006-05-29 15:17 twisti
+
+ * src/threads/native/critical.h (signal.h): Added, build fix for some
+ older Darwin systems.
+
+2006-05-29 14:32 twisti
+
+ * NEWS: Added a lot of stuff.
+
+2006-05-29 14:31 twisti
+
+ * src/cacao/Makefile.am: Renamed libcacaovm.so to libjvm.so to be
+ binary compatible with Sun.
+
+2006-05-29 09:41 motse
+
+ src/native/jni.c: removed jvmti.h included cacaodbg.h for GetEnv -
+ jvmti
+ src/native/vm/VMVirtualMachine.c: formatting changes/removed debug
+ statements
+ src/native/vm/VMMethod.c:
+ (getName/getSignature/getModifiers/getLineTable): (Samuel Vinson) new
+ implementation. (partially changed by motse)
+ src/native/jvmti/cacaodbg.h: removed unused function declarations
+ src/native/jvmti/jvmti.c (getcacaostacktrace): new implementation -
+ does not yet handle traces of not current threads correctly.
+ (GetMethodName): fix: return JVMTI_ERROR_NULL_POINTER only on method
+ == NULL
+ (GetFrameCount/GetStackTrace): fixed check for valid thread argument.
+
+2006-05-26 16:24 edwin
+
+ * src/toolbox/logging.h (stdarg.h): Include it here, instead of in
+ logging.c.
+ * src/toolbox/logging.c: See above.
+
+2006-05-26 12:58 twisti
+
+ * src/vm/jit/powerpc/linux/md-os.c (thread_restartcriticalsection):
+ Removed assert.
+ * src/vm/jit/powerpc/darwin/md-os.c (thread_restartcriticalsection):
+ Compile fix. Removed assert.
+
+2006-05-26 12:46 edwin
+
+ * NEWS: Added unicode cleanup.
+
+2006-05-26 12:44 edwin
+
+ * NEWS: Added tasuki locks and other news.
+
+2006-05-26 12:31 motse
+
+ src/native/jvmti/jvmti.c (GetClassStatus): bugfix - only compare
+ class state
+
+2006-05-26 12:26 edwin
+
+ * src/vm/jit/stacktrace.c (stacktrace_remove_stackframeinfo):
+ Commented.
+
+2006-05-26 12:25 twisti
+
+ * src/vm/jit/powerpc/linux/md-os.c (thread_restartcriticalsection):
+ Implemented.
+ * src/vm/jit/powerpc/darwin/md-os.c: Likewise.
+
+2006-05-26 12:19 edwin
+
+ * src/vm/builtin.c (builtin_init): Documented.
+ (builtin_trace_args): Documented.
+ (builtin_displaymethodstop): Documented.
+
+ * src/vm/jit/alpha/md-abi.c (md_param_alloc): Documented.
+
+ * src/vm/jit/allocator/simplereg.c (allocate_scratch_registers):
+ Documented.
+
+ * src/vm/jit/codegen-common.c (methodtree_comparator): Documented.
+ (codegen_insertmethod): Documented.
+
+ * src/toolbox/util.c (getcwd): Documented.
+
+2006-05-26 12:09 edwin
+
+ * src/vm/loader.h: Comment update.
+
+ * src/vm/jit/verify/typecheck.c (verify_basic_block): Removed obsolete
+ inlining check.
+
+ * src/vm/jit/replace.c: Typo fixed.
+
+ * src/vm/jit/reg.c: Avoid XXX as wildcard in comments.
+ * src/vm/jit/jit.h: Likewise.
+
+2006-05-26 11:57 twisti
+
+ * src/vm/properties.c (properties_system_add): Changed
+ javastring_new_from_ascii to javastring_new_from_utf_string.
+
+ * src/native/jni.c (ThrowNew): Use a variable for clazz.
+ (JNI_CreateJavaVM): Release allocated memory if vm_create fails.
+
+ * src/threads/native/threads.c: Comments reformatted.
+
+2006-05-26 11:48 edwin
+
+ * src/vm/class.c (class_resolveclassmethod): Removed obsolete XXX
+ comments.
+ (class_resolveinterfacemethod): Likewise.
+ (class_resolvefield): Likewise.
+
+ * src/vm/classcache.h: Removed obsolete XXX comment.
+
+ * src/vm/jit/allocator/lsra.h: Changed TYPE_XXX to TYPE_* in comments.
+ * src/vm/jit/jit.c: Likewise.
+
+ * src/native/vm/VMObject.c (Java_java_lang_VMObject_clone):
+ Removed obsolete XXX comment.
+
+ * src/mm/memory.c (dump_release): Removed obsolete debugging code.
+
+2006-05-26 11:22 edwin
+
+ * src/native/jni.c (DefineClass): Use javastring_new_from_utf_string.
+ (ThrowNew): Likewise.
+
+2006-05-26 09:30 twisti
+
+ * src/mm/boehm.c (stackcall_malloc_atomic): Removed.
+ (stackcall_malloc_uncollectable): Likewise.
+ (heap_alloc_uncollectable): Use macros directly.
+ (heap_allocate): Likewise.
+
+ * src/vm/vm.c: Added -jvm options, which is available on darwin.
+
+ * src/vm/suck.c (scandir_filter): Changed signature for darwin.
+
+2006-05-25 21:59 motse
+
+ src/vm/vm.c(usage): added information for jvmti agent for jdwp
+ (vm_create): jdwp code move to jvmti agent for jdwp (VMjdwp.c)
+ src/cacao/cacao.c (main): jdwp code move to jvmti agent for jdwp.
+ execute jvmti_set_phase only if needed
+ src/native/jvmti/cacaodbg.c (setup_jdwp_thread): jdwp code move to
+ jvmti agent for jdwp
+ src/native/jvmti/VMjdwp.c: change this to a jvmti complaint agent by
+ using jni/jvmti function instead of cacao specific functions and
+ implement a Agent_OnLoad as main entry point. Include
+ setup_jdwp_thread function.
+ src/native/jvmti/Makefile.am: add libjdwp.so
+ src/native/jvmti/cacaodbg.h: remove no more needed global jdwp
+ related variables
+ src/native/jvmti/jvmti.c: (Resume/SuspendThread(List)): add temporary
+ implementation for trying jdwp
+ (jvmti_agentload): bugfix in getting/passing libname/arguments
+
+2006-05-25 12:28 twisti
+
+ * vm/jit/intrp/intrp.h (global_sp): Added space, yeah, whatever...
+ * vm/jit/intrp/dynamic-super.c (vm/builtin.h): Added.
+ (vm/jit/disass.h): Likewise.
+ (gen_inst): Fixed compiler warnings.
+ * vm/jit/intrp/java.vmg: Fixed compiler warnings with
+ stacktrace_create_stackframeinfo.
+ * threads/native/threads.h (threadobject): Changed type of _global_sp
+ to u1*.
+
+2006-05-25 12:22 twisti
+
+ * NEWS: Sorry.
+
+2006-05-25 12:21 twisti
+
+ * src/vm/vm.c (HEAP_MAXSIZE): Changed to 128MB.
+ (STACK_SIZE): Changed to 64kB.
+ (Xusage): Calculate default sizes.
+
+ * NEWS: New stuff added.
+
+2006-05-25 11:29 twisti
+
+ * src/vm/jit/x86_64/md-emit.h (emit_movl_reg_reg): Added.
+
+2006-05-25 11:24 edwin
+
+ * configure.ac: Disable inlining and lsra by default.
+
+2006-05-24 14:11 twisti
+
+ * src/threads/native/threads.c (threads_startup_thread): Allocate Java
+ stack on Java heap instead of hardware stack.
+
+2006-05-24 14:08 twisti
+
+ * configure.ac: Added INTRP_CFLAGS.
+ * src/vm/jit/intrp/Makefile.am (CFLAGS): Set to INTRP_CFLAGS.
+
+2006-05-24 11:00 motse
+
+ src/vm/vm.c (vm_exit): only set JVMTI_PHASE_DEAD if a jvmti agent or
+ a jvmti environment is loaded.
+ src/native/jvmti/cacaodbg.c (jvmti_cacaodbgserver_quit): bugfix: set
+ dbgcom = NULL only if all environments have been disposed.
+ src/native/jvmti/jvmti.c (GetLoadedClasses): remove debug statement
+
+2006-05-23 19:52 motse
+
+ src/vm/classcache.c: export CLASSCACHE_LOCK/UNLOCK and
+ lock_hashtable_classcache
+ src/vm/classcache.h: idem
+ src/native/jvmti/jvmti.c (GetLoadedClasses) implemented (sv/motse)
+ (GetClassSignature) fixed
+
+2006-05-23 15:31 motse
+
+ src/vm/vm.c (vm_create): rename jvmti function calls
+
+ src/cacao/cacao.c (main): rename jvmti function calls
+
+ src/native/jni.c (GetEnv): rename jvmti function calls. jvmti version
+ changed to JVMTI_VERSION_INTERFACE_JVMTI
+
+ src/native/vm/VMVirtualMachine.c (getAllLoadedClassesCount): (Samuel
+ Vinson) implemented.
+ (getAllLoadedClassesCount): jvmti Deallocate call added. (sv):
+ CallObjectMethod fix
+ (getAllClassMethods): (Samuel Vinson) implemented.
+ (getClassMethod): (Samuel Vinson) implemented.
+
+ src/native/jvmti/jvmti.h: added JVMTI_VERSION interface and mask
+
+ src/native/jvmti/cacaodbgserver.h: msg queue/shared mem related
+ things removed. gdb related defines added.
+
+ src/native/jvmti/dbg.h: remove ptrace related things
+
+ src/native/jvmti/cacaodbg.c change setsysbrkpt name to
+ jvmti_set_system_breakpoint, addbrkpt to jvmti_add_breakpoint,
+ allthreads to jvmti_get_all_threads
+ (jvmti_cacao_debug_init): new function where fork/exec of
+ cacaodbgserver takes place
+ (jvmti_set_system_breakpoint): added functionality for brkpt delete
+ and asm label for cacaodbgserver support
+ (jvmti_cacaodbgserver_quit): new function for killing cacaodbgserver
+ properly
+ (jvmti_cacao_generic_breakpointhandler): new function. This is the
+ entry point for every breakpointhandler and start for a new jvmti
+ event
+ (jvmti_cacao_debug_init): new function for starting up
+ cacaodbgserver process.
+
+ src/native/jvmti/VMjdwp.c (jvmti_VMjdwpInit): function renamed
+
+ src/native/jvmti/Makefile.am: delete dbg.c. (sv) add compile/install
+ support for cacaodbgserver.
+
+ src/native/jvmti/cacaodbg.h: breakpoint counter added to struct
+ _brkpt. change setsysbrkpt name to jvmti_set_system_breakpoint,
+ addbrkpt to jvmti_add_breakpoint, allthreads to
+ jvmti_get_all_threads, fireEvent to jvmti_fireEvent, agentload to
+ jvmti_agentload agentunload to jvmti_agentunload, getcurrentthread to
+ jvmti_get_current_thread, set_jvmti_phase to jvmti_set_phase,
+ new_jvmtienv to jvmti_new_environment, VMjdwpinit to
+ jvmti_VMjdwpInit. added breakpoint table constants. removed global
+ jdwp, jvmti, suspend, transport, agentarg variables
+
+ src/native/jvmti/jvmti.c all jvmti-environment function changed to
+ static functions. execcallback renamed to execute_callback. fireEvent
+ renamed to jvmti_fireEvent.
+ (execute_callback): add phase checks
+ (GetClassMethods): bugfix in copying jmethodIDs
+ (DisposeEnvironment): relocate work to jvmti_cacaodbgserver_quit
+ (jvmti_new_environment) : relocate forking new process to
+ jvmti_cacao_debug_init
+ (CHECK_ADD_CAPABILITY): bugfix in adding capabilities
+ (GetClassMethods): bugfix coping methodinfo pointers
+ (SetEventNotificationMode): setsysbrkpt calls added.
+ rename jvmti function names.
+
+ src/native/jvmti/cacaodbgserver.c changed to support gdb insted of
+ using ptrace directly.
+ (getchildprocptrace): removed
+ (waitloop): removed
+ (startgdb): new function. start a new gdb session.
+ (getgdboutput): new helper function for getting gdb output.
+ (dataevaluate): new helper function for getting value for a given
+ expression
+ (commonbreakpointhandler): new function which handles SIGTRAPs and
+ gdb breakpoint hits.
+ (controlloop) : new function handle communication with gdb
+ (main): removed old code. added calls to startgdb and controlloop
+
+ src/native/jvmti/dbg.c removed
+
+ src/threads/native/threads.h: removed
+ threads_set_current_threadobject. added jvmti_get_threads_breakpoints
+
+ src/threads/native/threads.c: (threads_startup_thread) add thread
+ start/end asm lables
+ (threads_set_current_threadobject): removed jvmti thread start
+ support.
+ (jvmti_get_threads_breakpoints) new function that gets addresses of
+ asm lables.
+
+ src/threads/native/lock.h: added definition of lock_global_pool_lock
+ and lock_global_pool
+
+2006-05-23 08:51 twisti
+
+ * src/vm/jit/x86_64/codegen.c: Changed the code generator to produce
+ RISC-like code. These are way too much changes to name them.
+ (createnativestub): Bugfix in argument saving.
+ * src/vm/jit/x86_64/codegen.h: Likewise.
+ * src/vm/jit/x86_64/emit.c: Likewise.
+ * src/vm/jit/x86_64/md-emit.h: Likewise.
+
+2006-05-23 08:42 twisti
+
+ * src/vm/options.c (opt_heapmaxsize, opt_heapstartsize): Added.
+ * src/vm/options.h: Likewise.
+
+ * src/vm/vm.c (version): Print heap and stack information.
+ (vm_create): Use global option variables.
+
+2006-05-23 08:25 twisti
+
+ * src/vm/jit/x86_64/emit.c (emit_movl_reg_reg): New function.
+
+ * src/vm/jit/x86_64/codegen.c (ICMD_L2I): Only move the low
+ 32-bit. Otherwise this may cause a bug with e.g. array accesses, as
+ the index registers are treated as 64-bit.
+
+ * src/vm/jit/x86_64/codegen.h (gen_bound_check): Bugfix: only read
+ 32-bit.
+ (M_IMOV): Added.
+ (M_ICMP_MEMBASE): Likewise.
+
+2006-05-22 16:14 twisti
+
+ * configure.ac: Added --with-classpath-includedir.
+
+2006-05-22 09:07 twisti
+
+ * NEWS: Some news.
+
+2006-05-22 09:06 twisti
+
+ * src/vm/vm.c (vm_abort): New method.
+ * src/vm/vm.h: Likewise.
+ * src/cacaoh/headers.c: Likewise.
+
+ * src/toolbox/logging.c (log_vprint): Made non-static.
+ * src/toolbox/logging.h (log_vprint): Added.
+
+ * src/threads/native/threads.c (threads_sem_init): Use vm_abort.
+ (threads_sem_wait): Likewise.
+ (threads_sem_post): Likewise.
+ (threads_current_time_is_earlier_than): Likewise.
+ (threads_init): Check for pthread_attr_init error.
+ (threads_start_thread): Check for errors of pthread calls. Set the
+ threads stack size.
+
+2006-05-18 14:33 edwin
+
+ * src/threads/native/lock.h, src/threads/native/lock.c: Tasuki lock
+ implementation (without lock deflation). This is a straight-forward
+ implementation that uses an extra word in java_objectheader for the
+ FLC (flat lock contention) bit.
+
+ * src/vm/global.h (java_objectheader): Added field `flcword`.
+
+ * src/threads/native/lock.h (Authors): Changed to myself, as there
+ is none of the old code remaining in this file.
+
+ * src/vm/jit/powerpc/codegen.c, src/vm/jit/alpha/codegen.c,
+ src/vm/jit/mips/codegen.c, src/vm/jit/i386/codegen.c,
+ src/vm/jit/x86_64/codegen.c (codegen, createnativestub): Add the
+ FLC word when creating the fake object header for patcher
+ synchronization.
+
+2006-05-18 14:06 twisti
+
+ * src/vm/properties.c (properties_get): Search the list backwards to
+ get the newest entry.
+
+2006-05-18 12:50 twisti
+
+ * src/vm/vm.c (version): Print default and runtime classpath
+ variables.
+ (vm_create): Add a default java.endorsed.dirs property.
+
+2006-05-17 22:06 twisti
+
+ * configure.ac: Don't export BOOTCLASSPATH, that makes problems.
+
+2006-05-17 12:10 twisti
+
+ * src/vm/jit/powerpc/codegen.c (createnativestub): Fixed bug and
+ changed argument saving and restoring.
+
+ * src/vm/jit/powerpc/asmpart.S (asm_vm_call_method): Partially
+ implemented Darwin bits. Still some bugs with testarguments.
+
+2006-05-16 13:08 twisti
+
+ * src/vm/jit/powerpc/codegen.c (codegen): Bugfix: use REG_ITMP3 in
+ ICMD_L{DIV,REM} for function address. This fixes
+ gnu.testlet.java.math.BigInteger.divide.
+
+2006-05-16 01:49 edwin
+
+ * src/threads/native/lock.c: Fixed comment formatting.
+
+2006-05-15 23:37 edwin
+
+ * src/vm/jit/i386/machine-instr.h (compare_and_swap): Fixed comment.
+
+2006-05-15 23:31 twisti
+
+ * configure.ac: Export BOOTCLASSPATH for javac check.
+ * src/cacao/Makefile.am (cacao_SOURCES)Removed cacao.h.
+ * src/vm/jit/inline/Makefile.am (libinline_la_SOURCES): Added
+ inline_debug.inc.
+ * src/vm/jit/powerpc/Makefile.am (DIST_SUBDIRS): Added netbsd.
+
+2006-05-15 23:22 edwin
+
+ * src/vm/jit/inline/inline_debug.c: Renamed to
+ src/vm/jit/inline/inline_debug.inc.
+
+ * src/vm/jit/inline/inline.c: #include changed to
+ src/vm/jit/inline/inline_debug.inc.
+
+ * src/vm/resolve.c: Typo fixed.
+
+2006-05-15 21:48 edwin
+
+ * src/threads/native/lock.c (lock_record_remove_waiter): Made static.
+ (lock_monitor_wait): Likewise.
+
+2006-05-15 21:32 edwin
+
+ * src/threads/native/lock.h, src/threads/native/lock.c
+ (lock_does_thread_hold_lock): Renamed to
+ lock_is_held_by_current_thread
+ and removed thread argument, as reliable checking is only possible for
+ the current thread, anyway.
+
+ * src/native/vm/VMThread.c (lock_does_thread_hold_lock): Changed to
+ lock_is_held_by_current_thread.
+
+ * src/native/jvmti/jvmti.c (lock_does_thread_hold_lock): Changed to
+ lock_is_held_by_current_thread.
+
+2006-05-15 18:24 edwin
+
+ * configure.ac (src/threads/green/Makefile): Removed from
+ AC_CONFIG_FILES.
+
+2006-05-15 15:06 edwin
+
+ * src/threads/native/lock.h (lock_record_pool_header_t): Documented.
+ (lock_record_pool_t): Documented.
+
+ * src/threads/native/lock.c: Minor whitespace cleanup.
+
+2006-05-15 14:40 twisti
+
+ * THIRDPARTY: Removed green threads stuff.
+
+2006-05-15 14:39 twisti
+
+ * src/vm/jit/alpha/asmpart.S (asm_perform_threadswitch)
+ (asm_initialize_thread_stack, asm_switchstackandcall): Removed (2nd
+ part of green threads removal).
+ * src/vm/jit/mips/asmpart.S: Likewise.
+ * src/vm/jit/i386/asmpart.S: Likewise.
+ * src/vm/jit/x86_64/asmpart.S: Likewise.
+
+2006-05-15 14:24 twisti
+
+ * src/vm/hashtable.h,
+ src/vm/class.c,,
+ src/vm/suck.c,
+ src/vm/loader.c,
+ src/vm/builtin.c,
+ src/vm/string.c,
+ src/vm/suck.h,
+ src/vm/builtin.h,
+ src/vm/loader.h,
+ src/vm/finalizer.c,
+ src/vm/classcache.c,
+ src/vm/initialize.c,
+ src/vm/jit/powerpc/linux/md-os.c,
+ src/vm/jit/powerpc/netbsd/md-os.c,
+ src/vm/jit/powerpc/darwin/md-os.c,
+ src/vm/jit/powerpc/darwin/md-asm.h,
+ src/vm/jit/powerpc/codegen.c,
+ src/vm/jit/powerpc/asmpart.S,
+ src/vm/jit/codegen-common.h,
+ src/vm/jit/alpha/codegen.c,
+ src/vm/jit/alpha/linux/md-os.c,
+ src/vm/jit/alpha/asmpart.S,
+ src/vm/jit/alpha/freebsd/md-os.c,
+ src/vm/jit/stack.c,
+ src/vm/jit/code.c,
+ src/vm/jit/verify/typecheck.c,
+ src/vm/jit/mips/codegen.c,
+ src/vm/jit/mips/linux/md-os.c,
+ src/vm/jit/mips/asmpart.S,
+ src/vm/jit/mips/irix/md-os.c,
+ src/vm/jit/patcher.h,
+ src/vm/jit/inline/inline.c,
+ src/vm/jit/allocator/simplereg.c,
+ src/vm/jit/i386/codegen.c,
+ src/vm/jit/i386/linux/md-os.c,
+ src/vm/jit/i386/asmpart.S,
+ src/vm/jit/i386/freebsd/md-os.c,
+ src/vm/jit/parse.c,
+ src/vm/jit/intrp/intrp.h,
+ src/vm/jit/intrp/codegen.c,
+ src/vm/jit/intrp/engine.c,
+ src/vm/jit/intrp/asmpart.c,
+ src/vm/jit/intrp/dynamic-super.c,
+ src/vm/jit/intrp/java.vmg,
+ src/vm/jit/asmpart.h,
+ src/vm/jit/x86_64/md.c,
+ src/vm/jit/x86_64/codegen.c,
+ src/vm/jit/x86_64/asmpart.S,
+ src/vm/jit/profile/profile.c,
+ src/vm/jit/stacktrace.c,
+ src/vm/jit/jit.c,
+ src/vm/jit/stacktrace.h,
+ src/vm/jit/codegen-common.c,
+ src/vm/jit/jit.h,
+ src/vm/global.h,
+ src/vm/builtintable.inc,
+ src/vm/signal.c,
+ src/vm/exceptions.c,
+ src/vm/vm.c,
+ src/vm/linker.c,
+ src/vm/exceptions.h,
+ src/vm/utf8.c,
+ src/vm/hashtable.c,
+ src/cacao/cacao.c,
+ src/cacao/Makefile.am,
+ src/native/tools/Makefile.am,
+ src/native/tools/gennativetable.c,
+ src/native/jni.c,
+ src/native/vm/VMObject.c,
+ src/native/vm/VMThread.c,
+ src/native/jni.h,
+ src/native/native.c,
+ src/native/jvmti/cacaodbg.c,
+ src/native/jvmti/cacaodbg.h,
+ src/native/jvmti/jvmti.c,
+ src/toolbox/avl.c,
+ src/toolbox/logging.c,
+ src/toolbox/avl.h,
+ src/mm/boehm.h,
+ src/mm/memory.c,
+ src/mm/boehm.c,
+ src/threads/green,
+ src/threads/native/threads.h,
+ src/threads/native/threads.c,
+ src/threads/Makefile.am,
+ src/cacaoh/cacaoh.c,
+ src/cacaoh/headers.h,
+ src/cacaoh/Makefile.am,
+ src/cacaoh/headers.c,
+ configure.ac: Green threads removal, USE_THREADS renamed to
+ ENABLE_THREADS, NATIVE_THREADS define removed.
+
+2006-05-15 13:13 twisti
+
+ * src/vm/jit/asmpart.h (calljava_xhandler2): Not required anymore.
+
+2006-05-15 12:23 twisti
+
+ * src/threads/native/threads.c (sem_init, sem_post, sem_wait)
+ (sem_destroy): Added a pthread implementation (taken from Boehm-GC)
+ for Darwin, as Darwin does not have an implementation for these
+ functions.
+ * src/threads/native/threads.h (sem_t): Added structure for Darwin.
+ * src/threads/native/lock.h (semaphore.h): Removed.
+
+2006-05-15 12:14 edwin
+
+ * src/threads/native/lock.c (THIN_UNLOCKED): Abstracted out the thin
+ unlocked state so we can toggle the shape bit meaning if we want.
+ (lock_pre_compute_thinlock): Likewise.
+ (lock_get_initial_lock_word): Likewise.
+ (lock_monitor_enter): Made void. Might save an instruction here and
+ there.
+ (lock_monitor_wait): lock_monitor_enter no longer returns the lock
+ record. Assert that it is still the same fat lock (it must be).
+
+2006-05-15 11:34 edwin
+
+ * src/threads/native/lock.c: Added reference to thin lock paper and
+ explained the lockword format.
+
+2006-05-14 22:41 edwin
+
+ * src/threads/native/lock.c: Thin lock implementation.
+
+ * src/threads/native/threads.h (threadobject): Added thinlock field.
+ (Authors, Changes): Moved myself to Authors because of rewrite.
+
+ * src/threads/native/threads.c (threads_preinit): Init index and
+ thinlock field of mainthreadobj here. (Needed early.)
+ (threads_table_add): Init pre-computed thinlock field here.
+
+ * src/threads/native/lock.h (lock_pre_compute_thinlock): New function.
+
+2006-05-14 22:36 edwin
+
+ * src/threads/native/lock.c (lock_record_free_pools): Assert that
+ this function is not called. It does not match the new way lock
+ records are handled. We must find another way to free them.
+
+ * src/threads/native/threads.c (threads_init): Do not call
+ lock_record_free_pools.
+ (threads_table_add): Removed debug code.
+ (threads_startup_thread): Likewise.
+
+2006-05-14 15:34 edwin
+
+ * src/threads/native/threads.c (threads_table_init): New function.
+ (threads_table_add): New function.
+ (threads_table_remove): New function.
+ (threads_table_dump): New function.
+ (threads_table): New global variable.
+ (threads_preinit): Call threads_table_init.
+ Call threads_table_add to add main thread.
+ (threads_init_threadobject): Initialize index to 0.
+ (threads_startup_thread): Call threads_table_add to add the thread
+ to the table, and threads_table_remove to remove if afterwards.
+
+2006-05-14 14:02 edwin
+
+ * src/threads/native/threads.h, src/threads/native/threads.c
+ (nativethread): Removed. This struct is now inlined in threadobject.
+ (threads_table_entry_t): New type.
+ (threads_table_t): New type.
+ Some further cleanup.
+
+ * src/vm/builtin.h (THREADINFO): Becomes THREADOBJECT.
+
+ * src/vm/jit/intrp/intrp.h (THREADINFO): Becomes THREADOBJECT.
+
+ * src/vm/jit/stacktrace.c (_stackframeinfo): This is now directly
+ a field of threadobject.
+
+ * src/vm/jit/stacktrace.h (THREADINFO): Becomes THREADOBJECT.
+
+ * src/native/jni.h (THREADINFO): Becomes THREADOBJECT.
+
+ * src/native/jvmti/jvmti.c (isSleeping): Renamed to sleeping.
+
+2006-05-14 12:22 edwin
+
+ * src/threads/native/lock.c, src/threads/native/lock.h: Rewritten
+ as a very basic fat lock implementation.
+
+ * src/vm/jit/powerpc64/arch.h (USE_MD_THREAD_STUFF): Renamed to
+ USE_FAKE_ATOMIC_INSTRUCTIONS.
+
+ * src/vm/jit/intrp/engine.c (USE_MD_THREAD_STUFF): Renamed to
+ USE_FAKE_ATOMIC_INSTRUCTIONS.
+
+ * src/threads/native/threads.c (USE_MD_THREAD_STUFF): Renamed to
+ USE_FAKE_ATOMIC_INSTRUCTIONS.
+ (ee.lrpool): Renamed to ee.lockrecordpools.
+
+2006-05-14 12:15 edwin
+
+ * src/threads/native/threads.c (threads_calc_absolute_time): Optimize
+ waiting for the maximum 64-bit number of milliseconds to an unbounded
+ wait. This also avoids an overflow problem we seem to have with timed
+ waits.
+
+2006-05-13 23:25 edwin
+
+ * src/threads/native/lock.c (lock_init_thread_lock_record_pool):
+ Renamed to lock_init_execution_env. Cleanup and Comments.
+
+ * src/threads/native/lock.h (lock_init_thread_lock_record_pool):
+ Renamed to lock_init_execution_env.
+
+ * src/threads/native/threads.c (lock_init_thread_lock_record_pool):
+ Renamed to lock_init_execution_env.
+
+2006-05-13 23:10 edwin
+
+ * src/threads/native/threads.c, src/threads/native/threads.c: Further
+ cleanup. Still no functional changes.
+ Renamed external symbols are listed below.
+
+ * src/threads/native/critical.h, src/threads/native/critical.c:
+ Cleanup.
+
+ * src/threads/native/lock.h: Cleanup.
+
+ * src/vm/jit/profile/profile.c (thread_sleep): Renamed to
+ threads_sleep.
+
+ * src/vm/vm.c (joinAllThreads): Renamed to threads_join_all_threads.
+
+ * src/native/jni.c (thread_getself): Renamed to
+ threads_get_current_threadobject.
+
+ * src/native/vm/VMThread.c (thread): Typedef `thread` has been
+ removed.
+ (interruptThread): Renamed to threads_interrupt_thread.
+ (isInterruptedThread): Renamed to threads_thread_has_been_interrupted.
+ (setPriorityThread): Renamed to threads_java_lang_Thread_set_priority.
+ (yieldThread): Renamed to threads_yield.
+ (interruptedThread): Renamed to
+ threads_check_if_interrupted_and_reset.
+
+ * src/native/jvmti/cacaodbg.c (thread_getself): Renamed to
+ threads_get_current_threadobject.
+ (setthreadobject): Renamed to threads_set_current_threadobject.
+
+ * src/native/jvmti/jvmti.c (setthreadobject): Renamed to
+ threads_set_current_threadobject.
+
+ * src/threads/green/threads.h (yieldThread): Renamed to threads_yield.
+ (setPriorityThread): Renamed to threads_java_lang_Thread_set_priority.
+
+ * src/threads/green/threads.c (yieldThread): Renamed to threads_yield.
+ (setPriorityThread): Renamed to threads_java_lang_Thread_set_priority.
+
+2006-05-12 16:49 edwin
+
+ * src/threads/native/threads.c: The Big Thread Cleanup. No functional
+ changes,
+ only code motion, renaming, documenting. This file has been split into
+ threads.c, lock.c, and critical.c.
+ Externally used symbols that were renamed are listed below. Static
+ symbol
+ renames are not listed.
+
+ * src/threads/native/threads.h: The Big Thread Cleanup. No functional
+ changes,
+ only code motion, renaming, documenting. This file has been split into
+ threads.h, lock.h, and critical.h.
+
+ * src/cacaoh/cacaoh.c (initLocks): Renamed to lock_init (green
+ threads).
+
+ * src/cacaoh/headers.c (threadcritnode): Renamed to
+ critical_section_node_t.
+
+ * src/mm/memory.c (initObjectLock): Renamed to lock_init_object_lock.
+
+ * src/native/jvmti/jvmti.c (lockRecordPool): Renamed to
+ lock_record_pool_t.
+ (pool_lock): Renamed to lock_global_pool_lock.
+ (global_pool): Renamed to lock_global_pool.
+ (ownerThread): Renamed to owner.
+ (threadHoldsLock): Renamed to lock_does_thread_hold_lock.
+ (monitorExit): Renamed to lock_monitor_exit.
+ (wait_cond_for_object): Renamed to lock_wait_for_object.
+ (signal_cond_for_object): Renamed to lock_notify_object.
+ (broadcast_cond_for_object): Renamed to lock_notify_all_object.
+
+ * src/native/tools/gennativetable.c (initLocks): Renamed to lock_init
+ (green threads).
+
+ * src/native/vm/VMObject.c (initObjectLock): Renamed to
+ lock_init_object_lock.
+ (wait_cond_for_object): Renamed to lock_wait_for_object.
+ (signal_cond_for_object): Renamed to lock_notify_object.
+ (broadcast_cond_for_object): Renamed to lock_notify_all_object.
+
+ * src/native/vm/VMThread.c (threadHoldsLock): Renamed to
+ lock_does_thread_hold_lock.
+
+ * src/threads/green/locks.c, src/threads/green/locks.h
+ (initLocks): Renamed to lock_init.
+ (wait_cond_for_object): Renamed to lock_wait_for_object.
+ (signal_cond_for_object): Renamed to lock_notify_object.
+ (broadcast_cond_for_object): Renamed to lock_notify_all_object.
+ (internal_broadcast_cond_for_object): Renamed to
+ internal_lock_notify_all_object.
+
+ * src/threads/green/threads.c (initLocks): Renamed to lock_init.
+ (internal_broadcast_cond_for_object): Renamed to
+ internal_lock_notify_all_object.
+
+ * src/threads/native/Makefile.am (lock.c, lock.h): Added new files.
+ (critical.c, critical.h): Added new files.
+ (Changes): Added my name.
+
+ * src/threads/native/critical.c: New file.
+
+ * src/threads/native/critical.h: New file.
+
+ * src/threads/native/lock.c: New file.
+
+ * src/threads/native/lock.h: New file.
+
+ * src/toolbox/avl.c (initObjectLock): Renamed to
+ lock_init_object_lock.
+
+ * src/vm/builtin.c (initObjectLock): Renamed to lock_init_object_lock.
+ (monitorEnter): Renamed to lock_monitor_enter.
+ (monitorExit): Renamed to lock_monitor_exit.
+
+ * src/vm/class.c (initObjectLock): Renamed to lock_init_object_lock.
+
+ * src/vm/classcache.c (initObjectLock): Likewise.
+
+ * src/vm/finalizer.c (initObjectLock): Likewise.
+ (wait_cond_for_object): Renamed to lock_wait_for_object.
+ (signal_cond_for_object): Renamed to lock_notify_object.
+
+ * src/vm/global.h (monitorLockRecord): Renamed to lock_record_t.
+
+ * src/vm/hashtable.c (initObjectLock): Renamed to
+ lock_init_object_lock.
+
+ * src/vm/jit/asmpart.h: Added #include "threads/native/critical.h"
+ (threadcritnode): Renamed to critical_section_node_t.
+
+ * src/vm/jit/code.c: Comment changed.
+
+ * src/vm/jit/codegen-common.c, src/vm/jit/codegen-common.h
+ (threadcritnode): Renamed to critical_section_node_t.
+ (threadcritnodetemp): Renamed to codegen_critical_section_t.
+
+ * src/vm/jit/alpha/codegen.c (get_dummyLR): Renamed to
+ lock_get_initial_lock_word.
+
+ * src/vm/jit/alpha/freebsd/md-os.c (thread_checkcritical): Renamed to
+ critical_find_restart_point.
+ * src/vm/jit/alpha/linux/md-os.c (thread_checkcritical): Renamed to
+ critical_find_restart_point.
+
+ * src/vm/jit/i386/codegen.c (get_dummyLR): Renamed to
+ lock_get_initial_lock_word.
+
+ * src/vm/jit/i386/freebsd/md-os.c (thread_checkcritical): Renamed to
+ critical_find_restart_point.
+ * src/vm/jit/i386/linux/md-os.c (thread_checkcritical): Renamed to
+ critical_find_restart_point.
+
+ * src/vm/jit/intrp/dynamic-super.c (initObjectLock): Renamed to
+ lock_init_object_lock.
+
+ * src/vm/jit/mips/codegen.c (get_dummyLR): Renamed to
+ lock_get_initial_lock_word.
+
+ * src/vm/jit/mips/irix/md-os.c (thread_checkcritical): Renamed to
+ critical_find_restart_point.
+ * src/vm/jit/mips/linux/md-os.c (thread_checkcritical): Renamed to
+ critical_find_restart_point.
+
+ * src/vm/jit/powerpc/codegen.c (get_dummyLR): Renamed to
+ lock_get_initial_lock_word.
+
+ * src/vm/jit/profile/profile.c (wait_cond_for_object): Renamed to
+ lock_wait_for_object.
+
+ * src/vm/jit/stack.c (initObjectLock): Renamed to
+ lock_init_object_lock.
+
+ * src/vm/jit/x86_64/codegen.c (get_dummyLR): Renamed to
+ lock_get_initial_lock_word.
+
+ * src/vm/jit/x86_64/md.c (thread_checkcritical): Renamed to
+ critical_find_restart_point.
+
+ * src/vm/loader.c (initObjectLock): Renamed to
+ lock_init_object_lock.
+ (initLocks): Renamed to lock_init (green threads).
+
+ * src/vm/string.c (initObjectLock): Renamed to
+ lock_init_object_lock.
+
+ * src/vm/vm.c (initLocks): Renamed to lock_init (green threads).
+
+2006-05-12 14:32 twisti
+
+ * src/vm/jit/emit.h: Replaced __POWERPC__ #ifdef with
+ SIZEOF_VOID_P == 4.
+
+2006-05-11 14:02 twisti
+
+ * src/native/vm/VMClassLoader.c (nativeGetResources): Bugfix: utf_new
+ should be utfname.
+
+2006-05-11 13:43 twisti
+
+ * src/vm/jit/mips/codegen.c: Changed mcodeptr from u4* to u1*.
+ * src/vm/jit/mips/codegen.h: Likewise.
+
+2006-05-11 13:09 twisti
+
+ * src/vm/jit/mips/asmpart.S (asm_call_jit_compiler): Use new
+ jit_asm_compile method.
+
+2006-05-11 12:48 edwin
+
+ * src/threads/native/threads.c (monitorExit): Added an assert to
+ check that no existing waiter is overwritten by the suspicious
+ assignment.
+
+2006-05-11 12:36 edwin
+
+ * src/lib/vm/reference/java/lang/VMClassLoader.java
+ (getBootPackages): Merged patch to VMClassLoader.java of the
+ reference implementation. getBootPackages now works in the
+ presence of endorsed jars.
+
+2006-05-11 12:18 twisti
+
+ * src/native/jni.c (DeleteGlobalRef): Bugfix: handle the removal of
+ the first entry in the chain properly.
+
+2006-05-11 09:18 twisti
+
+ * src/vm/hashtable.c (threads/native/threads.h): Added.
+ (hashtable_create): Initialize lock object.
+ (hashtable_resize): New function.
+ (hashtable_free): Likewise.
+ * src/vm/hashtable.h (hashtable): Added header pointer.
+ (hashtable_resize): Added.
+ (hashtable_free): Likewise.
+
+ * src/vm/vm.c (vm_create): Call jni_init before threads_init.
+
+ * src/vm/utf8.c (lock_hashtable_utf): Removed.
+ (utf8_init): Allocate hashtable on heap.
+ (utf_new): Use new hashtable stuff.
+
+ * src/native/native.c (native_init): Use new hashtable stuff.
+ (native_hashtable_library_add): Likewise.
+
+ * src/native/jni.c (jni_init): Removed Java IdentityHashMap stuff and
+ create a hashtable.
+ (NewGlobalRef): Implemented with native hashtable.
+ (DeleteGlobalRef): Likewise.
+
+ * src/native/jni.h (hashtable_global_ref_entry): Added.
+
+ * src/vm/string.c (literalstring_u2): Removed check for
+ class_java_lang_String, we have an assert there.
+
+2006-05-10 16:14 twisti
+
+ * src/vm/jit/alpha/codegen.c: Changed mcodeptr from u4* to u1*.
+ * src/vm/jit/alpha/codegen.h: Likewise.
+
+2006-05-10 15:51 twisti
+
+ * src/vm/jit/codegen-common.h (codegendata): Use an u1* mcodeptr for
+ all architectures. This is necessary for the interpreter.
+ * src/vm/jit/codegen-common.c (codegen_setup): Removed #ifdef.
+ (codegen_increase): Likewise.
+
+ * src/vm/jit/powerpc/codegen.c: Changed mcodeptr from u4* to u1*.
+ * src/vm/jit/powerpc/codegen.h: Likewise.
+
+2006-05-10 15:09 edwin
+
+ * src/vm/jit/inline/inline.c (inline_write_exception_handlers):
+ Correct cast for abused instruction->target.
+
+2006-05-10 13:12 twisti
+
+ * src/vm/jit/alpha/asmpart.S (asm_call_jit_compiler): Use new
+ jit_asm_compile method.
+
+2006-05-08 11:09 twisti
+
+ * configure.ac (AC_CONFIG_FILES): Added src/scripts/keytool.
+ * src/scripts/Makefile.am (bin_SCRIPTS): Added keytool.
+ * src/scripts/.cvsignore: Likewise.
+ * src/scripts/keytool.in: New file.
+
+2006-05-08 11:05 twisti
+
+ * src/vm/jit/powerpc/asmpart.S (asm_vm_call_method): Handle argument
+ passing properly for SysV ABIs. Darwin is left to do.
+
+2006-05-08 11:03 twisti
+
+ * tests/regression/native/testarguments.java: Added new test.
+ * tests/regression/native/testarguments.c: Likewise.
+ * tests/regression/native/testarguments.output: Likewise.
+
+2006-05-06 18:29 motse
+
+ * src/vm/vm.c (vm_create): make agentlib/agentpath work
+ * src/cacao/cacao.c (main): changes for jvmti/jdwp startup due to
+ removal of jdwp process
+ * src/native/jni.c (JNI_CreateJavaVM): change order vm_create and
+ initialization of _Jv_jvm due to jvmti agent support.
+ * src/native/vm/VMVirtualMachine.c: change name of jvmtienv and
+ bugfixes of Samuel Vinson
+ * src/native/include/Makefile.am: add VMMethod.h
+ * src/native/jvmti/Makefile.am: removal of cacaodbgserver
+ * src/native/jvmti/jvmti.c: remove jdwp process and convert to thread
+ * src/native/jvmti/cacaodbg.h: idem
+ * src/native/jvmti/jvmti.h: idem
+ * src/native/jvmti/dbg.h: idem
+ * src/native/jvmti/cacaodbg.c: idem
+ * src/native/jvmti/dbg.c: idem
+ * src/native/jvmti/cacaodbgserver.c: change to a autonomous program
+ and removal of jdwp thread.
+ * src/native/jvmti/VMjdwp.c (VMInit): different invocation due to
+ removal of jdwp thread
+ * src/native/jvmti/VMjdwp.h: export jvmti environment and event
+ callbacks.
+ * src/native/vm/VMMethod.c: initial/dummy implementation of VMMetod
+ native method
+
+2006-05-06 14:13 edwin
+
+ * src/native/vm/VMRuntime.c
+ (Java_java_lang_VMRuntime_mapLibraryName): Use new utf_ functions.
+ (Changes): Added my name.
+ (vim boilerplate): Added.
+
+2006-05-06 10:10 edwin
+
+ * src/native/vm/VMClassLoader.c
+ (Java_java_lang_VMClassLoader_nativeGetResources): Really create a
+ new utf string to search for if the trailing .class is stripped.
+
+2006-05-06 00:16 edwin
+
+ * src/vm/classcache.c (classcache_merge_class_entries):
+ Use utf_cat_classname.
+ (classcache_store): Likewise.
+ (classcache_store_defined): Likewise.
+
+2006-05-06 00:11 edwin
+
+ * src/native/vm/VMClassLoader.c
+ (Java_java_lang_VMClassLoader_nativeGetResources): Fixed and cleaned
+ up. Skip leading '/'. Remove '.class' only at end. Free char buffer.
+ Use correct utf_ functions. Check for exceptions.
+
+ * src/vm/zip.c (zip_find): Documented.
+
+2006-05-05 19:31 edwin
+
+ * src/vm/utf8.h: Moved #include "config.h" up front.
+
+2006-05-05 19:22 edwin
+
+ * src/toolbox/logging.c (Changes): Added my name.
+ (vim boilerplate): Added.
+
+2006-05-05 19:21 edwin
+
+ * src/toolbox/logging.c (log_message_utf): Use new utf_ functions.
+ (log_message_class_message_class): Likewise.
+ (log_message_method): Likewise.
+
+2006-05-05 19:13 edwin
+
+ * src/vm/builtin.c (builtin_throw_exception): Use new utf_ functions.
+ (builtin_trace_exception): Likewise.
+ (builtin_trace_args): Likewise.
+ (builtin_displaymethodstop): Likewise.
+
+2006-05-05 18:58 edwin
+
+ * src/vm/suck.c (suck_start): Use new utf_ functions.
+
+2006-05-05 18:49 edwin
+
+ * src/vm/utf8.h, src/vm/utf8.c: Fixed header.
+
+2006-05-05 18:14 edwin
+
+ * src/vm/loader.c (load_class_from_classbuffer): Use new
+ utf_ functions.
+
+2006-05-05 18:08 edwin
+
+ * src/vm/resolve.c (resolve_class_from_name): Use new utf_ functions.
+ (resolve_subtype_check): Likewise.
+ (resolve_field_verifier_checks): Likewise.
+ (resolve_method_verifier_checks): Likewise.
+
+2006-05-05 17:34 edwin
+
+ * src/vm/utf8.h, src/vm/utf8.c: The Big utf_* Renaming.
+ The purpose of this change is to give the utf_* functions names
+ that make clear what these functions _really_ have been doing
+ all the time. I'm sure most callers would be surprised if they
+ knew. All call sites should be reviewed!
+ (utf_display): Renamed to utf_display_printable_ascii.
+ (utf_display_classname): Renamed to
+ utf_display_printable_ascii_classname.
+ (utf_sprint): Renamed to utf_sprint_convert_to_latin1.
+ (utf_sprint_classname): Renamed to
+ utf_sprint_convert_to_latin1_classname.
+ (utf_strcat): Renamed to utf_strcat_convert_to_latin1.
+ (utf_strcat_classname): Renamed to
+ utf_strcat_convert_to_latin1_classname.
+ (utf_fprint): Renamed to utf_fprint_printable_ascii.
+ (utf_fprint_classname): Renamed to
+ utf_fprint_printable_ascii_classname.
+
+ * src/vm/class.c, src/vm/suck.c, src/vm/loader.c, src/vm/builtin.c,
+ src/vm/descriptor.c, src/vm/resolve.c, src/vm/method.c,
+ src/vm/classcache.c, src/vm/jit/stack.c, src/vm/jit/verify/typeinfo.c,
+ src/vm/jit/allocator/lsra.c, src/vm/jit/intrp/disass.c,
+ src/vm/jit/stacktrace.c, src/vm/jit/codegen-common.c,
+ src/vm/exceptions.c, src/vm/field.c, src/cacao/cacao.c,
+ src/native/tools/gennativetable.c, src/native/vm/VMClassLoader.c,
+ src/native/vm/VMRuntime.c, src/native/native.c, src/toolbox/logging.c,
+ src/threads/green/threads.c, src/threads/native/threads.c,
+ src/cacaoh/headers.c: The Big utf_ Renaming. All call sites of the
+ renamed functions should be reviewed! Calls outside debugging code
+ are probably incorrect and should use one of the new utf_ functions
+ that copies byte-for-byte.
+
+2006-05-05 17:09 edwin
+
+ * src/vm/exceptions.c (new_exception): Documented.
+ (new_exception_message): Documented. Use new_exception_javastring.
+ (new_exception_throwable): Documented.
+ (new_exception_utfmessage): Documented. Use new_exception_javastring.
+ (new_exception_javastring): Documented.
+ (new_exception_int): Documented.
+ (new_classformaterror): Documented. Use new byte-for-byte UTF-8
+ functions.
+ (exceptions_throw_classformaterror): Documented.
+ (new_classnotfoundexception): Documented. Check return value of
+ javastring_new.
+ (new_noclassdeffounderror): Documented. Check return value of
+ javastring_new.
+ (new_internalerror): Documented.
+ (exceptions_new_linkageerror): Documented. Use new byte-for-byte UTF-8
+ functions.
+ (exceptions_new_nosuchmethoderror): Documented. Use new byte-for-byte
+ UTF-8
+ functions.
+ (exceptions_throw_nosuchmethoderror): Documented.
+ (new_unsupportedclassversionerror): Documented. Use new byte-for-byte
+ UTF-8
+ functions.
+ (new_verifyerror): Likewise.
+ (exceptions_throw_verifyerror_for_stack): Likewise.
+ (exceptions_handle_exception): Documented.
+
+2006-05-05 16:51 edwin
+
+ * src/vm/utf8.c, src/vm/utf8.h (utf_copy): New function.
+ (utf_cat): New function.
+ (utf_copy_classname): New function.
+ (utf_cat_classname): New function.
+ These new functions copy the UTF-8 content byte-for-byte and thus
+ do not lead to losses by conversion like the utf_strcpy, etc.
+ functions.
+
+2006-05-05 15:26 edwin
+
+ * src/vm/string.c, src/vm/stringlocal.h, src/vm/utf8.c, src/vm/utf8.h
+ (Changes): Added my name.
+ (vim boilerplate): Added.
+
+2006-05-05 15:14 edwin
+
+ * src/vm/string.c, src/vm/stringlocal.h
+ (javastring_new_from_utf_buffer): New function.
+ (javastring_new_from_utf_string): New function.
+
+ * src/vm/utf8.c (utf_get_number_of_u2s_for_buffer): New function.
+ (utf_get_number_of_u2s): Documented that this function may throw
+ exception.s.
+
+ * src/vm/utf8.h (utf_get_number_of_u2s_for_buffer): New function.
+
+2006-05-05 14:36 edwin
+
+ * src/vm/string.c, src/vm/stringlocal.h (java_string_new_char):
+ Renamed to `java_string_new_from_ascii` to make more clear what this
+ function does. It is wrong to use this function to create a
+ java.lang.String from a buffer of UTF-8 characters!
+
+ * src/vm/finalizer.c (finalizer_start_thread): Legitimate use.
+ * src/vm/jit/profile/profile.c (profile_start_thread): Likewise.
+
+ * src/vm/exceptions.c
+ (exceptions_new_linkageerror): Definitely INCORRECT use.
+ (exceptions_new_nosuchmethoderror): Likewise.
+ * src/native/vm/VMRuntime.c
+ (Java_java_lang_VMRuntime_mapLibraryName): Likewise.
+
+ * src/vm/exceptions.c (new_exception_message): Probably INCORRECT use.
+ * src/native/jni.c (DefineClass): Likewise.
+ (ThrowNew): Likewise.
+ * src/native/vm/VMClassLoader.c
+ (Java_java_lang_VMClassLoader_nativeGetResources): Likewise.
+
+ * src/vm/properties.c (properties_system_add): Needs review.
+ * src/cacao/cacao.c (getmainclassnamefromjar): Likewise.
+ * src/native/jvmti/cacaodbg.c (setup_jdwp_thread): Likewise.
+ * src/native/jvmti/jvmti.c (CreateRawMonitor, GetSystemProperty)
+ (SetSystemProperty): Likewise.
+
+2006-05-05 13:56 edwin
+
+ * src/vm/utf8.c, src/vm/utf8.h (utf_bytes): New function.
+ Use this function to query the number of octets of a utf string.
+ This function will become the correct replacement for the old
+ utf_strlen in most places. The calling code will have to be
+ reviewed for that, however, and it will also require fixing
+ utf_strcat, utf_sprint, and so on, to do the right thing.
+
+2006-05-05 13:48 edwin
+
+ * src/vm/utf8.c, src/vm/utf8.h (utf_strlen): Renamed to
+ `utf_get_number_of_u2s` in order to reflect what this function
+ _really_ does. A long name was chosen intentionally to make it obvious
+ that this is _not_ the function to use as the normal strlen. Most
+ current uses of this function are invalid, as it must only be used
+ when the utf string will be **converted to UTF-16**.
+
+ * src/vm/suck.c (suck_start): Renamed utf_strlen. RECONSIDER USE!
+ * src/vm/loader.c (load_class_from_classbuffer): Likewise.
+ * src/vm/builtin.c (various functions): Likewise.
+ * src/vm/resolve.c (various functions): Likewise.
+ * src/vm/exceptions.c (various functions): Likewise.
+ * src/native/vm/VMClassLoader.c
+ (Java_java_lang_VMClassLoader_nativeGetResources): Likewise.
+ * src/native/vm/VMRuntime.c
+ (Java_java_lang_VMRuntime_mapLibraryName): Likewise.
+ * src/native/native.c (native_resolve_function): Likewise.
+ * src/toolbox/logging.c (various functions): Likewise.
+ * src/cacaoh/headers.c (various functions): Likewise.
+
+ * src/vm/string.c (javastring_new): Legitimate use.
+ (javastring_new_slash_to_dot): Likewise.
+ (literalstring_new) Likewise.
+
+2006-05-03 23:04 edwin
+
+ * src/threads/native/threads.c (wakeWaiters): Renamed
+ to threads_wake_waiters. Documented.
+
+2006-05-03 22:58 edwin
+
+ * src/threads/native/threads.c (handleWaiter): Renamed arguments.
+ Commented.
+ (monitorEnter): Documented.
+ (notifyOneOrAll): Cleaned up.
+
+2006-05-03 22:46 edwin
+
+ * src/threads/native/threads.c (setPriority): Renamed to
+ threads_set_thread_priority.
+ (removeFromWaiters): Renamed to threads_remove_waiter.
+ (timespec_less): Renamed to threads_timespec_earlier.
+ (timeIsEarlier): Renamed to threads_current_time_is_earlier_than.
+ (waitWithTimeout): Renamed to threads_wait_with_timeout. Removed
+ unused
+ argument `lr`.
+ (thread_sleep): There is no need to create a lock record for
+ calling threads_wait_with_timeout, as that does not use the
+ lock record anyway (formerly waitWithTimeout).
+ (various function): Lots of documentation and cleanup.
+
+2006-05-02 16:16 twisti
+
+ * src/vm/jit/stack.c (stack_analyse): Check for val.a == NULL on
+ SUPPORT_CONST_STORE_ZERO_ONLY architectures for ICMD_PUTSTATIC and
+ ICMD_PUTFIELD.
+
+2006-05-01 23:14 edwin
+
+ * src/threads/native/threads.c: Cleanup and documentation.
+
+2006-05-01 21:40 edwin
+
+ * src/threads/native/threads.h (threads_sem_init): New function.
+ (threads_sem_post): New function.
+
+ * src/threads/native/threads.c (threads_sem_init): New function.
+ (threads_sem_wait): Added assertion.
+ (threads_sem_post): New function.
+ (various function): Use threads_sem_init and threads_sem_post.
+
+ * src/native/jvmti/cacaodbg.c (getworkingdatalock): Use
+ threads_sem_post.
+ (cacaodbgfork): Use threads_sem_init.
+
+ * src/native/jvmti/cacaodbgserver.c (contchild, waitloop).
+ Use threads_sem_post.
+
+2006-05-01 12:40 edwin
+
+ * src/threads/native/threads.c (threads_sem_wait): New function.
+ This function performs a non-interruptible sem_wait. This fixes
+ segfaults and deadlocks that resulted from sem_wait calls returning
+ prematurely.
+ (cast_stopworld): Use threads_sem_wait.
+ (threads_startup_thread): Likewise.
+ (threads_start_thread): Likewise.
+ (queueOnLockRecord): Likewise.
+
+ * src/threads/native/threads.h (threads_sem_wait): New function.
+
+ * src/native/jvmti/cacaodbg.c (msgqsendevent): Use threads_sem_wait
+ instead of sem_wait.
+
+ * src/native/jvmti/cacaodbgserver.c (contchild, waitloop): Use
+ threads_sem_wait instead of sem_wait.
+
+2006-04-30 17:18 twisti
+
+ * configure.ac (AC_CONFIG_FILES): Added src/scripts/jarsigner.
+ * src/scripts/Makefile.am (bin_SCRIPTS): Added jarsigner.
+ * src/scripts/.cvsignore: Likewise.
+ * src/scripts/jarsigner.in: New file.
+
+2006-04-30 16:17 edwin
+
+ * src/vm/resolve.c (resolve_method_verifier_checks)
+ (constrain_unresolved_method): Use ICMD_ACONST_CLASSREF_OR_CLASSINFO.
+
+ * src/vm/jit/powerpc/codegen.c, src/vm/jit/alpha/codegen.c,
+ src/vm/jit/mips/codegen.c, src/vm/jit/i386/codegen.c,
+ src/vm/jit/intrp/codegen.c, src/vm/jit/x86_64/codegen.c
+ (codegen): Changes for new ACONST format.
+
+ * src/vm/jit/stack.c (stack_analyse): Changes for new ACONST format.
+
+ * src/vm/jit/verify/typecheck.c (verify_invocation): Use the new
+ macros.
+ (verify_builtin, verify_multianewarray, verify_basic_block): Changes
+ for
+ new ACONST format.
+
+ * src/vm/jit/verify/typeinfo.h (TYPEINFO_INIT_JAVA_LANG_CLASS): Take
+ a classref_or_classinfo as argument.
+
+ * src/vm/jit/verify/typeinfo.c (typeinfo_init_class): Typo fixed.
+ (typeinfo_print): Changes for new ACONST format.
+
+ * src/vm/jit/inline/inline.c (inline_write_exception_handlers):
+ Changes for new ACONST format.
+
+ * src/vm/jit/parse.c (parse): Changes for new ACONST format.
+
+ * src/vm/jit/parse.h (LOADCONST_A_CLASS): Removed.
+ (LOADCONST_A_BUILTIN): Changes for new ACONST format.
+
+ * src/vm/jit/jit.h (INSTRUCTION_IS_RESOLVED,
+ INSTRUCTION_IS_UNRESOLVED):
+ Only check least significant bit of target (provisory flag).
+ (ICMD_ACONST_IS_CLASS, ICMD_ACONST_CLASSREF_OR_CLASSINFO)
+ (ICMD_ACONST_RESOLVED_CLASSINFO, ICMD_ACONST_UNRESOLVED_CLASSREF):
+ New macros.
+
+2006-04-30 15:58 edwin
+
+ * src/vm/jit/loop/tracing.c (tracing): Adapted to new format of
+ INVOKE
+ instructions.
+ * src/vm/jit/allocator/lsra.c (lsra_scan_registers_canditates)
+ (_test_lifetimes): Likewise.
+
+2006-04-28 12:25 edwin
+
+ * src/vm/jit/parse.c (parse): Added a comment.
+
+2006-04-28 12:24 twisti
+
+ * src/vm/jit/stack.c (stack_analyse): We need to split AASTORECONST
+ and PUT{STATIC,FIELD}CONST as they can store different values. I hope
+ the checks are correct now (until we get our new instruction
+ format). Edwin: Hint! Hint! Hint!
+ (stack_show_icmd): Again a smaller change.
+
+2006-04-28 11:50 twisti
+
+ * src/vm/jit/stack.c (stack_analyse): Check for
+ {AASTORE,PUTSTATIC,PUTFIELD}CONST if the instruction is resolved. We
+ don't have a patcher for that case.
+ (stack_show_icmd): Smaller change.
+
+2006-04-28 11:37 twisti
+
+ * tests/regression/codepatching/test.java: Added new test.
+ * tests/regression/codepatching/Makefile.am: Files updated.
+
+ * tests/regression/codepatching/putfieldconstIF.java,
+ tests/regression/codepatching/putfieldconstJDL.java: Removed.
+
+ * tests/regression/codepatching/putstaticconstJ.java,
+ tests/regression/codepatching/putstaticconstL.java,
+ tests/regression/codepatching/putfieldconstD.java,
+ tests/regression/codepatching/putfieldconstF.java,
+ tests/regression/codepatching/putstaticconstC.java,
+ tests/regression/codepatching/putfieldconstJ.java,
+ tests/regression/codepatching/putfieldconstL.java,
+ tests/regression/codepatching/putstaticconstI.java,
+ tests/regression/codepatching/putfieldconstC.java,
+ tests/regression/codepatching/putstaticconstD.java,
+ tests/regression/codepatching/putfieldconstI.java,
+ tests/regression/codepatching/putstaticconstF.java: New file.
+
+2006-04-28 11:24 edwin
+
+ * src/vm/resolve.c (resolve_method_lazy): Turn INVOKEVIRTUAL into
+ INVOKESPECIAL for monomorphic calls.
+
+2006-04-28 00:46 edwin
+
+ * src/vm/jit/intrp/asmpart.c (intrp_asm_vm_call_method_int): Fix
+ build
+ errors. TWISTI, please review these changes.
+
+2006-04-28 00:31 edwin
+
+ * regression/codepatching/test.java: Added test for AASTORECONST
+ with unresolved class constant. Currently exposes a bug when
+ test.java is
+ compiled with -target 1.5.
+
+ * regression/codepatching/aastoreconstClass.java: New file.
+
+2006-04-27 23:03 twisti
+
+ * src/vm/jit/stacktrace.h (STACKFRAMEINFO): Added parenthesis.
+ * src/vm/global.h (java_objectheader): Changed type of monitorPtr to
+ monitorLockRecord.
+
+ * src/vm/vm.h (vm_arg): Added union.
+ * src/vm/vm.c (vm_vmargs_from_valist): Use union of vm_arg's data.
+ * src/native/jni.c (_Jv_jni_vmargs_from_objectarray): Likewise.
+
+ * src/threads/native/threads.h (nativethread): Changed type of
+ _stackframeinfo to stackframeinfo*.
+ * src/threads/native/threads.c (monitorEnter): Cast compare_and_swap
+ return value correctly.
+
+2006-04-27 12:33 twisti
+
+ * src/vm/jit/x86_64/emit.c: Changed x86_64 function prefix to
+ emit. And some other stuff too.
+ * src/vm/jit/x86_64/md-emit.h: Likewise.
+ * src/vm/jit/x86_64/codegen.c: Likewise.
+ * src/vm/jit/x86_64/codegen.h: Likewise.
+
+2006-04-27 11:05 twisti
+
+ * src/native/vm/VMSystemProperties.c (preInit): Append "/jre" to
+ java.home property, as all JDKs and JREs do that. Fixed a problem with
+ jonas testsuite. General cleanup.
+
+2006-04-27 10:32 twisti
+
+ * src/vm/jit/powerpc/darwin/md-asm.h (jit_asm_compile): Renamed from
+ jit_compile.
+ * src/vm/jit/powerpc/asmpart.S: Likewise.
+
+2006-04-26 15:44 edwin
+
+ * src/vm/jit/stacktrace.c (stacktrace_getClassContext): Reverted the
+ hack that removes the first entry if this function is called by
+ java.lang.SecurityManager. This (undocumented) hack probably was done
+ to solve a problem that no longer exists.
+
+2006-04-26 14:09 twisti
+
+ * src/vm/jit/i386/Makefile.am (libarch_la_SOURCES): Removed
+ emitfuncs.c, emitfuncs.h and added emit.c, md-emit.h.
+
+ * src/vm/jit/i386/emit.c (emit_load_s1): New method.
+ (emit_load_s2): Likewise.
+ (emit_load_s3): Likewise.
+ (emit_store): Likewise.
+ (emit_copy): Likewise.
+
+ * src/vm/jit/i386/codegen.c (codegen): Use emit_load/store functions
+ instead of macros.
+
+ * src/vm/jit/i386/codegen.h (M_LNGMOVE): Added.
+ (M_LNGMEMMOVE): Removed.
+ (var_to_reg_int): Removed.
+ (var_to_reg_lng): Likewise.
+ (var_to_reg_flt): Likewise.
+ (store_reg_to_var_int): Likewise.
+ (store_reg_to_var_lng): Likewise.
+ (store_reg_to_var_flt): Likewise.
+ (M_FLD): Added.
+ (M_DLD): Likewise.
+ (M_FLD32): Likewise.
+ (M_DLD32): Likewise.
+ (M_FST): Likewise.
+ (M_DST): Likewise.
+
+2006-04-26 11:02 twisti
+
+ * src/vm/jit/i386/md-emit.h: Moved from src/vm/jit/i386/emitfuncs.h.
+ * src/vm/jit/i386/emit.c: Moved from src/vm/jit/i386/emitfuncs.c.
+
+2006-04-26 09:02 twisti
+
+ * configure.ac (AC_CONFIG_FILES): Added src/scripts/rmic.
+ * src/scripts/Makefile.am (bin_SCRIPTS): Added rmic.
+ * src/scripts/java.in: Use ${1+"$@"} instead of $@.
+ * src/scripts/rmiregistry.in: Likewise.
+ * src/scripts/rmic.in: Updated to new rmic location.
+
+2006-04-26 08:57 twisti
+
+ * m4/ac_prog_javac.m4: Default to ecj.
+ * src/lib/Makefile.am: If JAVAC is ecj, use the -1.5 flag. This
+ produces much faster code regarding class$ (e.g. jonas startup time).
+
+2006-04-25 18:02 edwin
+
+ * src/vm/jit/disass-common.c (disass_printf): Avoid compiler warning.
+
+ * src/vm/jit/profile/profile.c (profile_printstats): Avoid compiler
+ warnings.
+
+2006-04-25 17:57 edwin
+
+ * src/vm/jit/i386/disass.c (disassinstr): Avoid compiler warning.
+
+2006-04-25 17:53 edwin
+
+ * src/vm/jit/stack.c (stack_show_icmd): Removed unused variable `um`.
+
+2006-04-25 17:48 edwin
+
+ * src/vm/loader.c (load_method): Simplify initialization of
+ methodinfo by
+ clearing it explicitely in load_class_from_classbuffer, instead of
+ zeroing
+ individual fields here.
+ (load_class_from_classbuffer): MZERO methodinfo array.
+ (load_newly_created_array): Initialize `params` to NULL for the clone
+ method.
+
+2006-04-25 17:45 edwin
+
+ * src/mm/memory.h (MZERO): Added macro MZERO for convenient memory
+ cleaning.
+
+2006-04-25 17:42 edwin
+
+ * src/native/vm/VMSystemProperties.c
+ (Java_gnu_classpath_VMSystemProperties_preInit): Use strcpy instead of
+ strcat, since there is nothing to concat to and we may want to lift
+ the
+ assertion that MSET clears memory.
+
+2006-04-25 15:46 edwin
+
+ * src/vm/jit/i386/md.c (md_get_method_patch_address): Avoid compiler
+ warning.
+
+2006-04-25 15:31 edwin
+
+ * src/cacao/cacao.c (main): Avoid warning about unused label.
+ Cleaned up whitespace.
+
+2006-04-25 15:26 edwin
+
+ * src/vm/exceptions.c (exceptions_throw_verifyerror_for_stack): Avoid
+ compiler warning.
+
+2006-04-25 12:35 edwin
+
+ * src/vm/jit/verify/typecheck.c (typecheckverbose): Renamed to
+ opt_typecheckverbose.
+ * src/vm/jit/verify/typeinfo.h: Likewise.
+
+ * src/vm/vm.c (OPT_VERBOSETC): Only define if both ENABLE_VERIFIER
+ and TYPECHECK_VERBOSE are defined.
+ (typecheckverbose): Renamed to opt_typecheckverbose.
+
+2006-04-25 12:25 edwin
+
+ * src/vm/options.h, src/vm/options.c (getloadingtime): Renamed to
+ opt_getloadingtime. Only defined for ENABLE_STATISTICS.
+ (getcompilingtime): Renamed to opt_getcompilingtime.
+ Only defined for ENABLE_STATISTICS.
+
+ * src/vm/loader.c (getloadingtime, getcompilingtime): Renamed.
+ * src/vm/jit/jit.c: Likewise.
+ * src/vm/linker.c: Likewise.
+ * src/native/vm/VMClassLoader.c: Likewise.
+
+ * src/vm/vm.c (OPT_TIME): Only defined for ENABLE_STATISTICS.
+
+ * configure.ac (--enable-statistics): Now statistics are disabled by
+ default.
+
+2006-04-25 12:00 edwin
+
+ * src/vm/options.h (opt_verify): Only declare for ENABLE_VERIFIER.
+ (opt_liberalutf): Removed.
+
+ * src/vm/options.c (opt_verify): Only declare for ENABLE_VERIFIER.
+ (opt_liberalutf): Removed.
+
+ * src/vm/jit/inline/inline.c (test_inlining): Only verify if
+ ENABLE_VERIFIER.
+
+ * src/vm/jit/parse.c (parse): Only check opt_verify if
+ ENABLE_VERIFIER.
+
+ * src/vm/global.h (ENABLE_VERIFIER): Removed. This is now defined in
+ config.h.
+
+ * src/vm/vm.c (OPT_NOVERIFY): Only define this option if
+ ENABLE_VERIFIER.
+ (OPT_LIBERALUTF): Removed.
+
+ * configure.ac (--disable-verifier): Added configure option.
+
+ * src/vm/jit/stacktrace.c (stacktrace_getStack): Gather a wider range
+ for the cycle count statistics.
+
+2006-04-25 10:36 edwin
+
+ * src/vm/cycles-stats.h (CYCLES_STATS_COUNT_OVER): Added.
+
+2006-04-24 18:28 edwin
+
+ * src/vm/cycles-stats.c: Cleaned up whitespace.
+
+2006-04-24 18:22 edwin
+
+ * src/vm/cycles-stats.c (cycles_stats_print_percentile): Also perform
+ measurement overhead compensation for cumulated cycle counts.
+
+2006-04-24 17:16 edwin
+
+ * src/vm/global.h (ACC_CLASS_REFLECT_MASK): Added.
+ (ACC_CLASS_HAS_POINTERS): Likewise.
+ (vim boilerplate): Added.
+
+ * src/vm/loader.c (load_field): Set ACC_CLASS_HAS_POINTERS flag.
+
+ * src/vm/linker.c (link_class_intern): OR ACC_CLASS_HAS_POINTERS flag.
+
+ * src/vm/builtin.c (builtin_new): Use ACC_CLASS_HAS_POINTERS to
+ determine
+ which kind of memory to allocate.
+
+ * src/native/vm/VMClass.c (Java_java_lang_VMClass_getModifiers): Mask
+ reported access flags with ACC_CLASS_REFLECT_MASK.
+
+2006-04-24 16:24 twisti
+
+ * src/vm/jit/x86_64/emit.c (x86_64_emit_ifcc): Changed signature of
+ codegen_addreference.
+ (x86_64_emit_if_lcc): Likewise.
+ (x86_64_emit_if_icmpcc): Likewise.
+ (x86_64_emit_if_lcmpcc): Likewise.
+
+2006-04-24 16:10 twisti
+
+ * src/vm/jit/i386/codegen.c (codegen): Don't initialize mcode
+ variables. New dseg_addlinenumber signature fix.
+ (createnativestub): Don't initialize mcode variables.
+
+2006-04-24 16:06 twisti
+
+ * src/vm/jit/codegen-common.c (codegen_increase): Changed signature.
+ (codegen_addreference): Likewise.
+ (codegen_add_exception_ref): Likewise.
+ (codegen_add_arithmeticexception_ref): Likewise.
+ (codegen_add_arrayindexoutofboundsexception_ref): Likewise.
+ (codegen_add_arraystoreexception_ref): Likewise.
+ (codegen_add_classcastexception_ref): Likewise.
+ (codegen_add_nullpointerexception_ref): Likewise.
+ (codegen_add_fillinstacktrace_ref): Likewise.
+ (codegen_addpatchref): Likewise.
+ (codegen_finish): Likewise.
+ * src/vm/jit/codegen-common.h: Likewise.
+
+ * src/vm/jit/dseg.c (dseg_increase): Made static.
+ (dseg_adds4): Use dseg_increase.
+ (dseg_adds8): Likewise.
+ (dseg_addfloat): Likewise.
+ (dseg_adddouble): Likewise.
+ (dseg_adds4_increase): Removed.
+ (dseg_adds8_increase): Likewise.
+ (dseg_addfloat_increase): Likewise.
+ (dseg_adddouble_increase): Likewise.
+ (dseg_addlinenumber): Changed signature.
+ (dseg_addlinenumber_inline_start): Likewise.
+ (dseg_adddata): Likewise.
+ * src/vm/jit/dseg.h: Likewise.
+
+ * src/vm/jit/alpha/emit.c (vm/jit/alpha/emit.h): Removed.
+ (vm/jit/emit.h): Added.
+ (emit_lconst): New method.
+ * src/vm/jit/alpha/Makefile.am (libarch_la_SOURCES): Added emit.c
+
+ * src/vm/jit/alpha/codegen.c (vm/jit/emit.h): Added.
+ (codegen): Use cd->mcodeptr instead of mcodeptr, and emit_load/store
+ functions instead of macros. Saves over 50kB object code size. Use new
+ signatures of codegen-common and dseg functions.
+ * src/vm/jit/alpha/codegen.h (var_to_reg_int): Removed.
+ (var_to_reg_flt): Likewise.
+ (store_reg_to_var_int): Likewise.
+ (store_reg_to_var_flt): Likewise.
+
+ * src/vm/jit/i386/codegen.c: Use new signatures of codegen-common and
+ dseg functions.
+ * src/vm/jit/i386/codegen.h: Likewise.
+ * src/vm/jit/intrp/codegen.c: Likewise.
+ * src/vm/jit/intrp/codegen.h: Likewise.
+ * src/vm/jit/mips/codegen.c: Likewise.
+ * src/vm/jit/mips/codegen.h: Likewise.
+ * src/vm/jit/powerpc/codegen.c: Likewise.
+ * src/vm/jit/powerpc/codegen.h: Likewise.
+ * src/vm/jit/x86_64/codegen.c: Likewise.
+ * src/vm/jit/x86_64/codegen.h: Likewise.
+
+2006-04-24 15:43 edwin
+
+ * src/vm/jit/stacktrace.c (stacktrace_create): Do not free dump
+ memory here,
+ this is now done in the parent functions. Also removed the copy to gc
+ memory.
+ (stacktrace_fillInStackTrace): Copy stacktrace to gc memory.
+ Free dump memory.
+ (stacktrace_getClassContext): Free dump memory.
+ (stacktrace_getCurrentClass): Likewise.
+ (stacktrace_getStack): Likewise.
+ (stacktrace_dump_trace): Likewise.
+
+2006-04-24 11:40 edwin
+
+ * src/vm/jit/stacktrace.c (stacktrace_fillInStackTrace)
+ (stacktrace_getClassContext, stacktrace_getCurrentClass)
+ (stacktrace_getStack): Added cycle count statistics.
+ (stacktrace_print_cycles_stats): Added.
+
+ * src/vm/jit/stacktrace.h (stacktrace_print_cycles_stats): Added.
+
+ * src/vm/vm.c (vm_exit_handler): Call stacktrace_print_cycles_stats.
+
+2006-04-24 11:36 edwin
+
+ * src/vm/cycles-stats.h (CYCLES_STATS_END_WITH_OVERHEAD): Fix
+ arguments of
+ empty macro definition.
+
+2006-04-24 11:27 edwin
+
+ * src/vm/cycles-stats.h (CYCLES_STATS_DECLARE_AND_START)
+ (CYCLES_STATS_DECLARE_AND_START_WITH_OVERHEAD)
+ (CYCLES_STATS_END, CYCLES_STATS_END_WITH_OVERHEAD): Added convenience
+ macros.
+
+ * src/vm/cycles-stats.c (cycles_stats_print): Fixed divide-by-zero.
+ Minor
+ output changes.
+
+2006-04-24 10:08 twisti
+
+ * src/vm/jit/mips/md.c (md_get_method_patch_address): Renamed from
+ md_assembler_get_patch_address.
+ * src/vm/jit/mips/asmpart.S (asm_call_jit_compiler): Renamed
+ md_assembler_get_patch_address to md_get_method_patch_address.
+
+2006-04-24 10:00 twisti
+
+ * src/vm/jit/powerpc/md.c (md_get_method_patch_address): New method.
+ * src/vm/jit/powerpc/asmpart.S (asm_call_jit_compiler): Use new
+ jit_asm_compile method. This fixes the ecj bugs seens with some mauve
+ tests and eclipse.
+
+2006-04-24 09:58 twisti
+
+ * src/vm/jit/powerpc/codegen.c (codegen): Replaced those ugly
+ M_TINTMOVE macros. Use M_LLD macros where possible.
+ * src/vm/jit/powerpc/codegen.h (M_LNGMOVE): Check for equal registers.
+ (M_TINTMOVE): Removed.
+
+2006-04-24 00:19 edwin
+
+ * src/vm/jit/i386/asmpart.S (asm_get_cycle_count): Omit the
+ stackframe.
+ This saves a couple of cycles of measurement overhead.
+
+2006-04-23 23:03 twisti
+
+ * src/vm/jit/alpha/md.c (md_get_method_patch_address): Renamed from
+ md_assembler_get_patch_address.
+ * src/vm/jit/alpha/asmpart.S (asm_call_jit_compiler): Renamed
+ md_assembler_get_patch_address to md_get_method_patch_address.
+
+2006-04-23 19:18 edwin
+
+ * src/vm/cycles-stats.c (cycles_stats_print_percentile): Better
+ extrapolation.
+ * src/vm/cycles-stats.h (CYCLES_STATS_DECLARE, CYCLES_STATS_COUNT)
+ (CYCLES_STATS_PRINT, CYCLES_STATS_PRINT_OVERHEAD): Added total cycles
+ counter.
+
+2006-04-23 19:16 edwin
+
+ * src/vm/builtin.c (builtin_new): Renamed rt-timing identifier.
+ (builtin_newarray): Added rt-timing.
+
+ * src/vm/rt-timing.h: Added rt-timing for builtin_newarray.
+ * src/vm/rt-timing.c: Likewise.
+
+2006-04-23 16:11 edwin
+
+ * src/vm/builtin.c (builtin_print_cycles_stats): Use
+ CYCLES_STATS_PRINT_OVERHEAD.
+
+ * src/vm/cycles-stats.h (CYCLES_STATS_PRINT_OVERHEAD): Added.
+
+ * src/vm/cycles-stats.c (cycles_stats_print_percentile): Added.
+ (cycles_stats_print): Added `overhead` argument and automatic
+ measurement overhead compensation.
+
+2006-04-23 15:39 edwin
+
+ * src/vm/builtin.c (builtin_new): Added rt-timing.
+ (builtin_print_cycles_stats): Removed unused variable.
+ (builtin_monitorenter): Removed rt-timing.
+ (builtin_monitorexit): Likewise.
+
+ * src/vm/rt-timing.c: rt-timing for buitin_new.
+ * src/vm/rt-timing.h: Likewise.
+
+2006-04-23 15:31 edwin
+
+ * src/vm/cycles-stats.c (cycles_stats_get_cpu_MHz): Better error
+ handling.
+
+2006-04-23 15:24 edwin
+
+ * src/vm/builtin.c (builtin_new): Gather cycle count statistics.
+ (CYCLES_STATS_DECLARE): Moved declarations to beginning of file.
+
+ * src/vm/cycles-stats.c (cycles_stats_get_cpu_MHz): Added function for
+ automatic CPU frequency detection via /proc/cpuinfo.
+ (cycles_stats_print): Calculate estimated CPU times.
+
+2006-04-22 09:35 edwin
+
+ * src/vm/cycles-stats.c (cycles_stats_print): Made count, floor, and
+ ceiling
+ of type u8. This should avoid overflow problems.
+
+ * src/vm/cycles-stats.h (cycles_stats_print): Made count an u8.
+
+2006-04-21 21:36 edwin
+
+ * src/vm/cycles-stats.c: New file. Better cycle count statistics.
+
+ * src/vm/cycles-stats.h (CYCLES_STATS_PRINT): This is now a wrapper
+ for
+ cycles_stats_print.
+
+ * src/vm/Makefile.am (cycles-stats.c): Added to sources.
+
+2006-04-21 14:32 edwin
+
+ * src/vm/jit/stacktrace.c (stacktrace_inline_fillStackTrace): Assert
+ that
+ there is an exception before dereferencing it.
+ (stacktrace_create): Document that this function may return NULL.
+ (stacktrace_getClassContext): Check return value of stacktrace_create.
+ (stacktrace_getCurrentClass): Likewise.
+ (stacktrace_getStack): Likewise. Document that this function may
+ return NULL.
+
+2006-04-21 13:08 edwin
+
+ * src/vm/jit/stacktrace.c (stacktrace_getClassContext): Document that
+ return
+ value may be NULL (in case of an exception).
+
+ * src/native/vm/VMStackWalker.c
+ (Java_gnu_classpath_VMStackWalker_getCallingClass): Check return
+ value of
+ stacktrace_getClassContext.
+ (Java_gnu_classpath_VMStackWalker_getCallingClassLoader): Likewise.
+
+ * src/native/vm/Field.c (cacao_get_field_address): Check return value
+ of
+ stacktrace_getClassContext.
+
+ * src/native/vm/Method.c (Java_java_lang_reflect_Method_invokeNative):
+ Check return value of stacktrace_getClassContext.
+
+2006-04-21 11:07 twisti
+
+ * src/vm/jit/i386/md.c (md_get_method_patch_address): New method.
+ (md_icacheflush): Added.
+ (md_dcacheflush): Likewise.
+
+2006-04-21 10:54 twisti
+
+ * src/vm/jit/jit.c (jit_asm_compile): New method.
+ * src/vm/jit/jit.h (jit_asm_compile): Added.
+ (md_get_method_patch_address): Likewise.
+
+ * src/vm/jit/x86_64/asmpart.S (asm_vm_call_method): Store
+ asm_call_jit_compiler on stack as for the other architectures.
+ (asm_call_jit_compiler): Use new jit_asm_compile.
+
+ * src/vm/jit/x86_64/codegen.c (codegen): Use REG_ITMP3 for calling
+ methods. This is required for asm_vm_call_method to work.
+
+ * src/vm/jit/x86_64/md.c (md_get_method_patch_address): New method.
+ (md_icacheflush): Added.
+ (md_dcacheflush): Added.
+ * src/vm/jit/x86_64/md-asm.h (mptr): Defined.
+
+2006-04-21 10:45 twisti
+
+ * src/vm/jit/stacktrace.c (stacktrace_add_method_intern): Reformatted
+ comments.
+
+2006-04-21 00:00 edwin
+
+ * src/vm/linker.c (link_class_intern): Impose loading constraints on
+ the
+ more general types of the overwritten method, instead of on the over-
+ writing method. Don't impose loading constraints when "overwriting"
+ the
+ instance initializaton method <init>, as it is not called virtually.
+
+2006-04-20 22:28 edwin
+
+ * src/vm/classcache.c (classcache_add_constraint): Also constrain the
+ return type of the given method.
+
+2006-04-20 21:47 edwin
+
+ * src/vm/linker.c (linker_addinterface): Add loading constraints when
+ an
+ interface method is overwritten.
+ (link_class_intern): Check new return value of linker_addinterface.
+
+2006-04-20 20:40 edwin
+
+ * src/vm/linker.c (link_class_intern): Only record loading constraints
+ for ENABLE_VERIFIER.
+
+2006-04-20 20:38 edwin
+
+ * src/vm/classcache.c (classcache_add_constraints_for_params): Added.
+ (classcache_add_constraint): Only define for ENABLE_VERIFIER.
+
+ * src/vm/classcache.h (classcache_add_constraints_for_params): Added.
+ (classcache_add_constraint): Only define for ENABLE_VERIFIER.
+
+ * src/vm/linker.c (link_class_intern): When overwriting a method,
+ record loading constraints for the parameter types, as required
+ by the spec.
+
+2006-04-20 19:18 edwin
+
+ * src/mm/memory.c (Changes): Added my name.
+ (vim boilerplate): Added.
+
+2006-04-20 18:59 edwin
+
+ * src/mm/memory.c: Added comments and some cleanup.
+
+2006-04-20 18:04 edwin
+
+ * configure.ac (ENABLE_LOOP): Changed default to "no".
+
+ * src/vm/options.h (opt_loops): Only define for ENABLE_LOOP.
+
+ * src/vm/options.c (opt_loops): Only define for ENABLE_LOOP.
+
+ * src/vm/vm.c (-oloop, -i): Only recognize these options if
+ enabled with ENABLE_LOOP/ENABLE_INLINING.
+
+ * src/vm/jit/allocator/lsra.c (opt_loops): Only use for ENABLE_LOOP.
+
+2006-04-20 10:55 twisti
+
+ * src/vm/jit/x86_64/codegen.h (M_ALD32): Added.
+
+2006-04-20 10:42 twisti
+
+ * src/vm/jit/x86_64/md-abi.h (REG_METHODPTR): Added.
+
+2006-04-20 08:45 twisti
+
+ * src/lib/vm/reference/java/lang/VMClassLoader.java: Updated to GNU
+ Classpath version.
+
+2006-04-19 01:05 edwin
+
+ * src/vm/builtin.c (builtin_print_cycles_stats): Added.
+ (builtin_monitorenter): Gather cycle count statistics.
+ (builtin_monitorexit): Likewise.
+
+ * src/vm/builtin.h (builtin_print_cycles_stats): Added.
+
+ * src/vm/jit/i386/asmpart.S (asm_get_cycle_count): Added.
+
+ * src/vm/jit/asmpart.h (asm_get_cycle_count): Added.
+
+ * src/vm/vm.c (vm_exit_handler): Call builtin_print_cycles_stats.
+
+ * src/vm/cycles-stats.h: New file.
+
+ * src/vm/Makefile.am (CYCLES_STATS_SOURCE): Added.
+
+ * src/cacaoh/headers.c (asm_get_cycle_count): Dummy implementation
+ added.
+
+ * configure.ac (--enable-cycles-stats): Added configure option.
+
+2006-04-18 21:16 twisti
+
+ * src/vm/jit/x86_64/emitfuncs.c: Moved to emit.c.
+ * src/vm/jit/x86_64/emitfuncs.h: Moved to md-emit.h
+
+ * src/vm/jit/x86_64/codegen.c (vm/jit/x86_64/emitfuncs.h): Removed.
+ (vm/jit/x86_64/md-emit.h): Added.
+
+ * src/vm/jit/x86_64/Makefile.am (libarch_la_SOURCES): Added emit.c and
+ md-emit.h, removed emitfuncs.c and emitfuncs.h.
+
+2006-04-18 20:36 twisti
+
+ * src/vm/jit/jit.h (IS_ADR_TYPE): Changed to use ==.
+ (IS_INT_TYPE): Added.
+ (IS_LNG_TYPE): Likewise.
+
+2006-04-18 20:34 twisti
+
+ * src/vm/jit/x86_64/codegen.c (vm/jit/emit.h): Added.
+ (codegen): Use emit_load/store functions instead of macors. Saves over
+ 25kB object code size.
+
+ * src/vm/jit/x86_64/codegen.h (ALIGNCODENOP): Added.
+ (var_to_reg_int): Removed.
+ (var_to_reg_flt): Likewise.
+ (store_reg_to_var_int): Likewise.
+ (store_reg_to_var_flt): Likewise.
+ (M_INEG, M_LNEG, M_INEG_MEMBASE, M_LNEG_MEMBASE): Added.
+ (M_CMOVEQ_MEMBASE, M_CMOVNE_MEMBASE, M_CMOVLT_MEMBASE)
+ (M_CMOVLE_MEMBASE, M_CMOVGE_MEMBASE, M_CMOVGT_MEMBASE): Likewise.
+
+ * src/vm/jit/x86_64/emitfuncs.c (emit_load_s1): Added.
+ (emit_load_s2): Likewise.
+ (emit_load_s3): Likewise.
+ (emit_store): Likewise.
+ (emit_copy): Likewise.
+ (emit_cmovxx): Likewise.
+
+ * src/vm/jit/x86_64/emitfuncs.h (emit_cmovxx): Added.
+
+2006-04-18 20:20 twisti
+
+ * src/vm/jit/x86_64/md-abi.h (REG_IFTMP): Defined.
+
+2006-04-18 20:17 edwin
+
+ * src/vm/jit/stack.c (stack_show_icmd): Updated to use the correct
+ macros for
+ (un)resolved methods. Minor output format changes.
+
+ * src/vm/field.c (field_print): Print the class name.
+
+2006-04-18 20:10 twisti
+
+ * src/vm/jit/alpha/Makefile.am (DISASS_SOURCES): Added.
+ * src/vm/jit/mips/Makefile.am: Likewise.
+
+2006-04-18 15:55 twisti
+
+ * configure.ac (intl): Check on NetBSD too.
+
+2006-04-18 15:40 twisti
+
+ * configure.ac: Fixed typos.
+
+2006-04-18 13:36 twisti
+
+ * src/vm/jit/mips/codegen.h (M_FLTMOVE): Removed.
+ (M_TFLTMOVE): Likewise.
+ (M_TFLD): Likewise.
+ (M_TFST): Likewise.
+ (M_CCFLTMOVE): Likewise.
+ (M_CCFLD): Likewise.
+ (M_CCFST): Likewise.
+ * src/vm/jit/mips/codegen.c (codegen): Use float and double
+ explicitely.
+ * src/vm/jit/mips/emit.c: Likewise.
+
+2006-04-17 15:49 edwin
+
+ * src/vm/jit/intrp/codegen.c (intrp_codegen): Cast mcodeptr to u1*.
+ This should fix intrp on archs with u4* mcodeptr.
+
+2006-04-17 15:20 edwin
+
+ * src/vm/builtin.c (builtin_monitorenter, builtin_monitorexit): Added
+ rt-timing.
+
+ * src/vm/rt-timing.c, src/vm/rt-timing.h: rt-timing for locks.
+
+2006-04-17 11:47 twisti
+
+ * src/vm/jit/codegen-common.h (codegendata): Define lastmcodeptr on
+ all architectures. I think it does not matter.
+
+2006-04-14 23:50 edwin
+
+ * src/vm/jit/codegen-common.h: Typo fix.
+
+2006-04-14 23:48 edwin
+
+ * src/vm/jit/parse.c (parse): Removed unused variable `mi`.
+
+2006-04-14 23:46 edwin
+
+ * src/vm/rt-timing.c: include stdlib.h to fix warning.
+
+2006-04-14 12:40 twisti
+
+ * src/vm/jit/mips/emit.c: New file.
+ * src/vm/jit/mips/Makefile.am (libarch_la_SOURCES): Added emit.c
+
+ * src/vm/jit/mips/codegen.c (vm/jit/emit.h): Added.
+ (codegen): Use cd->mcodeptr instead of mcodeptr, and emit_load/store
+ functions instead of macors. Saves over 50kB object code size.
+
+ * src/vm/jit/mips/codegen.h (var_to_reg_int): Removed.
+ (var_to_reg_flt): Likewise.
+ (store_reg_to_var_int): Likewise.
+ (store_reg_to_var_flt): Likewise.
+
+2006-04-14 11:57 twisti
+
+ * src/vm/jit/codegen-common.c (codegen_setup): Fixed compiler
+ warnings, set lastmcodeptr.
+ (codegen_increase): Fixed compiler warnings.
+ (codegen_finish): Likewise.
+ (codegen_createnativestub): Likewise.
+
+2006-04-14 11:28 twisti
+
+ * src/vm/jit/alpha/emit.h: Removed. There's now a common one in
+ src/vm/jit/.
+
+2006-04-14 11:20 twisti
+
+ * src/vm/jit/emit.h: New file.
+ * src/vm/jit/Makefile.am (noinst_HEADERS): Added emit.h.
+
+ * src/vm/jit/powerpc/emit.c: New file.
+ * src/vm/jit/powerpc/Makefile.am (libarch_la_SOURCES): Added emit.c.
+
+ * src/vm/jit/powerpc/codegen.c (vm/jit/emit.h): Added.
+ (codegen): Use cd->mcodeptr instead of mcodeptr, and emit_load/store
+ functions instead of macors. Saves over 100kB object code size.
+
+ * src/vm/jit/powerpc/codegen.h (var_to_reg_int): Removed.
+ (var_to_reg_lng): Likewise.
+ (var_to_reg_lng_low): Likewise.
+ (var_to_reg_lng_high): Likewise.
+ (var_to_reg_flt): Likewise.
+ (var_to_reg_dbl): Likewise.
+ (store_reg_to_var_int): Likewise.
+ (store_reg_to_var_lng): Likewise.
+ (store_reg_to_var_adr): Likewise.
+ (store_reg_to_var_flt): Likewise.
+ (store_reg_to_var_dbl): Likewise.
+ (M_LLD_INTERN): Added.
+ (M_LLD): Likewise.
+ (M_LST_INTERN): Likewise.
+ (M_LST): Likewise.
+
+2006-04-13 20:45 edwin
+
+ * src/vm/loader.c (load_class_from_classloader): Detailed rt-timing.
+ (load_class_bootstrap): Likewise.
+
+ * src/vm/rt-timing.c: Added rt-timing for loading from classloaders.
+ * src/vm/rt-timing.h: Likewise.
+
+2006-04-13 18:21 edwin
+
+ * src/vm/loader.c (load_class_from_classbuffer): Separate timing for
+ descriptor_pool_new.
+
+ * src/vm/rt-timing.c: Likewise.
+
+ * src/vm/rt-timing.h: Likewise.
+
+2006-04-13 18:00 edwin
+
+ * src/vm/loader.c (load_class_from_classbuffer): Added real-time
+ loading time
+ measurements.
+
+ * src/vm/rt-timing.c: Likewise.
+ * src/vm/rt-timing.h: Likewise.
+
+2006-04-13 17:23 edwin
+
+ * src/vm/rt-timing.c: Added timing of linker stages.
+ * src/vm/rt-timing.h: Likewise.
+ * src/vm/linker.c: Likewise.
+
+2006-04-13 16:58 edwin
+
+ * src/vm/rt-timing.h (RT_TIMING_TIME_DIFF): Added.
+
+ * src/vm/jit/jit.c (jit_compile_intern): Use RT_TIMING_TIME_DIFF.
+
+ * src/vm/linker.c (link_class): Use rt-timing for measuring link time.
+
+ * src/cacaoh/Makefile.am (cacaoh_LDFLAGS): Link with librt for
+ ENABLE_RT_TIMING.
+
+2006-04-13 16:48 edwin
+
+ * src/vm/rt-timing.c (rt_timing_stat): Added field `totalindex`.
+ (rt_timing_stat_defs): Likewise.
+ (rt_timing_diff): Renamed to rt_timing_time_diff.
+ (rt_timing_print_time_stats): Use `totalindex` to calculate
+ percentage.
+
+ * src/vm/rt-timing.h (RT_TIMING_LINK_TOTAL): Added.
+ (rt_timing_diff): Renamed to rt_timing_time_diff.
+
+2006-04-13 14:09 twisti
+
+ * src/vm/jit/alpha/emit.c: New file.
+ * src/vm/jit/alpha/emit.h: Likewise.
+
+2006-04-13 13:10 twisti
+
+ * src/vm/jit/codegen-common.h (codegendata): Changed mcodeend to
+ u1*. Define mcodeptr to u4* for non-i386/x86_64 architectures.
+
+2006-04-13 09:32 twisti
+
+ * src/vm/jit/x86_64/codegen.c (codegen): Use argument registers
+ directly in exception stubs, instead of temporary ones. This reduces
+ code-size about 150kB for -all.
+
+2006-04-13 09:19 twisti
+
+ * src/vm/jit/x86_64/emitfuncs.c (x86_64_emit_ishift): Bugfixes found
+ by javver.
+ (x86_64_emit_lshift): Likewise.
+
+2006-04-12 22:20 edwin
+
+ * src/vm/rt-timing.c: Added file.
+ * src/vm/rt-timing.h: Likewise.
+
+ * src/vm/jit/jit.c: Moved real-time timing stuff to rt-timing.[ch]
+ * src/vm/jit/jit.h: Likewise.
+
+ * src/vm/vm.c (vm_exit_handler): Call rt_timing_print_time_stats.
+
+ * src/vm/Makefile.am (rt-timing.c, rt-timing.h): Added.
+
+2006-04-12 22:16 edwin
+
+ * src/vm/jit/allocator/simplereg.c (allocate_scratch_registers): Fixed
+ compiler warning.
+
+2006-04-12 20:06 edwin
+
+ * src/vm/jit/parse.c (parse): New unresolved reference scheme: Data
+ structures
+ for unresolved fields/methods are only created if really needed.
+ Otherwise
+ a lazy resolving is done on-the-fly. This reduced compile time by
+ over 10% for
+ SpecJVM98 and eclipse.
+
+ * src/vm/resolve.c (resolve_subtype_check): Added.
+ (resolve_lazy_subtype_checks): Likewise.
+ (resolve_and_check_subtype_set): Use resolve_subtype_check. Return
+ resolve_result_t instead of bool. Removed `checked` argument.
+ (resolve_class): Use resolve_subtype_check.
+ (resolve_field_verifier_checks): Added.
+ (resolve_field_lazy): Added.
+ (resolve_field): Use resolve_field_verifier_checks.
+ (resolve_method_invokespecial_lookup): Added.
+ (resolve_method_verifier_checks): Added.
+ (resolve_method_lazy): Added.
+ (resolve_method): Use resolve_method_invokespecial_lookup and
+ resolve_method_verifier_checks.
+ (constrain_unresolved_method): Adapted to new unresolved reference
+ scheme.
+ (constrain_unresolved_field): Likewise.
+ (unresolved_field_debug_dump): Likewise.
+ (unresolved_method_debug_dump): Likewise.
+
+ * src/vm/jit/patcher.h (intrp_patcher_get_putstatic_clinit): Added.
+
+ * src/vm/jit/intrp/intrp.h (vm_Cell2afi): Added.
+ (vm_afi2Cell): Likewise.
+ (printarg_afi): Added.
+ (vim boilerplate): Added.
+ (Changes): Added my name.
+
+ * src/vm/jit/intrp/patcher.c (intrp_patcher_get_putstatic_clinit):
+ Added.
+
+ * src/vm/jit/intrp/disass.c (printarg_afi): Added.
+ (Changes): Added my name.
+ (vim boilerplate): Added.
+
+ * src/vm/jit/intrp/java.vmg (GETSTATIC_CELL, GETSTATIC_INT,
+ GETSTATIC_FLOAT)
+ (GETSTATIC_LONG, PUTSTATIC_CELL, PUTSTATIC_INT, PUTSTATIC_FLOAT)
+ (PUTSTATIC_LONG, GETFIELD_CELL, GETFIELD_INT, GETFIELD_FLOAT)
+ (GETFIELD_LONG, PUTFIELD_CELL, PUTFIELD_INT, PUTFIELD_FLOAT)
+ (PUTFIELD_LONG): Now take a fieldinfo instead of an unresolved_field.
+ (INVOKEVIRTUAL, INVOKESTATIC, INVOKESPECIAL, INVOKEINTERFACE): Now
+ take
+ a methodinfo instead of an unresolved_method.
+ (PATCHER_GETSTATIC_CLINIT_INT, PATCHER_GETSTATIC_CLINIT_FLOAT)
+ (PATCHER_GETSTATIC_CLINIT_LONG, PATCHER_GETSTATIC_CLINIT_CELL): Added.
+ (PATCHER_PUTSTATIC_CLINIT_INT, PATCHER_PUTSTATIC_CLINIT_FLOAT)
+ (PATCHER_PUTSTATIC_CLINIT_LONG, PATCHER_PUTSTATIC_CLINIT_CELL): Added.
+
+ * src/vm/jit/allocator/simplereg.c (allocate_scratch_registers):
+ Use INSTRUCTION_GET_METHODDESC to get method descriptor.
+
+ * src/vm/jit/stack.c (stack_analyse): Ported to new unresolved
+ reference
+ scheme.
+ (stack_show_icmd): Likewise.
+
+ * src/vm/jit/verify/typecheck.c (verify_invocation): Ported to new
+ unresolved
+ reference scheme.
+ (verify_basic_block): Likewise.
+
+ * src/vm/jit/powerpc/codegen.c (codegen): Ported to new unresolved
+ reference
+ scheme.
+
+ * src/vm/jit/alpha/codegen.c (codegen): Ported to new unresolved
+ reference
+ scheme.
+
+ * src/vm/jit/mips/codegen.c (codegen): Ported to new unresolved
+ reference
+ scheme.
+
+ * src/vm/jit/i386/codegen.c (codegen): Ported to new unresolved
+ reference
+ scheme.
+
+ * src/vm/jit/x86_64/codegen.c (codegen): Ported to new unresolved
+ reference
+ scheme.
+
+ * src/vm/jit/intrp/codegen.c (codegen): Ported to new unresolved
+ reference
+ scheme.
+ (Changes): Added my name.
+
+ * src/vm/jit/intrp/codegen.h (vim boilerplate): Added.
+
+2006-04-12 18:07 edwin
+
+ * src/vm/resolve.h (resolve_result_t): Added.
+ (resolve_method_lazy): Added prototype.
+ (resolve_field_lazy): Added prototype.
+ (resolve_and_check_subtype_set): Removed prototype. This function is
+ becoming static.
+
+2006-04-12 17:51 edwin
+
+ * src/vm/class.c (class_showconstantpool): Use the new functions
+ method_methodref_print and field_fieldref_print.
+
+ * src/vm/loader.c (load_constantpool): Use p.index in constant_FMIref.
+ (load_class_from_classbuffer): Likewise.
+
+ * src/vm/jit/stack.c (stack_show_icmd): Use p.index in
+ constant_FMIref.
+
+ * src/vm/jit/verify/typecheck.c (verify_invocation): Use p.index in
+ constant_FMIref.
+
+ * src/vm/resolve.c (resolve_field, resolve_method,
+ constrain_unresolved_field)
+ (unresolved_field_debug_dump, unresolved_method_debug_dump):
+ Use p.index in constant_FMIref.
+
+ * src/vm/method.c, src/vm/method.h (method_methodref_print): Added.
+ (method_methodref_println): Likewise.
+
+ * src/vm/field.c, src/vm/field.h (field_fieldref_print): Added.
+ (field_fieldref_println): Likewise.
+
+ * src/vm/references.h (constant_FMIref): Changed field `classref`
+ into a
+ union that is used for caching of already resolved fields/methods.
+ (IS_FMIREF_RESOLVED): Added.
+ (METHODREF_CLASSNAME): Added.
+ (FIELDREF_CLASSNAME): Added.
+
+ * src/vm/jit/jit.h (INSTRUCTION_IS_RESOLVED): Added. This is a
+ preparation
+ for the lazy resolving rewrite.
+ (INSTRUCTION_IS_UNRESOLVED): Likewise.
+ (INSTRUCTION_GET_FIELDREF): Likewise.
+ (INSTRUCTION_GET_METHODREF): Likewise.
+ (INSTRUCTION_GET_FIELDDESC): Likewise.
+ (INSTRUCTION_GET_METHODDESC): Likewise.
+ (INSTRUCTION_UNRESOLVED_METHOD): Likewise.
+ (INSTRUCTION_UNRESOLVED_FIELD): Likewise.
+ (INSTRUCTION_RESOLVED_FMIREF): Likewise.
+ (INSTRUCTION_RESOLVED_FIELDINFO): Likewise.
+ (INSTRUCTION_RESOLVED_METHODINFO): Likewise.
+
+ * src/vm/jit/intrp/disass.c (printarg_auf): Use METHODREF_CLASSNAME.
+
+2006-04-12 11:51 twisti
+
+ * src/vm/jit/alpha/codegen.c (codegen): Use directly argument
+ registers in exception stubs, instead of temporary ones. This reduces
+ code-size about 200kB for -all.
+
+2006-04-12 09:49 twisti
+
+ * src/vm/jit/powerpc/codegen.c (codegen): Fixed displacement overflow
+ problem when restoring LR. We can't use r0 here.
+
+2006-04-12 09:30 twisti
+
+ * NEWS: Line-number fix added.
+
+2006-04-12 09:20 edwin
+
+ * src/vm/jit/parse.c (parse): Skip line number entries that span over
+ zero
+ bytecode instructions.
+
+2006-04-12 08:52 edwin
+
+ * src/vm/method.h (methodinfo): Forward declaration moved to
+ refereneces.h.
+ * src/vm/field.h (fieldinfo): Forward declaration moved to
+ refereneces.h.
+ * src/vm/references.h (methodinfo, fieldinfo): Added forward
+ references.
+
+2006-04-12 08:34 edwin
+
+ * src/vm/class.c (class_showconstanti): Removed.
+ (class_showconstantpool): Documented.
+ (class_showmethods): Documented.
+ (vim boilerplate): Added.
+ (Changes): Finally added my name.
+
+2006-04-11 13:13 twisti
+
+ * src/vm/jit/x86_64/codegen.c (codegen): Changed signature to use
+ jitdata. Renamed reg_of_var by codegen_reg_of_var.
+ * src/vm/jit/x86_64/codegen.h (M_COPY): Likewise.
+
+2006-04-11 10:54 twisti
+
+ * tests/regression/clinitexception.2output: Updated.
+ * tests/regression/native/checkjni.output: Likewise.
+ * tests/regression/extest.2output: Likewise.
+
+2006-04-11 10:20 twisti
+
+ * src/vm/builtin.c (builtin_throw_exception): Changed return type and
+ return NULL. This is less error-prone in asm_vm_call_method.
+ * src/vm/builtin.h: Likewise.
+
+ * src/vm/jit/alpha/asmpart.S (asm_vm_call_method_exception_handler):
+ Don't set v0 to NULL. This is now done in builtin_throw_exception.
+ * src/vm/jit/i386/asmpart.S: Likewise.
+ * src/vm/jit/mips/asmpart.S: Likewise.
+ * src/vm/jit/powerpc/asmpart.S: Likewise.
+ * src/vm/jit/x86_64/asmpart.S: Likewise.
+
+2006-04-11 10:04 twisti
+
+ * src/vm/jit/ifconv/ifconv.c (ifconv_static): Keep compiler happy.
+
+2006-04-11 09:00 edwin
+
+ * src/vm/jit/stack.c (stack_print_stack): Only use `regs` if
+ ENABLE_DISASSEMBLER is defined.
+ (stack_show_method): Likewise.
+
+ * src/vm/jit/replace.c (replace_executionstate_println): Likewise.
+
+2006-04-11 05:10 edwin
+
+ * src/vm/jit/intrp/asmpart.c (intrp_asm_handle_exception): Do not
+ trace
+ exception when NDEBUG.
+
+ * src/vm/jit/intrp/dynamic-super.c (disassemble_prim): Only enable for
+ ENABLE_DISASSEMBLER.
+ (dynamic_super_init): Only call disassemble_prim for
+ ENABLE_DISASSEMBLER.
+
+ * src/vm/jit/intrp/java.vmg: Disable builtin_displaymethodstop and
+ builtin_trace_args for NDEBUG.
+
+2006-04-06 12:54 twisti
+
+ * src/vm/jit/mips: Added TAGS.
+ * src/vm/jit/mips/irix: Likewise.
+ * src/vm/jit/mips/irix/.cvsignore: Likewise.
+ * src/vm/jit/mips/.cvsignore: Likewise.
+
+2006-04-06 12:51 twisti
+
+ * src/vm/jit/mips/codegen.c (codegen): Changed signature to use
+ jitdata. Renamed reg_of_var by codegen_reg_of_var.
+ (createcompilerstub): Replaced docacheflush by md_cacheflush.
+ * src/vm/jit/mips/codegen.h (M_COPY): Likewise.
+ * src/vm/jit/mips/md.c (sys/mman.h): Removed.
+ (docacheflush): Likewise.
+
+2006-04-06 00:33 edwin
+
+ * configure.ac: Added host type `armv5l`.
+
+2006-04-05 20:31 edwin
+
+ * src/vm/jit/parse.h, src/vm/jit/parse.c (OP1LOAD):
+ Split into OP1LOAD_ONEWORD and OP1LOAD_TWOWORD. Index is only checked
+ if
+ ENABLE_VERIFIER.
+ (OP1STORE): Split into OP1STORE_ONEWORD and OP1STORE_TWOWORD. Index
+ is
+ only checked if ENABLE_VERIFIER.
+
+2006-04-05 19:58 edwin
+
+ * src/vm/jit/parse.c (parse): Cleaned up and reordered an if.
+
+2006-04-05 19:44 edwin
+
+ * src/vm/jit/parse.c (parse): Remove the `if (!iswide)` check for
+ each opcode
+ by making JAVA_WIDE continue directly to the label fetch_opcode.
+ (This also
+ removed a part of the iswide check at the end of the loop.)
+
+2006-04-05 18:48 edwin
+
+ * src/vm/jit/alpha/codegen.c (codegen, createnativestub): Remove
+ opt_verbosecall code for NDEBUG builds.
+
+2006-04-05 18:13 edwin
+
+ * src/vm/jit/parse.c (parse): Only do verifier checks if
+ ENABLE_VERIFIER.
+ Cleaned up an obsolete printf.
+
+2006-04-05 12:56 edwin
+
+ * configure.ac (ENABLE_RT_TIMING): Added.
+
+ * src/vm/jit/jit.c (ENABLE_RT_TIMING): Added code for real-time timing
+ of compiler passes.
+
+ * src/vm/jit/jit.h (jit_print_time_stats): Added.
+
+ * src/vm/vm.c (vm_exit_handler): Call jit_print_time_stats.
+
+2006-04-05 11:32 edwin
+
+ * src/vm/jit/inline/inline.c (create_block): Use BASICBLOCK_INIT.
+
+2006-04-05 10:02 twisti
+
+ * src/vm/jit/alpha/asmpart.S (asm_vm_call_method): Removed !NDEBUG as
+ builtin_throw_exception actually posts the thrown exception to the VM
+ system.
+ * src/vm/jit/powerpc/asmpart.S: Likewise.
+ * src/vm/jit/mips/asmpart.S: Likewise.
+ * src/vm/jit/x86_64/asmpart.S: Likewise.
+
+2006-04-05 09:57 edwin
+
+ * src/vm/jit/jit.h (instruction): Removed `method` field.
+ (insinfo_inline): Added.
+ (basicblock): Added `method` field.
+
+ * src/vm/jit/dseg.c (dseg_addlinenumber_inline_start)
+ (dseg_addlinenumber_inline_end): Use new insinfo_inline struct.
+
+ * src/vm/jit/verify/typecheck.c (verify_basic_block): Removed unused
+ variable `myclass`.
+
+ * src/vm/jit/inline/inline.c (emit_inlining_prolog,
+ emit_inlining_epilog):
+ Use insinfo_inline struct.
+ (inline_write_exception_handlers): Removed `method` field.
+
+ * src/vm/jit/i386/codegen.c (codegen): Use insinfo_inline struct.
+
+ * src/vm/jit/parse.h (several macros): Removed `method` field from
+ instruction.
+
+ * src/vm/jit/stack.c (stack_show_icmd): Adapted to new insinfo_inline
+ struct.
+
+2006-04-05 09:54 twisti
+
+ Fixes GCC Bugzilla Bug #26990.
+ * src/vm/vm.c (vm_exit): Don't check for exception of System.exit().
+
+2006-04-04 21:31 edwin
+
+ * src/vm/builtin.c (builtin_throw_exception): No twisti, we don't
+ turn off
+ exceptions just because it is NDEBUG ;)
+ * src/vm/jit/i386/asmpart.S (asm_vm_call_method_exception_handler):
+ Likewise.
+
+2006-04-04 18:14 edwin
+
+ * src/vm/jit/i386/Makefile.am: Do not build disassebmler for
+ --disable-disassembler
+ * src/vm/jit/i386/codegen.c (codegen): disable verbosecall code for
+ NDEBUG
+
+2006-04-04 18:11 edwin
+
+ * src/vm/jit/ifconv/ifconv.c (ifconv_static): #ifdef debug code.
+ (check): Likewise.
+
+2006-04-04 09:17 twisti
+
+ * src/threads/native/threads.c (tablelock): Removed.
+ (tables_lock, tables_unlock): Likewise.
+ (criticalcompare): Removed tablelock initialization.
+ * src/vm/hashtable.h (tables_lock, tables_unlock): Removed.
+ * src/vm/global.h (VFTBLINTERFACETABLE): Likewise.
+ (cast_lock, cast_unlock): Likewise.
+
+2006-04-04 09:14 twisti
+
+ * src/vm/exceptions.c (exceptions_new_nosuchmethoderror): Print
+ classname with dots.
+ (exceptions_handle_exception): Compiler warning fix.
+
+2006-04-04 09:13 edwin
+
+ * src/vm/jit/verify/typeinfo.c (CLASSINFO_IMPLEMENTS_INTERFACE):
+ Removed the
+ single use of the macro VFTBLINTERFACETABLE
+
+2006-04-04 08:45 twisti
+
+ * src/native/vm/VMClass.c: Reordered methods like in the
+ VMClass.java. This eases the 1.5 changes addition.
+
+2006-04-04 08:30 edwin
+
+ * src/vm/jit/parse.c (parse): Removed obsolete variable
+ `skipBasicBlockChange`.
+
+2006-04-04 08:24 edwin
+
+ * src/vm/jit/parse.c (parse): Removed obsolete variable `firstlocal`.
+ (Was used for the old inliner.)
+
+2006-04-03 15:36 twisti
+
+ * src/vm/jit/powerpc/codegen.c (codegen): Changed signature to use
+ jitdata. Renamed reg_of_var by codegen_reg_of_var.
+ * src/vm/jit/powerpc/codegen.h (M_COPY): Likewise.
+
+2006-04-03 13:59 twisti
+
+ * src/vm/jit/powerpc/codegen.c (codegen): Renamed parentargs_base to
+ stackframesize.
+ (codegen_trace_args): Likewise.
+
+2006-04-02 16:17 edwin
+
+ * src/vm/jit/i386/codegen.c (codegen): Implemented inlining of
+ synchronized
+ methods (INLINE_START, INLINE_END do monitorenter/exit).
+
+2006-04-02 16:16 edwin
+
+ * src/vm/jit/inline/inline.c (inline_node): Added fields for inlining
+ synchronized methods.
+ (inline_context): Added `master` pointer to outermost caller. Added
+ field
+ `calls_others`. (Leaf method detection should really be done after
+ inlining).
+ (several methods): Implemented inlining of synchronized methods.
+ (inline_new_stackslot): Added.
+ (inline_write_exception_handlers): Added.
+
+2006-04-01 21:03 edwin
+
+ * src/vm/jit/intrp/codegen.c (createcalljavafunction): Create
+ codeinfo with
+ the right methodinfo pointer.
+
+2006-04-01 21:00 edwin
+
+ * src/vm/jit/codegen-common.h (intrp_createnativestub): Takes a
+ `jitdata *` now.
+
+ * src/vm/jit/intrp/codegen.c (intrp_codegen, intrp_createnativestub)
+ (createcalljavafunction): Use jitdata.
+
+2006-03-31 12:38 edwin
+
+ * src/vm/jit/inline/inline.c, src/vm/jit/inline/inline_debug.c:
+ Adapted to
+ twisti's jitdata changes.
+
+2006-03-31 07:50 twisti
+
+ * src/vm/jit/powerpc/asmpart.S (asm_vm_call_method): Replaced $stub
+ symbols with old symbols and define them for darwin in the
+ corresponding md-asm.h.
+ (asm_call_jit_compiler): Likewise.
+ (asm_wrapper_patcher): Likewise.
+ (asm_replacement_out): Likewise.
+ * src/vm/jit/powerpc/darwin/md-asm.h (builtin_asm_get_exceptionptrptr)
+ (builtin_throw_exception, exceptions_handle_exception, jit_compile)
+ (replace_me, stacktrace_create_extern_stackframeinfo)
+ (stacktrace_remove_stackframeinfo): Changed to $stub symbol.
+ (stacktrace_extern_fillInStackTrace): Removed.
+
+ * src/vm/jit/powerpc/linux/md-abi.c (regs): Added.
+
+2006-03-31 07:14 twisti
+
+ * src/vm/jit/powerpc/patcher.c
+ (patcher_checkcast_instanceof_interface): Compile fix (typo).
+
+2006-03-30 12:01 twisti
+
+ * src/vm/jit/alpha/asmpart.S (vm/jit/abi.h): Changed to
+ vm/jit/abi-asm.h.
+ * src/vm/jit/mips/asmpart.S: Likewise.
+ * src/vm/jit/i386/asmpart.S: Likewise.
+ * src/vm/jit/x86_64/asmpart.S: Likewise.
+
+2006-03-30 11:59 twisti
+
+ * src/vm/jit/powerpc/codegen.c (codegen): Changed signature to use
+ jitdata. Renamed reg_of_var by codegen_reg_of_var.
+ * src/vm/jit/powerpc/codegen.h (M_COPY): Likewise.
+
+ * src/vm/jit/powerpc/asmpart.S (vm/jit/abi.h): Changed to
+ vm/jit/abi-asm.h.
+ (asm_vm_call_method_exception_handler): Export it.
+ (asm_vm_call_method): Don't put label addresses into the
+ "data-segment", as it's located in the .text area and that may be
+ read-only. Changed to use PIC code. Linux stuff is still missing.
+
+ * src/vm/jit/powerpc/Makefile.am (DISASS_SOURCES): Added.
+ * src/vm/jit/powerpc/disass.c (regs): Removed.
+
+2006-03-30 10:26 twisti
+
+ * src/vm/jit/ifconv/Makefile.am (AM_CPPFLAGS): Added OS_DIR.
+ (LIBS): Added.
+
+2006-03-30 10:23 twisti
+
+ * src/vm/jit/Makefile.am (noinst_HEADERS): Added abi-asm.h.
+ * src/vm/jit/abi.h (vm/jit/abi-asm.h): Added.
+ (nregdescint, regs, nregdescfloat): Added.
+ * src/vm/jit/abi-asm.h: New file.
+ * src/vm/jit/reg.h (nregdescint, nregdescfloat): Removed.
+ * src/vm/jit/reg.c (vm/jit/abi.h): Added.
+ * src/vm/jit/replace.c: Likewise.
+ * src/vm/jit/allocator/lsra.c: Likewise.
+ * src/vm/jit/powerpc/darwin/md-asm.h
+ (asm_vm_call_method_exception_handler): Added.
+ * src/vm/jit/powerpc/darwin/md-abi.c (regs): Added.
+
+2006-03-30 10:14 twisti
+
+ * src/vm/jit/codegen-common.c: Use ENABLE_DISASSEMBLER.
+ * src/vm/jit/codegen-common.h: Likewise.
+ * src/vm/jit/stack.c: Likewise. Plus ENABLE_LSRA.
+ * src/vm/jit/disass.h: Likewise.
+ * src/vm/jit/jit.c: Likewise. Plus ENABLE_LOOP.
+
+2006-03-30 10:10 twisti
+
+ * src/vm/jit/powerpc/patcher.c (patcher_invokevirtual): Use disp
+ variable for code patching. This will ease the overflow code
+ comming.
+ (patcher_invokeinterface): Likewise.
+ (patcher_checkcast_instanceof_interface): Likewise.
+
+2006-03-30 09:52 twisti
+
+ * src/vm/exceptions.c (exceptions_handle_exception): Check for special
+ * start/endpc-NULL case. This makes asmpart stuff much easier, like on
+ * Darwin or IRIX.
+
+ * src/vm/jit/asmpart.h (asm_vm_call_method_exception_handler): Added.
+
+ * src/vm/jit/alpha/asmpart.S (asm_vm_call_method_exception_handler):
+ Export it.
+ (asm_vm_call_method): Don't put label addresses into the
+ "data-segment", as it's located in the .text area and that may be
+ read-only.
+ * src/vm/jit/i386/asmpart.S: Likewise.
+ * src/vm/jit/mips/asmpart.S: Likewise.
+ * src/vm/jit/x86_64/asmpart.S: Likewise.
+
+2006-03-30 09:20 twisti
+
+ * src/vm/jit/mips/asmpart.S (asm_vm_call_method): Return NULL for
+ exception.
+
+2006-03-30 08:48 twisti
+
+ * configure.ac (opcodes): Check for disassembler symbol as
+ init_disassemble_info isn't defined everywhere, like NetBSD.
+
+2006-03-29 23:11 twisti
+
+ * src/vm/jit/powerpc/netbsd: New directory.
+ * src/vm/jit/powerpc/netbsd/md-abi.h: New file.
+ * src/vm/jit/powerpc/netbsd/md-os.c: Likewise.
+ * src/vm/jit/powerpc/netbsd/md-asm.h: Likewise.
+ * src/vm/jit/powerpc/netbsd/Makefile.am: Likewise.
+ * src/vm/jit/powerpc/netbsd/md-abi.c: Likewise.
+ * src/vm/jit/powerpc/netbsd/.cvsignore: Likewise.
+ * configure.ac (host_os): Added NetBSD.
+ (AC_CONFIG_FILES): Added src/vm/jit/powerpc/netbsd/Makefile.
+
+2006-03-28 15:43 twisti
+
+ * tests/regression/codepatching/test.java: Made functions static
+ final.
+ --This line, and those below, will be ignored--
+
+ M test.java
+
+2006-03-28 15:41 twisti
+
+ * src/vm/jit/i386/codegen.c (codegen): Changed signature to use
+ jitdata. Renamed reg_of_var by codegen_reg_of_var.
+ * src/vm/jit/i386/codegen.h (M_COPY): Likewise.
+
+2006-03-28 15:14 twisti
+
+ * configure.ac (AC_CONFIG_FILES): Added src/vm/jit/ifconv/Makefile.
+
+2006-03-28 15:10 twisti
+
+ * src/vm/jit/Makefile.am (DIST_SUBDIRS): Added ifconv.
+ * src/vm/jit/ifconv: New directory.
+ * src/vm/jit/ifconv/ifconv.c: New file.
+ * src/vm/jit/ifconv/Makefile.am: Likewise.
+ * src/vm/jit/ifconv/ifconv.h: Likewise.
+ * src/vm/jit/ifconv/.cvsignore: Likewise.
+
+2006-03-28 14:52 twisti
+
+ * src/vm/method.h (vm/jit/code.h): Added.
+ (codeinfo, rplpoint, executionstate, sourcestate): typedef's removed.
+
+ * src/vm/jit/codegen-common.c (codegendata): Removed code.
+ (codegen_setup, codegen_finish, createnativestub, codegen)
+ (intrp_codegen): Changed signature to use jitdata.
+ (reg_of_var): Renamed to codegen_reg_of_var. Changed signature.
+ (codegen_free): Removed.
+ * src/vm/jit/codegen-common.h: Likewise.
+
+ * src/vm/jit/stack.c (lock_show_icmd): Renamed to
+ lock_stack_show_icmd.
+ (analyse_stack): Renamed to stack_analyse. Changed signature to use
+ jitdata.
+ (ICMD_IF_ICMPxx): Make ICMD_IFxx last instruction in basic block. This
+ is required for if-conversion.
+ (stack_print): Renamed to stack_print_stack.
+ (show_icmd_method): Renamed to stack_show_method. Changed signature to
+ use jitdata.
+ (show_icmd_block): Renamed to stack_show_basicblock. Changed signature
+ to use jitdata.
+ (show_icmd): Renamed to stack_show_icmd.
+ * src/vm/jit/stack.h: Likewise.
+
+ * src/vm/jit/code.h (codeinfo): Added typedef.
+
+ * src/vm/jit/dseg.c (assert.h): Moved.
+ (dseg_resolve_datareferences, dseg_display): Changed signature to use
+ jitdata.
+ * src/vm/jit/dseg.h: Likewise.
+
+ * src/vm/jit/verify/typecheck.c (typecheck): Changed signature to use
+ jitdata.
+ * src/vm/jit/verify/typecheck.h: Likewise.
+
+ * src/vm/jit/loop/loop.c (analyseGraph): Changed signature to use
+ jitdata.
+ * src/vm/jit/loop/loop.h: Likewise.
+ * src/vm/jit/loop/graph.c (depthFirst): Likewise.
+ * src/vm/jit/loop/graph.h: Likewise.
+ * src/vm/jit/loop/analyze.c (optimize_loops): Likewise.
+ * src/vm/jit/loop/analyze.h: Likewise.
+ * src/vm/jit/allocator/lsra.c (lsra): Likewise.
+ * src/vm/jit/allocator/lsra.h: Likewise.
+ * src/vm/jit/allocator/simplereg.c (interface_regalloc)
+ (local_regalloc,allocate_scratch_registers): Likewise.
+ * src/vm/jit/allocator/simplereg.h: Likewise.
+ * src/vm/jit/parse.c (parse): Likewise.
+ * src/vm/jit/replace.c (replace_create_replacement_points): Likewise.
+ * src/vm/jit/intrp/codegen.c (intrp_codegen): Likewise.
+ * src/vm/jit/reg.c (reg_setup): Likewise.
+ * src/vm/jit/reg.h: Likewise.
+
+ * src/vm/jit/jit.c (jit_compile): Use new function signatures and
+ jitdata structure.
+ (jit_compile_intern): Changed signature to use jitdata.
+ * src/vm/jit/jit.h (jitdata): Added.
+ (ICMD_OPCODE_MASK): Likewise.
+ (ICMD_CONDITION_MASK): Likewise.
+
+ * src/vm/jit/replace.h (rplpoint, executionstate, sourcestate):
+ typedef's added.
+ (replace_create_replacement_points): Changed signature to use jitdata.
+
+ * src/vm/jit/parse.h (INDEX_ONEWORD, INDEX_TWOWORD): Use goto.
+ (parse): Changed signature to use jitdata.
+
+2006-03-28 14:31 twisti
+
+ * src/vm/jit/x86_64/md.c (md_signal_handler_sigsegv)
+ (md_signal_handler_sigfpe): Comment changes.
+
+2006-03-28 14:30 twisti
+
+ * src/vm/jit/i386/codegen.c (createnativestub): Replaced _exceptionptr
+ by _no_threads_exceptionptr.
+
+2006-03-28 14:22 twisti
+
+ * NEWS: Added upcoming 0.96 release. Added miranda-methods fix.
+
+2006-03-28 14:21 twisti
+
+ * src/tests/regression/native/checkjni.c (PushLocalFrame): New method.
+ * src/tests/regression/native/checkjni.java (PushLocalFrame):
+ Likewise.
+ (equal(int,int)): Likewise.
+ * src/tests/regression/native/Makefile.am (NOTESTNAMES): Added.
+
+2006-03-28 11:54 twisti
+
+ * src/vm/jit/x86_64/codegen.c (codegen): Renamed parentargs_base to
+ stackframesize.
+ * tests/regression/extest.2output: Updated.
+
+2006-03-28 10:42 twisti
+
+ * src/vm/Makefile.am (noinst_LTLIBRARIES): Reformatted.
+
+2006-03-28 10:21 twisti
+
+ * src/native/vm/VMClassLoader.c (loadClass): Smaller changes.
+
+2006-03-28 09:41 twisti
+
+ * src/native/native.c (dummynativetable): Renamed getModifiers
+ functions to getModifiersInternal due to GNU Classpath VM interface
+ changes.
+ * src/native/vm/Constructor.c (getModifiers): Renamed to
+ getModifiersInternal.
+ * src/native/vm/Field.c (getModifiers): Likewise.
+ * src/native/vm/Method.c (getModifiers): Likewise.
+
+2006-03-27 11:37 twisti
+
+ * src/vm/class.c: Don't initialize classes to NULL.
+
+ * src/vm/loader.c (loader_load_all_classes): Added NDEBUG.
+ * src/vm/builtin.c (builtin_new): Likewise.
+ * src/vm/jit/codegen-common.c (codegen_createnativestub): Likewise.
+ (codegen_disassemble_nativestub): Likewise.
+ * src/vm/jit/codegen-common.h (codegen_disassemble_nativestub):
+ Likewise.
+ * src/vm/jit/stack.c (stack_print): Likewise.
+ * src/vm/jit/stack.h (stack_print, show_icmd_method, show_icmd_block)
+ (show_icmd): Likewise.
+ * src/vm/exceptions.c (exceptions_handle_exception): Likewise.
+ * src/vm/linker.c (link_class_intern): Likewise.
+ * src/cacao/cacao.c (main): Likewise.
+
+ * src/vm/jit/x86_64/codegen.c: Likewise.
+ * src/vm/jit/x86_64/asmpart.S (asm_vm_call_method): Likewise.
+ * src/vm/jit/x86_64/Makefile.am (DISASS_SOURCES): Added. Put into
+ ENABLE_DISASSEMBLER.
+
+ * src/vm/jit/jit.c (jit_compile_intern): Added ENABLE_LOOP.
+ * src/vm/vm.c (vm_create): Added ENABLE_PROFILING.
+ (vm_exit_handler): Likewise.
+
+ * configure.ac (AC_ENABLE_SHARED, AC_DISABLE_STATIC): Removed. Set it
+ manually.
+ (EXPORT_SYMBOLS_FLAGS): Removed.
+ (--enable-disassembler): Added.
+ (--ensable-loop): Likewise.
+ (--ensable-profiling): Likewise.
+ (--ensable-libjvm): Likewise.
+ (--ensable-inlining): Moved.
+
+ * src/vm/jit/Makefile.am (LOOP_LIB): Added. Put into ENABLE_LOOP.
+ (PROFILE_LIB): Put into ENABLE_PROFILING.
+ * src/cacao/Makefile.am (cacao_LDFLAGS): Use -export-dynamic and let
+ libtool do the work. Add -all-static for ENABLE_STATICVM.
+
+ * src/lib/Makefile.am: Made it -j aware.
+
+ * src/vm/resolve.c (config.h, vm/global.h): Added.
+ * src/vm/classcache.c (config.h): Moved to top.
+
+ * src/vm/exceptions.h: Small change.
+
+2006-03-27 11:15 twisti
+
+ * src/vm/utf8.c: Removed superfluous comment.
+
+2006-03-24 11:50 motse
+
+ * src/cacao/cacao.c (main): remove debug code
+
+2006-03-23 12:48 edwin
+
+ * src/vm/jit/parse.h (bound_check): Renamed to CHECK_BYTECODE_INDEX,
+ made
+ a NOP for ENABLE_VERIFIER undefined.
+ (bound_check_exclusive): Renamed to CHECK_BYTECODE_INDEX_EXCLUSIVE,
+ made
+ a NOP for ENABLE_VERIFIER undefined.
+
+ * src/vm/jit/parse.c (fillextable): Cleaned up.
+ (bound_check): Renamed to CHECK_BYTECODE_INDEX.
+ (bound_check_exclusive): Renamed to CHECK_BYTECODE_INDEX_EXCLUSIVE.
+ (parse): Only do checks if ENABLE_VERIFIER is defined.
+
+2006-03-23 11:22 edwin
+
+ * src/vm/jit/parse.c (CHECK_END_OF_BYTECODE): Added a macro for
+ checking
+ the end of the bytecode that becomes a NOP if ENABLE_VERIFIER is
+ undefined.
+
+2006-03-23 02:06 edwin
+
+ * src/vm/jit/parse.c (parse): Uncuddled else's.
+
+2006-03-23 00:56 edwin
+
+ * src/vm/jit/powerpc/darwin/md-asm.h (_asm_replacement_out)
+ (_asm_replacement_in, _replace_me): Added #defines for Darwin.
+
+2006-03-23 00:30 edwin
+
+ * src/vm/jit/stack.h (CHECK_STACK_DEPTH): Added. Uses goto to a common
+ label for stack depth mismatches.
+ (MARKREACHED): Use CHECK_STACK_DEPTH, which becomes a NOP if
+ ENABLE_VERIFIER is undefined.
+
+ * src/vm/jit/stack.c (anaylse_stack): Use CHECK_STACK_DEPTH.
+ Added common label `throw_stack_depth_error` for stack depth
+ mismatches.
+ Uncuddled else's.
+
+2006-03-23 00:08 edwin
+
+ * src/vm/global.h (TYPECHECK_STACK_COMPCAT): Replaced by
+ ENABLE_VERIFIER.
+ The separation made no sense, anyway.
+
+ * src/vm/jit/stack.c (TYPECHECK_STACK_COMPCAT): Replaced by
+ ENABLE_VERIFIER.
+ (analyse_stack): Removed code duplication by branching to a common
+ label
+ for all computational category errors: throw_stack_category_error.
+
+2006-03-22 23:51 edwin
+
+ * src/vm/jit/stack.h (BBEND): Inlined this macro (used only once) at
+ its
+ call site in stack.c.
+
+ * src/vm/jit/stack.c (analyse_stack): Inlined BBEND macro and cleaned
+ up
+ the code.
+
+2006-03-22 23:29 edwin
+
+ * src/vm/jit/stack.c (analyse_stack): Removed obsolete label
+ `icmd_store`.
+
+2006-03-22 23:27 edwin
+
+ * src/vm/jit/jit.h (ICMD_READONLY_ARG, ICMD_CLEAR_ARGREN): Removed.
+
+ * src/vm/jit/stack.c (analyse_stack): Removed obsolete argument
+ renaming.
+
+ * src/vm/jit/verify/typecheck.c (verify_basic_block): Removed
+ ICMD_READONLY_ARG and ICMD_CLEAR_ARGREN.
+
+2006-03-22 23:17 edwin
+
+ * src/vm/jit/stack.h (TYPE_VERIFYERROR): Changed to CHECK_BASIC_TYPE.
+ This
+ macro now becomes a NOP if ENABLE_VERIFIER is undefined. Otherwise it
+ uses
+ a goto to the common label throw_stack_type_error in order to save
+ space.
+
+ * src/vm/jit/stack.c (analyse_stack): Added variable `expectedtype`
+ for use
+ by CHECK_BASIC_TYPE. Added label throw_stack_type_error.
+
+2006-03-22 20:59 edwin
+
+ * src/vm/jit/i386/asmpart.S (asm_vm_call_method): Save/restore stack
+ pointer
+ properly. Fixed copy&paste error in restoring callee-save registers.
+
+2006-03-22 18:32 edwin
+
+ * src/vm/jit/stack.c (analyse_stack): Added throw_stack_overflow
+ label.
+
+ * src/vm/jit/stack.h (CHECKOVERFLOW): Make this a NOP if
+ ENABLE_VERIFIER
+ is undefined.
+ (REQUIRE): Use #if defined(...)
+
+2006-03-22 17:25 edwin
+
+ * src/vm/jit/stack.h (REQUIRE): Made a NOP if ENABLE_VERIFIER is
+ undefined.
+
+ * src/vm/jit/stack.c (analyse_stack): Only define
+ throw_stack_underflow
+ if ENABLE_VERIFIER is defined.
+ (jit_type): Do not define that for NDEBUG.
+
+2006-03-22 17:14 edwin
+
+ * src/vm/jit/stack.h (REQUIRE): Avoid duplication of exception
+ throwing code.
+
+ * src/vm/jit/stack.c (analyse_stack): Added label
+ throw_stack_underflow
+ for the REQUIRE macro.
+
+2006-03-22 15:30 edwin
+
+ * src/vm/jit/powerpc/md.c (DISASSINSTR): #ifdef'ed
+ * src/vm/jit/alpha/md.c (DISASSINSTR): #ifdef'ed
+ * src/vm/jit/i386/md.c (DISASSINSTR): #ifdef'ed
+ * src/vm/jit/x86_64/md.c (DISASSINSTR): #ifdef'ed
+ * src/vm/jit/mips/md.c (DISASSINSTR): #ifdef'ed
+
+2006-03-22 12:35 edwin
+
+ * src/vm/jit/inline/inline.c (stack_depth): Moved here from
+ inline_debug.c.
+ (NDEBUG): Put debug stuff inside #ifndef NDEBUG.
+
+ * src/vm/jit/inline/inline_debug.c (stack_depth): Moved to inline.c
+
+2006-03-22 09:19 edwin
+
+ * src/vm/jit/inline/inline_debug.c (debug_dump_stack): Fixed warning
+ on
+ platforms that don't define NULL as a pointer.
+
+2006-03-22 01:22 edwin
+
+ * src/vm/jit/inline/inline.c (relocate_stack_ptr_inter,
+ rewrite_method):
+ Fixed warnings.
+
+ * src/vm/jit/inline/inline_debug.c (DEBUG_SLOT, dump_inline_tree):
+ Fixed warnings.
+
+2006-03-21 14:07 twisti
+
+ * src/vm/jit/i386/codegen.h (ALIGNCODENOP): Added.
+
+ * src/vm/jit/i386/codegen.c (codegen): Renamed to parentargs_base to
+ stackframesize. Align stack to 16-bytes.
+ (ICMD_GOTO): Use ALIGNCODENOP.
+
+ * src/vm/jit/i386/asmpart.S (asm_vm_call_method): Align stack to
+ 16-bytes. Use register defines for better readability.
+
+2006-03-21 11:58 twisti
+
+ * src/vm/jit/Makefile.am: Removed ifconv. Again...
+
+2006-03-21 11:50 twisti
+
+ * configure.ac (AC_INIT): Changed cvs to svn.
+ (--enable-inlining): Added.
+
+ * src/vm/jit/Makefile.am (DIST_SUBDIRS): Added ifconv.
+ (ENABLE_IFCONV): Added. Use IFCONV_LIB.
+ (USE_INLINING): Renamed to ENABLE_INLINING.
+
+2006-03-21 07:57 edwin
+
+ * src/vm/jit/alpha/codegen.c (codegen): Comment 16-byte stack
+ alignment.
+
+ * src/vm/jit/alpha/asmpart.S (asm_replacment_out): Fix comment about
+ stack layout.
+
+2006-03-21 07:42 edwin
+
+ * src/vm/jit/alpha/asmpart.S (REPLACEMENT_ROOM): Fixed deleted
+ characters.
+
+2006-03-21 04:14 edwin
+
+ * src/vm/jit/inline/Makefile.am (AM_CPPFLAGS): Added OS include dir.
+
+2006-03-21 03:15 edwin
+
+ * src/vm/jit/inline/inline_debug.c: Added file.
+
+2006-03-21 00:13 edwin
+
+ * src/vm/jit/inline/inline.c: Committed the inliner. This code works
+ but
+ it is still in prototyping stage.
+
+ * src/vm/jit/parse.c (parse): Added (#if 0-ed) code for storing the
+ exception table that the inliner uses.
+
+2006-03-21 00:04 motse
+
+ major rework of jvmti. now we have three processes in jvmti mode.
+ there are still many debug statements
+
+2006-03-20 23:56 edwin
+
+ * src/vm/jit/code.h (codeinfo): Comment that profiling fields
+ will be removed.
+
+2006-03-20 15:41 edwin
+
+ * src/vm/jit/alpha/asmpart.S (asm_replacement_out): 16-byte align
+ stack.
+
+2006-03-20 15:37 edwin
+
+ * doc/stack_frames.txt: Some fixes, described PowerPC stack frames.
+
+2006-03-20 15:12 twisti
+
+ * src/vm/jit/alpha/codegen.c (codegen): Align stack to 16-bytes in
+ replacement stub.
+ * src/vm/jit/alpha/asmpart.S (asm_replacement_out): Load GP before
+ symbolic jumps.
+
+2006-03-20 14:43 twisti
+
+ * autogen.sh, src/boehm-gc/autogen.sh: Prefix all shell variables with
+ CACAO_ to prevent problems on OpenBSD.
+
+2006-03-20 14:27 twisti
+
+ * src/boehm-gc/darwin_stop_world.c,
+ src/boehm-gc/threadlibs.c,
+ src/boehm-gc/doc/README.changes,
+ src/boehm-gc/doc/README,
+ src/boehm-gc/doc/gcinterface.html,
+ src/boehm-gc/mark.c,
+ src/boehm-gc/include/gc.h,
+ src/boehm-gc/include/gc_cpp.h,
+ src/boehm-gc/include/gc_pthread_redirects.h,
+ src/boehm-gc/include/leak_detector.h,
+ src/boehm-gc/include/gc_config_macros.h,
+ src/boehm-gc/include/private/gc_priv.h,
+ src/boehm-gc/include/private/gcconfig.h,
+ src/boehm-gc/include/private/gc_pmark.h,
+ src/boehm-gc/include/private/gc_locks.h,
+ src/boehm-gc/configure.in,
+ src/boehm-gc/allchblk.c,
+ src/boehm-gc/powerpc_darwin_mach_dep.s,
+ src/boehm-gc/dbg_mlc.c,
+ src/boehm-gc/version.h,
+ src/boehm-gc/pthread_stop_world.c,
+ src/boehm-gc/malloc.c,
+ src/boehm-gc/headers.c,
+ src/boehm-gc/pthread_support.c,
+ src/boehm-gc/Makefile.direct,
+ src/boehm-gc/os_dep.c,
+ src/boehm-gc/Makefile.am,
+ src/boehm-gc/dyn_load.c,
+ src/boehm-gc/alloc.c,
+ src/boehm-gc/misc.c: Updated to upstream version 6.7.
+
+2006-03-19 19:46 edwin
+
+ * src/vm/jit/code.c (code_get_stack_frame_size): Implement stack
+ alignment
+ for MIPS.
+
+ * src/vm/jit/mips/md.c (md_patch_replacement_point): Added.
+
+ * src/vm/jit/mips/codegen.c (codegen): Handle replacement points.
+ 8-byte align blocks that start with replacement points.
+
+ * src/vm/jit/mips/asmpart.S (asm_replacement_out): Added.
+ (asm_replacement_in): Likewise.
+
+ * src/vm/jit/replace.c (replace_activate_replacement_point): Activated
+ for MIPS.
+ (replace_deactivate_replacement_poin): Likewise.
+ (replace_me): Likewise.
+ (replace_read_executionstate): MIPS also keeps returnAddress in ITMP1.
+ (replace_write_executionstate): Likewise.
+
+ * doc/stack_frames.txt: Documented MIPS stack frames.
+
+ * src/vm/jit/powerpc/asmpart.S (asm_replacement_out): Fixed comment.
+
+2006-03-18 04:14 edwin
+
+ * src/vm/jit/powerpc/md.c (md_patch_replacement_point): Added.
+
+ * src/vm/jit/powerpc/codegen.c (codegen): Handle replacement points.
+
+ * src/vm/jit/powerpc/asmpart.S (asm_replacement_out): Added.
+ (asm_replacement_in): Likewise.
+
+ * src/vm/jit/alpha/codegen.c (codegen): Added missing initialization
+ of `replacementpoint`.
+
+ * src/vm/jit/alpha/asmpart.S (asm_replacement_out): Store PV register.
+
+ * src/vm/jit/code.c (code_get_sync_slot_count): Ported to PowerPC.
+ (code_get_stack_frame_size): Likewise.
+
+ * src/vm/jit/replace.c (replace_activate_replacement_point)
+ (replace_deactivate_replacement_poin): Activated for PowerPC.
+ (replace_read_value, replace_write_value): Added.
+ (replace_read_executionstate): Ported to PowerPC, more complete
+ data type handling.
+ (replace_write_executionstate): Ported to Ported, more complete
+ data type handling, fixed missing initialization of `topslot`.
+ (replace_me): Activated for PowerPC.
+
+2006-03-16 23:32 edwin
+
+ * src/vm/jit/alpha/codegen.c (codegen): Use `disp` for displacement.
+
+2006-03-16 21:12 edwin
+
+ * src/vm/jit/alpha/md.c (Changes): Added my name.
+
+2006-03-16 21:11 edwin
+
+ * src/vm/jit/alpha/md.c (md_patch_replacement_point): Added.
+ (vim boilerplate): Added.
+
+ * src/vm/jit/replace.c (replace_activate_replacement_point)
+ (replace_deactivate_replacement_point, replace_me):
+ Activated replacement for alpha.
+
+2006-03-16 20:31 edwin
+
+ * src/vm/jit/alpha/asmpart.S (asm_replacement_out)
+ (asm_replacement_in): Use stt/ldt for float registers.
+
+ * src/vm/jit/alpha/codegen.c (codegen): Put replacement-out stub
+ generation in correct scope. Fix warnings.
+
+2006-03-16 19:55 edwin
+
+ * src/vm/jit/alpha/codegen.c (codegen): Handle replacement points.
+
+ * src/vm/jit/alpha/asmpart.S (asm_replacement_out): Added.
+ (asm_replacement_in): Likewise.
+ (vim boilerplate): Added.
+
+2006-03-16 19:36 edwin
+
+ * src/vm/jit/replace.c (replace_read_executionstate)
+ (replace_write_executionstate): Position of synchronization slot must
+ be calculated from low addresses up, instead of backwards from stack
+ base.
+
+2006-03-16 19:00 edwin
+
+ * src/vm/jit/replace.c (replace_create_replacement_points): Set
+ isleafmethod.
+
+2006-03-16 18:57 edwin
+
+ * src/vm/jit/code.c (code_codeinfo_new): Set codeinfo.isleafmethod.
+
+2006-03-16 18:44 edwin
+
+ * src/vm/jit/x86_64/codegen.c (codegen): Reuse `disp` variable.
+ * src/vm/jit/i386/codegen.c (codegen): Likewise.
+
+2006-03-16 18:38 edwin
+
+ * src/vm/jit/i386/asmpart.S (asm_replacement_out): Added pv.
+ * src/vm/jit/x86_64/asmpart.S (asm_replacement_out): Added pv.
+
+ * src/vm/jit/replace.c (replace_read_executionstate)
+ (replace_write_executionstate): Prepared for alpha. Some cleanup.
+
+ * src/vm/jit/replace.c (replace_write_executionstate):
+ Calculate stack pointer from given stack base.
+ (replace_executionstate_println): Added pv.
+ (replace_sourcestate_println): Added stackbase.
+
+ * src/vm/jit/replace.h (executionstate): Added pv.
+ (sourcestate): Added stackbase.
+
+ * src/vm/jit/tools/genoffsets.c (main): Added offes_pv.
+
+ * doc/stack_frames.txt: Clarifications.
+
+2006-03-16 18:32 edwin
+
+ * src/vm/jit/code.c (code_get_sync_slot_count): No synchronization
+ slots
+ if USE_THREADS is undefined.
+ (code_get_stack_frame_size): Added x86_64 alignment slot.
+
+2006-03-16 17:29 edwin
+
+ * doc/stack_frames.txt: Added description of x86_64 stack frames.
+
+2006-03-16 17:24 twisti
+
+ * src/vm/jit/mips/md.c (sys/cachectl.h): Added.
+ (md_cacheflush, md_icacheflush, md_dcacheflush): New method.
+
+ * src/vm/jit/mips/codegen.c: Use new exception stubs.
+ * src/vm/jit/mips/codegen.h (gen_nullptr_check, gen_bound_check)
+ (gen_div_check): Use new add reference functions.
+
+ * src/vm/jit/mips/patcher.c: Replaced cacheflush with md_icacheflush
+ or md_dcacheflush.
+
+ * src/vm/jit/mips/asmpart.S: (asm_calljavafunction): Removed.
+ (asm_calljavafunction2): Renamed to asm_vm_call_method. Pointer to
+ vm_arg block is now in a2. Use new defines.
+
+2006-03-16 17:22 edwin
+
+ * doc/stack_frames.txt: Added description of alpha stack frames.
+
+2006-03-16 17:16 twisti
+
+ * src/vm/vm.c (version): Check if __VERSION__ is defined.
+
+2006-03-16 15:36 twisti
+
+ * src/vm/jit/x86_64/md.c (md_cacheflush): New method.
+
+2006-03-16 15:28 edwin
+
+ * src/vm/jit/alpha/codegen.c (codegen): Cast to avoid compiler
+ warning.
+
+2006-03-16 15:19 twisti
+
+ * src/vm/jit/alpha, src/vm/jit/alpha/linux,
+ src/vm/jit/alpha/linux/.cvsignore, src/vm/jit/alpha/freebsd,
+ src/vm/jit/alpha/freebsd/.cvsignore, src/vm/jit/alpha/.cvsignore:
+ Added TAGS.
+
+2006-03-16 15:16 twisti
+
+ * src/vm/jit/alpha/md.c (md_cacheflush, md_icacheflush): New method.
+ * src/vm/jit/alpha/asmpart.S (asm_sync_instruction_cache): Renamed to
+ asm_cacheflush.
+ * src/vm/jit/alpha/patcher.c: Replaced asm_sync_instruction_cache with
+ md_icacheflush.
+
+2006-03-16 14:29 twisti
+
+ * src/vm/jit/i386/md.c (md_cacheflush): New method.
+
+2006-03-16 14:23 twisti
+
+ * src/vm/jit/powerpc, src/vm/jit/powerpc/linux,
+ src/vm/jit/powerpc/linux/.cvsignore, src/vm/jit/powerpc/darwin,
+ src/vm/jit/powerpc/darwin/.cvsignore, src/vm/jit/powerpc/.cvsignore:
+ Added TAGS.
+
+2006-03-16 14:19 twisti
+
+ * src/vm/jit/jit.h (md_cacheflush, md_icacheflush, md_dcacheflush):
+ Added.
+ * src/vm/jit/asmpart.h (asm_sync_instruction_cache): Removed.
+
+ * src/vm/jit/codegen-common.c (codegen_finish): Call md_cacheflush for
+ the dynamic superinstructions (intrp) and the generated code.
+
+ * src/vm/jit/powerpc/codegen.c: Use new exception stubs.
+ * src/vm/jit/powerpc/codegen.h (gen_nullptr_check, gen_bound_check):
+ Use new add reference functions.
+
+ * src/vm/jit/powerpc/md.c (vm/jit/asmpart.h): Added.
+ (md_cacheflush, md_icacheflush, md_dcacheflush): New function.
+ * src/vm/jit/powerpc/patcher.c: Use new cache flush functions.
+
+2006-03-16 14:00 twisti
+
+ * src/cacao/cacao.c (mm/boehm.h, mm/memory.h): Removed.
+
+2006-03-16 13:59 twisti
+
+ * src/vm/jit/intrp/engine.c (USE_spTOS): Define it for __POWERPC__,
+ __POWERPC64__, __SPARC__. We know we need it there.
+
+2006-03-16 13:56 twisti
+
+ * tests/regression/native/Makefile.am (AM_CPPFLAGS): Added OS_DIR.
+
+2006-03-16 12:53 twisti
+
+ * src/vm/jit/tools/Makefile.am, src/vm/jit/verify/Makefile.am,
+ src/vm/jit/loop/Makefile.am, src/vm/jit/profile/Makefile.am,
+ src/cacao/Makefile.am, src/native/tools/Makefile.am,
+ src/native/vm/Makefile.am, src/native/Makefile.am,
+ src/toolbox/Makefile.am, src/mm/Makefile.am, src/cacaoh/Makefile.am
+ (AM_CPPFLAGS): Added OS_DIR.
+
+2006-03-16 12:03 twisti
+
+ * src/vm/jit/alpha/codegen.c: Use new exception stubs.
+ * src/vm/jit/alpha/codegen.h (gen_nullptr_check, gen_bound_check): Use
+ new add reference functions.
+
+2006-03-16 04:38 edwin
+
+ * src/vm/jit/replace.h (RPLPOINT_SBR): Removed obsolete flag constant.
+
+2006-03-16 04:17 edwin
+
+ * src/vm/jit/code.c (code_codeinfo_new): Commented.
+ (code_get_sync_slot_count): Added.
+ (code_get_stack_frame_size): Commented.
+ (code_codeinfo_free): Commented.
+ (code_free_code_of_method): Commented. Some cleanup.
+
+ * src/vm/jit/code.h (code_get_sync_slot_count): Added.
+
+ * src/vm/jit/i386/codegen.c (codegen): Use cd->lastmcodeptr to avoid
+ patching over basic block boundaries.
+ * src/vm/jit/x86_64/codegen.c (codegen): Likewise.
+
+ * src/vm/jit/replace.h (rplpoint): `type` and `flags` added,
+ `hashlink` removed.
+ (sourcestate): Added slots for synchronized methods.
+
+ * src/vm/jit/replace.c (replace_create_replacement_points): Store
+ basicblock
+ type.
+ (replace_read_executionstate, replace_write_executionstate):
+ Handle 2-word locals. Special handling for BBTYPE_SBR and BBTYPE_EXH
+ blocks.
+ Transfer synchronization slots.
+
+2006-03-16 00:05 edwin
+
+ * src/vm/jit/code.c (code_get_stack_frame_size): Deal with 4/8-byte
+ stackslots.
+
+ * src/vm/jit/tools/genoffsets.c (main): Offsets of intregs and
+ fltregs.
+
+ * src/vm/jit/i386/asmpart.S (asm_replacement_out): Renamed regs to
+ intregs. Some cleanup.
+
+ * src/vm/jit/replace.c (replace_activate_replacement_point)
+ (replace_deactivate_replacement_point): Enabled on x86_64.
+ (replace_read_executionstate, replace_write_executionstate):
+ Deal with 4/8-byte stackslots. Handle float registers.
+ (replace_executionstate_println, replace_sourcestate_println):
+ Print register names where possible.
+
+ * src/vm/jit/x86_64/md.c (md_patch_replacement_point): Added.
+ (vim boilerplate): Added.
+
+ * src/vm/jit/x86_64/codegen.c (codegen): Handle replacement points.
+ Generate replacement-out stubs.
+
+ * src/vm/jit/x86_64/asmpart.S (asm_replacement_out,
+ asm_replacement_in):
+ Added.
+ (vim boilerplate): Added.
+
+ * src/vm/jit/replace.h (executionstate): Separate registers into int
+ and float registers. Some cleanup, use INT_REG_CNT, FLT_REG_CNT
+ macros.
+
+2006-03-15 21:27 edwin
+
+ * src/vm/jit/replace.c (replace_read_executionstate): Commented.
+ (replace_write_executionstate): Likewise, and set new PC here.
+ (replace_me): Target PC is now set in replace_write_executionstate.
+
+2006-03-15 20:53 edwin
+
+ * src/vm/jit/code.h (codeinfo): Changed regalloc to use rplalloc
+ structs.
+ Added fields storing stack slot counts.
+
+ * src/vm/jit/code.c, src/vm/jit/code.h (code_get_stack_frame_size):
+ Added.
+
+ * src/vm/jit/replace.c (replace_create_replacement_points): Store full
+ allocation info for locals and stack slots in rplalloc structs. Store
+ number of stack slots.
+
+ * src/vm/jit/replace.c (replace_read_executionstate): Added.
+ (replace_write_executionstate): Likewise.
+
+ * src/vm/jit/replace.c (replace_me): Use dump memory for sourcestate.
+ Read an write executionstate. Do actual replace by calling
+ asm_replace_in.
+
+ * src/vm/jit/replace.c (replace_replacement_point_println)
+ (replace_executionstate_println): Print new fields. Show correct
+ number
+ of stack slots.
+ (replace_sourcestate_println): Added.
+
+ * src/vm/jit/replace.h (rplalloc): Added.
+ (rplpoint): Changed regalloc fields to use rplalloc structs.
+ (executionstate): Removed saved regs.
+ (sourcestate): Added saved regs.
+ (replace_executionstate_println): Now takes codeinfo* argument.
+ (replace_sourcestate_println): Added.
+
+2006-03-15 20:43 edwin
+
+ * doc/stack_frames.txt: Added arrows indicating increasing
+ addresses/indices.
+
+2006-03-15 20:42 edwin
+
+ * src/vm/jit/asmpart.h (asm_replacement_in): Added prototype.
+
+2006-03-15 20:40 edwin
+
+ * src/vm/jit/i386/asmpart.S (asm_replacement_out): Save all integer
+ registers,
+ add space between stack frame and executionstate to accomodate
+ changing stack
+ frame size.
+
+ * src/vm/jit/i386/asmpart.S (asm_replacement_in): Added.
+
+2006-03-15 20:38 edwin
+
+ * src/vm/jit/tools/genoffsets.c (main): Added offset of pc and sp
+ in executionstate.
+
+2006-03-15 17:17 twisti
+
+ * src/vm/jit/i386/codegen.c: Use new exception stubs. Don't cast with
+ M_MOV_IMM.
+ * src/vm/jit/i386/codegen.h (M_MOV_IMM, M_IST_IMM, M_IST32_IMM)
+ (M_PUSH_IMM): Added cast.
+ (M_CMP, M_CMP_MEMBASE, M_CMP_IMM_MEMBASE): Added.
+
+2006-03-15 16:36 twisti
+
+ * src/vm/jit/codegen-common.h (branchref): Removed.
+ (codegendata): Removed xboundrefs, xnullrefs, xcastrefs, xstorerefs,
+ xdivrefs and xexceptionrefs. Added exceptionrefs.
+ (codegen_addxboundrefs, codegen_addxcastrefs, codegen_addxdivrefs)
+ (codegen_addxstorerefs, codegen_addxnullrefs)
+ (codegen_addxexceptionrefs): Removed.
+ (codegen_add_arithmeticexception_ref)
+ (codegen_add_arrayindexoutofboundsexception_ref)
+ (codegen_add_arraystoreexception_ref)
+ (codegen_add_classcastexception_ref)
+ (codegen_add_nullpointerexception_ref)
+ (codegen_add_fillinstacktrace_ref): New function.
+ * src/vm/jit/codegen-common.c: Likewise.
+
+ * src/vm/jit/dseg.h (exceptionref): New structure.
+
+ * src/vm/jit/x86_64/codegen.c: Use new exception stubs. Don't cast
+ with M_MOV_IMM.
+ * src/vm/jit/x86_64/codegen.h (M_MOV_IMM, M_IMOV_IMM): Added cast.
+
+ * src/vm/jit/stacktrace.c (stacktrace_inline_fillInStackTrace): Moved.
+ * src/vm/jit/stacktrace.h (STACKTRACE_inline_arithmeticexception)
+ (STACKTRACE_inline_arrayindexoutofboundsexception)
+ (STACKTRACE_inline_arraystoreexception)
+ (STACKTRACE_inline_classcastexception)
+ (STACKTRACE_inline_nullpointerexception)
+ (STACKTRACE_inline_fillInStackTrace): Added functionptr defines.
+
+ * src/vm/jit/jit.h (branchref): Added.
+
+2006-03-15 12:14 edwin
+
+ * doc/stack_frames.txt: Added slots for synched methods.
+
+2006-03-15 12:04 edwin
+
+ * doc/stack_frames.txt: Added file.
+
+ * src/vm/jit/code.h (codeinfo): Rearranged fields.
+
+ * src/vm/jit/i386/md.c, src/vm/jit/i386/asmpart.S,
+ src/vm/jit/replace.c:
+ Comment changes.
+
+2006-03-15 11:38 edwin
+
+ * src/vm/jit/i386/md.c (md_patch_replacement_point): Generalized to
+ activation and deactivation of replacement points.
+
+ * src/vm/jit/i386/codegen.c (codegen): Prepare machine code for
+ patching replacement points.
+
+ * src/vm/jit/replace.c, src/vm/jit/replace.h
+ (replace_deactivate_replacement_point): Added.
+
+ * src/vm/jit/replace.c
+ (replace_replacement_point_println): Print machine code.
+
+ * src/vm/jit/replace.h (rplpoint): Added `mcode` field.
+
+2006-03-15 11:18 twisti
+
+ * src/vm/jit/i386/codegen.c (GETFIELD, PUTFIELD, PUTFIELDCONST): Use
+ M_ILD32 and M_LLD32 macros.
+ (patcher): Save REG_ITMP3. Don't allocate a codegendata structure,
+ just do it as on Alpha.
+ * src/vm/jit/i386/codegen.h (var_to_reg_lng): Added.
+ (store_reg_to_var_lng): Likewise.
+ (M_ILD32, M_LLD, M_LLD32, M_IST32, M_IST32_IMM, M_LST, M_LST32)
+ (M_LST_IMM, M_LST32_IMM): Likewise.
+
+ * src/vm/jit/i386/patcher.c: Changed position of return address due to
+ saving of REG_ITMP3.
+ * src/vm/jit/i386/asmpart.S (asm_wrapper_patcher): Changed due to
+ saving of REG_ITMP3.
+
+2006-03-15 10:34 edwin
+
+ * src/vm/jit/replace.c (replace_create_replacement_points): Don't use
+ rd->locals in the interpreter -- it's NULL there.
+
+2006-03-15 05:13 edwin
+
+ * src/vm/jit/codegen-common.c (codegen_finish): Removed a compiler
+ warning.
+
+2006-03-15 05:08 edwin
+
+ * src/vm/jit/replace.h, src/vm/jit/i386/md.c
+ (md_patch_replacement_point):
+ Fixed return type.
+
+ * src/vm/jit/replace.c (replace_activate_replacement_point): Only call
+ md_patch_replacement_point if ENABLE_JIT is defined.
+
+2006-03-15 04:57 edwin
+
+ * src/vm/jit/replace.c (replace_activate_replacement_point): Do not
+ use
+ the symbol md_patch_replacement_point on platforms where it does not
+ exist, yet.
+
+2006-03-15 04:43 edwin
+
+ * src/vm/jit/replace.h, src/vm/jit/replace.c
+ (replace_activate_replacement_point): Added.
+ (replace_activate): Added prototype.
+ (md_patch_replacement_point): Added prototype.
+ (replace_me): Added.
+ (replace_replacement_point_println): Added.
+ (replace_show_replacement_points): Cleaned up.
+ (replace_executionstate_println): Added.
+
+ * src/vm/jit/i386/codegen.c (codegen): Generate replacement-out stubs.
+
+ * src/vm/jit/codegen-common.c (codegen_finish): Resolve replacement
+ points.
+
+ * src/vm/jit/asmpart.h, src/vm/jit/i386/asmpart.S
+ (asm_replacement_out): Added.
+
+ * src/vm/method.h (executionstate): Typo fixed.
+
+ * src/vm/jit/stack.c (src/vm/jit/stack.c): Minor output change.
+
+ * src/vm/jit/tools/genoffsets.c (executionstate): Added size and
+ offset.
+
+ * src/vm/jit/i386/md.c (md_patch_replacement_point): Added.
+
+2006-03-15 01:50 edwin
+
+ * src/vm/jit/replace.h, src/vm/jit/replace.c
+ (replace_replacement_info_print): Renamed to
+ replace_show_replacement_points.
+ * src/vm/jit/stack.c: Likewise.
+
+2006-03-15 01:39 edwin
+
+ * src/vm/jit/replace.c, src/vm/jit/replace.h
+ (replace_create_replacement_points): Added.
+ (replace_free_replacement_points): Added.
+ (replace_replacement_info_print): Added.
+
+ * src/vm/jit/replace.h (rplpoint): Changed fields, made fixed length.
+
+ * src/vm/jit/code.h (codeinfo): Changed replacement point fields.
+
+ * src/vm/jit/jit.c (jit_compile_intern): Create replacement points.
+
+ * src/vm/jit/jit.c (jit_compile_intern): Use already allocated
+ codeinfo
+ for do-nothing methods.
+
+ * src/vm/jit/code.c (code_codeinfo_free): Free replacement points.
+
+ * src/vm/jit/stack.c (show_icmd_method): Print replacement points.
+
+2006-03-15 00:06 edwin
+
+ * src/vm/jit/stack.c, src/vm/jit/stack.h (icmd_print_stack): Renamed
+ to
+ stack_print. Documented.
+ (show_icmd_method, show_icmd_block, show_icmd): Documented.
+ (show_icmd_block): Print basicblock.bitflags.
+
+ * src/vm/jit/stack.h (MARKREACHED): Mark targets of backward branches
+ as replacement points (BBFLAG_REPLACEMENT)
+
+2006-03-14 23:49 edwin
+
+ * src/vm/jit/jit.h (basicblock): Added `bitflags` field. Note: The
+ flags
+ of this struct should really be cleaned up.
+
+ * src/vm/jit/jit.h (BASICBLOCK_INIT): Added, so we have a central
+ place
+ where to put initialization of the fields.
+
+ * src/vm/jit/parse.c (parse): Cleaned up basicblock allocation.
+
+2006-03-14 23:16 edwin
+
+ * src/vm/jit/jit.h (basicblock): Comment.
+
+2006-03-14 23:00 edwin
+
+ * src/vm/jit/parse.c (fillextable): Removed unused label_index.
+ (parse): Likewise.
+
+ * src/vm/jit/replace.h: Comment moved.
+
+2006-03-14 22:30 edwin
+
+ * src/native/jvmti/jvmti.c (GetMethodLocation): Use the new
+ m->code field to get to the location of the method.
+
+2006-03-14 22:16 edwin
+
+ * src/vm/method.h (methodinfo): Moved `entrypoint` to `codeinfo`.
+ * src/vm/loader.c (load_method): Likewise.
+
+ * src/vm/loader.c (load_newly_created_array): Use codeinfo.entrypoint.
+ * src/vm/builtin.c (builtin_trace_exception): Likewise. Note:
+ Currently
+ we always use the current codeinfo. This is preliminary.
+
+ * src/vm/jit/powerpc/codegen.c (codegen): Use cd->code->entrypoint.
+ * src/vm/jit/alpha/codegen.c (createnativestub): Likewise.
+ * src/vm/jit/dseg.c (dseg_resolve_datareferences): Likewise.
+ * src/vm/jit/mips/codegen.c (codegen, createnativestub): Likewise.
+ * src/vm/jit/i386/codegen.c (createnativestub): Likewise.
+ * src/vm/jit/intrp/codegen.c (intrp_codegen, intrp_createnativestub)
+ (createcalljavafunction): Likewise.
+ * src/vm/jit/x86_64/codegen.c (createnativestub): Likewise.
+
+ * src/vm/jit/intrp/codegen.c (nativecall): Use m->code->entrypoint.
+
+ * src/vm/jit/codegen-common.h, src/vm/jit/codegen-common.c,
+ src/cacaoh/headers.c (codegen_createnativestub): Now returns
+ the created codeinfo instead of the entrypoint.
+
+ * src/vm/jit/stacktrace.c (stacktrace_add_method): Find the codeinfo
+ that contains the current PC. Note: This is preliminary. We should
+ find the codeinfo * via the PV of the code containing the PC.
+
+ * src/vm/jit/jit.c (jit_compile): Use m->code. Create a codeinfo
+ for native stubs and the do-nothing stub
+
+ * src/vm/jit/codegen-common.c (codegen_finish): Set entrypoint
+ in codeinfo instead of in methodinfo.
+
+2006-03-14 20:59 edwin
+
+ * src/vm/jit/code.c, src/vm/jit/replace.c, src/vm/jit/replace.h:
+ Added GPL header and boilerplate.
+
+2006-03-14 20:57 edwin
+
+ * src/vm/jit/code.h: Added GPL header and boilerplate.
+
+2006-03-14 20:51 edwin
+
+ * src/vm/jit/code.c, src/vm/jit/code.h: Files added.
+
+ * src/vm/jit/replace.c, src/vm/jit/replace.h: Files added.
+
+ * src/vm/jit/Makefile.am (code.[ch], replace.[ch]): Added.
+
+ * src/vm/method.h (methodinfo): Added field `code`. Each method
+ may now have zero or more codeinfo:s associated with it. A
+ codeinfo represents the machine code of a particular version
+ of the compiled method. Note: Some fields in methodinfo that
+ may need to be moved to codeinfo where marked XXX.
+
+ * src/vm/jit/codegen-common.h (codegendata): Added field `code`.
+
+ * src/vm/jit/codegen-common.c (codegen_setup): Allocate
+ a new codeinfo.
+ (codegen_finish): Use `code` field of codegendata.
+ (codegen_createnativestub): Likewise.
+
+ * src/vm/jit/stack.c (show_icmd_method, show_icmd_block):
+ Use `code` field of codegendata.
+ * src/vm/jit/dseg.c (dseg_display): Likewise.
+ * src/vm/jit/jit.c (jit_compile_intern): Likewise. Switch
+ current codeinfo after compilation is complete.
+
+ * src/cacaoh/headers.c (code_free_code_of_method): Added stub.
+
+ * src/vm/method.c (method_free): Free codeinfo:s of method.
+
+ * src/vm/loader.c (load_method): Initialize m->code.
+
+2006-03-14 16:40 twisti
+
+ * src/cacao/Makefile.am (ENABLE_STATICVM): Added cacao_LDFLAGS,
+ otherwise the sumbols are not exported.
+
+ * src/native/include/Makefile.am (ENABLE_STATICVM): Renamed to
+ WITH_STATIC_CLASSPATH.
+
+2006-03-14 16:30 twisti
+
+ * src/vm/jit/stacktrace.c (stacktrace_create): We have to check for an
+ OOM when allocating from the heap. Fixes a crash in Jonas.
+
+2006-03-14 15:00 edwin
+
+ * doc/design_onstack_replacement.txt: More design options added.
+
+2006-03-13 21:26 edwin
+
+ * design_onstack_replacement.txt: Added file.
+
+2006-03-13 11:35 twisti
+
+ * src/vm/vm.c (vm_create): Only put .jar file into classpath. Fixes
+ startup bug with knopflerfish.
+
+2006-03-13 08:02 edwin
+
+ * src/native/vm/VMClass.c (Java_java_lang_VMClass_getComponentType):
+ Link class before accessing c->vftbl->arraydesc.
+
+2006-03-13 07:06 edwin
+
+ * src/native/vm/VMClass.c (Java_java_lang_VMClass_getSuperclass): We
+ must not
+ assume that the class is already linked, so we have to resolve the
+ super class
+ reference. This fixes a NPE bug with Jonas.
+
+2006-03-12 23:23 twisti
+
+ * src/vm/suck.c (suck_start): We really should close class files after
+ reading it.
+
+2006-03-11 21:34 edwin
+
+ * src/vm/resolve.c (resolve_class_from_typedesc): Safer check for
+ reference types.
+
+2006-03-11 20:41 edwin
+
+ * src/vm/jit/codegen-common.c (codegen_finish): When setting the
+ entrypoint of a method, be sure not to overwrite an already set
+ entrypoint.
+
+2006-03-11 20:34 edwin
+
+ * src/vm/references.h (IS_XCLASSREF): Commented.
+
+2006-03-11 20:32 edwin
+
+ * src/vm/references.h (IS_XCLASSREF): Added.
+ (CLASSREF_OR_CLASSINFO_NAME): Added.
+
+2006-03-11 20:30 edwin
+
+ * src/vm/class.c, src/vm/class.h (class_classref_print): Added.
+ (class_classref_println): Added.
+
+2006-03-11 16:06 edwin
+
+ * src/vm/jit/jit.c (jit_compile_intern): Check if the method has been
+ compiled during static class initialization.
+
+2006-03-11 15:03 edwin
+
+ * src/vm/method.c (vim boilerplate): Added.
+
+2006-03-11 15:01 edwin
+
+ * src/vm/method.c (method_vftbl_lookup): Check ACC_INTERFACE on the
+ class, instead of on the method, where it is not set. Do not check
+ ACC_ABSTRACT here, because non-interface ACC_ABSTRACT methods are
+ looked up just like non-abstract non-interface methods.
+
+2006-03-10 22:22 twisti
+
+ * src/native/vm/VMRuntime.c (vm/options.h): Added.
+ (nativeLoad): Print dlerror output when dlopen fails.
+
+2006-03-09 16:13 twisti
+
+ * autogen.sh: Fixed typo.
+
+2006-03-09 13:51 twisti
+
+ * src/vm/jit/powerpc/darwin/md-asm.h (asm_calljavafunction): Removed.
+ (asm_calljavafunction_int): Likewise.
+ (asm_calljavafunction2): Likewise.
+ (asm_calljavafunction2int): Likewise.
+ (asm_calljavafunction2long): Likewise.
+ (asm_calljavafunction2float): Likewise.
+ (asm_calljavafunction2double): Likewise.
+ (_exceptionptr): Likewise.
+ (asm_vm_call_method): Define added.
+ (asm_vm_call_method_int): Likewise.
+ (asm_vm_call_method_long): Likewise.
+ (asm_vm_call_method_float): Likewise.
+ (asm_vm_call_method_double): Likewise.
+
+2006-03-09 13:46 twisti
+
+ * src/vm/jit/powerpc/patcher.c (patcher_get_putfield): Check for the
+ instruction order on long fields.
+
+2006-03-09 13:26 twisti
+
+ * autogen.sh: Check for installed programs and exit if no proper one
+ was found.
+ * src/boehm-gc/autogen.sh: Use the programs found by top-level
+ autogen.
+
+2006-03-08 09:44 twisti
+
+ * src/native/jni.c (PushLocalFrame): Implemented.
+ (PopLocalFrame): Likewise.
+ (DeleteLocalRef): Walk through all local frames.
+ (NewLocalRef): Allocate a new local frame if the current frame is out
+ of space.
+ (EnsureLocalCapacity): Implemented.
+ * src/vm/jit/codegen-common.c (codegen_finish_native_call): Release
+ all local reference frames.
+
+2006-03-07 20:44 twisti
+
+ * src/native/vm/VMClassLoader.c (nativeGetResources): Check if
+ resource is a directory and don't add it.
+
+2006-03-07 19:32 twisti
+
+ * src/vm/vm.c (usage): Small change.
+
+ * src/native/vm/VMSystemProperties.c (preInit): Set java.ext.dirs to
+ $JAVA_HOME/jre/lib/ext.
+
+2006-03-07 18:18 twisti
+
+ * src/cacaoh/headers.c (intrp_main_stack): Changed type.
+
+2006-03-07 17:21 twisti
+
+ test
+
+2006-03-07 17:19 twisti
+
+ test
+
+2006-03-07 10:48 twisti
+
+ * src/native/jni.c (_Jv_jni_CallIntMethodA): New function.
+ (CallBooleanMethodA): Implemented.
+
+2006-03-07 10:36 twisti
+
+ * src/vm/string.c (string_java_lang_StringIndexOutOfBoundsException):
+ Added.
+ * src/vm/stringlocal.h: Likewise.
+
+ * src/vm/exceptions.c
+ (exceptions_new_stringindexoutofboundsexception): New function.
+ (exceptions_throw_stringindexoutofboundsexception): Likewise.
+ * src/vm/exceptions.h: Likewise.
+
+ * src/native/jni.c (GetStringRegion): Implemented.
+
+2006-03-07 09:40 twisti
+
+ * src/vm/vm.c (_Jv_jvm): Changed type to _Jv_JavaVM.
+ * src/vm/vm.h (_Jv_jvm): Added.
+
+ * src/native/jni.c (ptr_jvm): Removed.
+ (ptr_env): Likewise.
+ (CallStaticObjectMethodA): Implemented.
+ (GetJavaVM): Return _Jv_jvm as vm.
+ (AttachCurrentThread): Return _Jv_env as env.
+ (GetEnv): Likewise.
+ (JNI_JavaVMTable): Renamed to _Jv_JNIInvokeInterface.
+ (JNI_JNIEnvTable): Renamed to _Jv_JNINativeInterface.
+ (JNI_CreateJavaVM): Allocate a _Jv_JavaVM structure and set it up
+ correctly, this fixes the usage in C++ programs.
+ * src/native/jni.h (_Jv_JavaVM): Added.
+
+ * src/native/jvmti/jvmti.c: Renamed JNI_JavaVMTable to
+ _Jv_JNIInvokeInterface and JNI_JNIEnvTable to _Jv_JNINativeInterface.
+
+2006-03-06 18:45 christian
+
+ * src/vm/jit/stack.c (analyse_stack): Bugfix for copy elimination.
+
+2006-03-06 13:03 twisti
+
+ * src/vm/jit/powerpc/linux/Makefile.am (LIBS): Added defined empty, as
+ * this makes problems on darwin and actually we do not need to link
+ * the configured libraries into convenience libraries.
+ * src/vm/jit/powerpc/darwin/Makefile.am: Likewise.
+ * src/vm/jit/powerpc/Makefile.am: Likewise.
+ * src/vm/jit/alpha/linux/Makefile.am: Likewise.
+ * src/vm/jit/alpha/Makefile.am: Likewise.
+ * src/vm/jit/alpha/freebsd/Makefile.am: Likewise.
+ * src/vm/jit/tools/Makefile.am: Likewise.
+ * src/vm/jit/verify/Makefile.am: Likewise.
+ * src/vm/jit/mips/linux/Makefile.am: Likewise.
+ * src/vm/jit/mips/Makefile.am: Likewise.
+ * src/vm/jit/mips/irix/Makefile.am: Likewise.
+ * src/vm/jit/loop/Makefile.am: Likewise.
+ * src/vm/jit/inline/Makefile.am: Likewise.
+ * src/vm/jit/allocator/Makefile.am: Likewise.
+ * src/vm/jit/i386/linux/Makefile.am: Likewise.
+ * src/vm/jit/i386/Makefile.am: Likewise.
+ * src/vm/jit/i386/freebsd/Makefile.am: Likewise.
+ * src/vm/jit/schedule/Makefile.am: Likewise.
+ * src/vm/jit/intrp/Makefile.am: Likewise.
+ * src/vm/jit/x86_64/Makefile.am: Likewise.
+ * src/vm/jit/profile/Makefile.am: Likewise.
+ * src/vm/jit/Makefile.am: Likewise.
+ * src/vm/Makefile.am: Likewise.
+ * src/native/tools/Makefile.am: Likewise.
+ * src/native/vm/Makefile.am: Likewise.
+ * src/native/Makefile.am: Likewise.
+ * src/toolbox/Makefile.am: Likewise.
+ * src/mm/Makefile.am: Likewise.
+ * src/threads/native/Makefile.am: Likewise.
+ * src/fdlibm/Makefile.am: Likewise.
+
+ * src/cacaoh/Makefile.am (INCLUDES): Renamed to AM_CPPFLAGS.
+
+2006-03-06 00:30 twisti
+
+ * src/vm/jit/powerpc/asmpart.S (asm_calljavafunction): Removed.
+ (asm_calljavafunction2): Renamed to asm_vm_call_method.
+
+2006-03-05 23:53 twisti
+
+ * src/vm/jit/alpha/asmpart.S (asm_calljavafunction): Removed.
+ (asm_calljavafunction2): Renamed to asm_vm_call_method.
+
+2006-03-05 23:35 twisti
+
+ * src/vm/jit/codegen-common.c (codegen_init): Removed
+ asm_calljavafunction.
+ * src/vm/jit/i386/asmpart.S (asm_calljavafunction): Removed.
+ (asm_calljavafunction2): Renamed to asm_vm_call_method.
+
+2006-03-05 23:24 twisti
+
+ * src/vm/vm.c (vm_call_method_intern): Removed.
+ (vm_vmargs_from_valist): Added.
+ (vm_vmargs_from_jvalue): Likewise.
+ (vm_call_method): New function.
+ (vm_call_method_valist): Likewise.
+ (vm_call_method_jvalue): Likewise.
+ (vm_call_method_vmarg): Likewise.
+ (vm_call_method_int): Likewise.
+ (vm_call_method_int_valist): Likewise.
+ (vm_call_method_int_jvalue): Likewise.
+ (vm_call_method_int_vmarg): Likewise.
+ (vm_call_method_long): Likewise.
+ (vm_call_method_long_valist): Likewise.
+ (vm_call_method_long_jvalue): Likewise.
+ (vm_call_method_long_vmarg): Likewise.
+ (vm_call_method_float): Likewise.
+ (vm_call_method_float_valist): Likewise.
+ (vm_call_method_float_jvalue): Likewise.
+ (vm_call_method_float_vmarg): Likewise.
+ (vm_call_method_double): Likewise.
+ (vm_call_method_double_valist): Likewise.
+ (vm_call_method_double_jvalue): Likewise.
+ (vm_call_method_double_vmarg): Likewise.
+ * src/vm/vm.h: Likewise.
+
+ * src/native/jni.c (_Jv_jni_fill_vmargs_from_vargs): Removed.
+ (_Jv_jni_vmargs_from_args): Likewise.
+ (_Jv_jni_CallObjectMethodA): New function.
+ (_Jv_jni_CallObjectMethod): Use vm_call_method.
+ (_Jv_jni_CallIntMethod): Likewise.
+ (_Jv_jni_CallLongMethod): Likewise.
+ (_Jv_jni_CallFloatMethod): Likewise.
+ (_Jv_jni_CallDoubleMethod): Likewise.
+ (_Jv_jni_CallVoidMethod): Likewise.
+ (_Jv_jni_CallVoidMethodA): Likewise.
+ (_Jv_jni_invokeNative): Likewise.
+ (CallObjectMethodA): Implemented.
+
+ * src/vm/loader.c (load_class_from_sysloader): Replaced
+ vm_call_method_intern by vm_call_method.
+ (load_class_from_classloader): Likewise.
+ * src/vm/finalizer.c (finalizer_run): Likewise.
+ * src/vm/initialize.c (initialize_class_intern): Likewise.
+ * src/vm/jit/stacktrace.c (stacktrace_inline_fillInStackTrace):
+ Likewise.
+ * src/vm/exceptions.c (throw_exception_exit_intern): Likewise.
+ (new_arrayindexoutofboundsexception): Likewise.
+ * src/vm/properties.c (properties_system_add): Likewise.
+ * src/cacao/cacao.c (setup_debugger_process): Likewise.
+ (getmainclassnamefromjar): Likewise.
+ (main): Likewise.
+ * src/native/vm/VMClassLoader.c (nativeGetResources): Likewise.
+ * src/native/native.c (native_new_and_init): Likewise.
+ (native_new_and_init_string): Likewise.
+ (native_new_and_init_int): Likewise.
+ (native_new_and_init_throwable): Likewise.
+ * src/threads/native/threads.c (threads_init): Likewise.
+ (threads_startup_thread): Likewise.
+ * src/cacaoh/headers.c: Likewise.
+
+ * src/vm/jit/x86_64/asmpart.S (asm_calljavafunction): Removed.
+ (asm_calljavafunction2): Renamed to asm_vm_call_method.
+ * src/vm/jit/intrp/asmpart.c: Likewise.
+ * src/vm/jit/asmpart.h: Likewise.
+
+2006-03-05 23:05 twisti
+
+ * tests/regression/native/testarguments.c (nlsub): Use %llx on all
+ architectures.
+ (ndsub): Likewise.
+
+2006-03-05 21:54 christian
+
+ * src/vm/jit/allocator/simplereg.c (allocate_scratch_registers):
+ Bugfix and reformatting.
+
+2006-03-05 15:51 twisti
+
+ * src/vm/jit/i386/asmpart.S (asm_calljavafunction2): Pointer to vm_arg
+ block is now in a2. Use new defines.
+
+2006-03-04 18:35 twisti
+
+ * src/vm/jit/alpha/asmpart.S (asm_calljavafunction2): Pointer to
+ vm_arg block is now in a2. Use new defines.
+
+2006-03-04 18:01 twisti
+
+ * src/vm/jit/powerpc/asmpart.S (asm_calljavafunction2): Pointer to
+ vm_arg block is now in a2. Use new defines.
+
+2006-03-04 17:19 twisti
+
+ * src/vm/jit/asmpart.h (ASM_CALLJAVAFUNCTION): Removed.
+ (ASM_CALLJAVAFUNCTION_ADR): Likewise.
+ (ASM_CALLJAVAFUNCTION_INT): Likewise.
+ (ASM_CALLJAVAFUNCTION2): Likewise.
+ (ASM_CALLJAVAFUNCTION2_ADR): Likewise.
+ (ASM_CALLJAVAFUNCTION2_INT): Likewise.
+ (ASM_CALLJAVAFUNCTION2_LONG): Likewise.
+ (ASM_CALLJAVAFUNCTION2_FLOAT): Likewise.
+ (ASM_CALLJAVAFUNCTION2_DOUBLE): Likewise.
+ (asm_calljavafunction2int): Changed signature.
+ (asm_calljavafunction2long): Likewise.
+ (asm_calljavafunction2float): Likewise.
+ (asm_calljavafunction2double): Likewise.
+
+2006-03-04 17:15 twisti
+
+ * src/vm/global.h (jni_callblock): Removed.
+
+ * src/vm/vm.c (vm/vm.h): Added.
+ (vm_call_method_intern): New function.
+ (vm_call_method_intern_int): Likewise.
+ (vm_call_method): Likewise.
+ (vm_call_method_int): Likewise.
+ (vm_call_method_long): Likewise.
+ (vm_call_method_float): Likewise.
+ (vm_call_method_double): Likewise.
+ * src/vm/vm.h (vm_arg): Structure added.
+ (vm_call_method_intern): New function.
+ (vm_call_method_intern_int): Likewise.
+ (vm_call_method): Likewise.
+ (vm_call_method_int): Likewise.
+ (vm_call_method_long): Likewise.
+ (vm_call_method_float): Likewise.
+ (vm_call_method_double): Likewise.
+
+ * src/vm/jit/tools/genoffsets.c (vm/vm.h): Added.
+ (sizejniblock): Renamed to sizevmarg.
+ (offjniitemtype): Renamed to offvmargtype.
+ (offjniitem): Renamed to offvmargdata.
+ * src/vm/jit/x86_64/asmpart.S (asm_calljavafunction2): Pointer to
+ vm_arg block is now in a2. Use new defines.
+
+ * src/vm/jit/stacktrace.c (vm/vm.h): Added.
+ (ASM_CALLJAVAFUNCTION): Replaced with vm_call_method_intern.
+ * src/vm/exceptions.c: Likewise.
+ * src/vm/properties.c: Likewise.
+ * src/vm/loader.c: Likewise.
+ * src/vm/finalizer.c: Likewise.
+ * src/vm/initialize.c: Likewise.
+ * src/cacao/cacao.c: Likewise.
+ * src/native/vm/VMClassLoader.c: Likewise.
+ * src/threads/native/threads.c: Likewise.
+
+ * src/cacaoh/headers.c (asm_calljavafunction): Removed.
+ (intrp_asm_calljavafunction): Likewise.
+ (vm_call_method_intern): New function.
+
+ * src/native/jni.c (fill_callblock_from_vargs): Renamed to
+ _Jv_jni_vmargs_from_vargs.
+ (fill_callblock_from_objectarray): Renamed to
+ _Jv_jni_vmargs_from_objectarray.
+ (_Jv_jni_vmargs_from_objectarray): New function.
+ (_Jv_jni_CallVoidMethodA): Likewise.
+ (ASM_CALLJAVAFUNCTION2): Replaced with appropriate vm_call_method
+ function.
+ (NewObjectA): Implemented.
+ (CallVoidMethodA): Likewise.
+ (CallNonvirtualVoidMethodA): Likewise.
+ (CallStaticVoidMethodA): Likewise.
+
+2006-03-03 00:00 twisti
+
+ * src/vm/linker.c (link_class_intern): Handle miranda methods
+ properly.
+ * src/vm/global.h (ACC_MIRANDA): Defined.
+ * src/native/vm/VMClass.c (getDeclaredMethods): Don't return miranda
+ methods.
+
+2006-03-01 17:00 twisti
+
+ * src/vm/options.c: Renamed runverbose to opt_verbosecall.
+ * src/vm/options.h: Likewise.
+ * src/vm/jit/alpha/codegen.c: Likewise.
+ * src/vm/jit/i386/codegen.c: Likewise.
+ * src/vm/jit/intrp/codegen.c: Likewise.
+ * src/vm/jit/mips/codegen.c: Likewise.
+ * src/vm/jit/powerpc/codegen.c: Likewise.
+ * src/vm/jit/x86_64/codegen.c: Likewise.
+ * src/vm/jit/intrp/asmpart.c: Likewise.
+ * src/vm/jit/intrp/dynamic-super.c: Likewise.
+ * src/vm/jit/intrp/java.vmg: Likewise.
+
+ * src/vm/builtin.c (builtin_trace_exception): Renamed runverbose to
+ opt_verbosecall. Removed stacktrace printing code.
+ * src/vm/exceptions.c (exceptions_handle_exception): Renamed
+ runverbose to opt_verbosecall. Print exception stacktrace when caught.
+
+ * src/vm/vm.c: Support Sun's commandline options and ignore them if
+ not supported. Reordered options.
+
+ * src/native/vm/VMObject.c (notify): Removed debug output.
+ (notifyAll): Likewise.
+ (wait): Likewise.
+ * src/native/vm/VMThread.c (suspend): Likewise.
+ (resume): Likewise.
+ (nativeSetPriority): Likewise.
+ (nativeStop): Likewise.
+ (yield): Likewise.
+
+ * src/native/vm/VMThrowable.c (fillInStackTrace): Renamed par1 to t.
+
+2006-02-23 14:08 twisti
+
+ * src/vm/jit/intrp/dynamic-super.c (disassemble_prim): New function.
+ (dynamic_super_init): Added disassembling of IADD, ILOAD and
+ GETFIELD_INT.
+
+2006-02-22 14:03 twisti
+
+ * src/vm/jit/i386/codegen.c (createnativestub): Renamed _exceptionptr
+ to _no_threads_exceptionptr.
+
+2006-02-22 13:34 twisti
+
+ * src/vm/jit/i386/codegen.c (mm/memory.h): Added.
+
+2006-02-21 16:17 twisti
+
+ * configure.ac (VERSION_CONFIGURE_ARGS, VERSION_CC, VERSION_CFLAGS):
+ Added define.
+ * src/vm/vm.c (version): Print configure options, compiler version and
+ CFLAGS.
+
+2006-02-21 16:06 twisti
+
+ * src/vm/jit/intrp/java.vmg (MULTIANEWARRAY): Use malloc instead of a
+ dynamic-sized array (-fomit-frame-pointer).
+
+2006-02-21 13:43 twisti
+
+ * src/vm/jit/intrp/codegen.c (cacao/cacao.h): Removed.
+ (vm/vm.h): Added.
+ (createnativestub): Replaced ENABLE_STATICVM with
+ WITH_STATIC_CLASSPATH and &env by _Jv_env.
+
+ * src/vm/jit/intrp/patcher.c: Replaced ENABLE_STATICVM by
+ WITH_STATIC_CLASSPATH.
+ * src/vm/jit/intrp/java.vmg: Likewise.
+
+ * src/vm/vm.c (mm/memory.h): Added.
+ (vm_create): Allocate the main thread interpreter stack on the Java
+ heap.
+
+2006-02-21 13:40 twisti
+
+ * src/vm/jit/jit.c (jit_compile_intern): Replaced ENABLE_STATICVM by
+ WITH_STATIC_CLASSPATH.
+
+2006-02-21 13:39 twisti
+
+ * src/cacao/cacao.c (main): Added main utf variable for better
+ debugability.
+
+2006-02-21 13:37 twisti
+
+ * src/native/native.c: Small changes.
+
+2006-02-21 13:35 twisti
+
+ * src/vm/loader.c (load_class_from_classloader): Added name
+ java.lang.String variable for better debugability.
+
+2006-02-21 12:41 twisti
+
+ * src/vm/jit/powerpc/asmpart.S: Rewritten for PIC code.
+
+2006-02-21 10:47 twisti
+
+ * src/vm/jit/alpha/asmpart.S: Rewritten for PIC code.
+
+2006-02-21 10:39 twisti
+
+ * src/vm/jit/x86_64/codegen.c (cacao/cacao.h): Removed.
+ (vm/vm.h): Added.
+ (createnativestub): Replaced ENABLE_STATICVM with
+ WITH_STATIC_CLASSPATH and &env by _Jv_env.
+
+2006-02-21 10:25 twisti
+
+ * src/vm/jit/i386/.cvsignore, src/vm/jit/i386/linux/.cvsignore: Added
+ TAGS.
+
+2006-02-21 09:34 twisti
+
+ * src/vm/jit/i386/asmpart.S: Rewritten for PIC code.
+
+2006-02-21 09:31 twisti
+
+ * src/threads/native/threads.c (vm/vm.h): Added.
+ (threads_startup_thread): Compiler warning fix.
+
+2006-02-21 09:25 twisti
+
+ * src/vm/jit/stacktrace.c (stacktrace_getCurrentClassLoader): Renamed
+ to stacktrace_getCurrentClass and it returns the first Java method's
+ class on the stack.
+ * src/vm/jit/stacktrace.h (stacktrace_getCurrentClassLoader):
+ Likewise.
+
+2006-02-21 09:18 twisti
+
+ * src/vm/jit/intrp/engine.c (cacao/cacao.h): Removed.
+
+2006-02-21 09:14 twisti
+
+ * configure.ac (AC_CONFIG_FILES): Remvoed ifconv, not yet.
+
+2006-02-21 09:11 twisti
+
+ * configure.ac: Default to AC_ENABLE_SHARED and AC_DISABLE_STATIC.
+ (ifconv): Added.
+ (jni.h): Check for jni.h in GNU Classpath.
+ (static-classpath): Added.
+
+ * src/vm/vm.c, src/vm/vm.h: New files, contain the JVM startup code.
+ * src/vm/Makefile.am (libvm_la_SOURCES): Added vm.[ch].
+
+ * src/cacao/cacao.c: Removed JVM startup code.
+ * src/cacao/cacao.h: Removed.
+ * src/cacao/Makefile.am: Replaced ENABLE_STATICVM by
+ WITH_STATIC_CLASSPATH.
+ (ENABLE_STATICVM): Build a shared library when not defined.
+
+ * src/vm/options.c, src/vm/options.h (mm/memory.h, native/jni.h):
+ Added.
+ (native/jni.h): Added.
+ (opt_ind): Renamed to opt_index.
+ (opt_jar, opt_run, opt_method, opt_signature, opt_ifconv): Added.
+ (get_opt): Renamed to options_get.
+ (options_prepare): New method.
+
+ * src/cacaoh/cacaoh.c (main): Use new option handling.
+
+ * src/vm/jit/alpha/codegen.c, src/vm/jit/arm/codegen.c,
+ src/vm/jit/i386/codegen.c, src/vm/jit/mips/codegen.c,
+ src/vm/jit/powerpc/codegen.c (cacao/cacao.h): Removed.
+ (vm/vm.h): Added.
+ (createnativestub): Replaced ENABLE_STATICVM with
+ WITH_STATIC_CLASSPATH and &env by _Jv_env.
+
+ * src/vm/jit/patcher.h, src/vm/jit/alpha/patcher.c,
+ src/vm/jit/arm/patcher.c, src/vm/jit/i386/patcher.c,
+ src/vm/jit/mips/patcher.c, src/vm/jit/powerpc/patcher.c,
+ src/vm/jit/x86_64/patcher.c: Replaced ENABLE_STATICVM by
+ WITH_STATIC_CLASSPATH.
+
+ * src/vm/jit/x86_64/asmpart.S: Rewritten for PIC code.
+
+ * src/vm/signal.c (cacao/cacao.h): Removed.
+ (vm/vm.h): Added.
+ (signal_handler_sigint): Use vm_* functions.
+
+ * src/native/native.c: Replaced ENABLE_STATICVM by
+ WITH_STATIC_CLASSPATH.
+ (cacao/cacao.h): Removed.
+ (native_resolve_function): Smaller changes.
+
+ * src/native/vm/VMRuntime.c: Replaced ENABLE_STATICVM by
+ WITH_STATIC_CLASSPATH.
+ (cacao/cacao.h): Removed.
+ (vm/vm.h): Added.
+ (execInternal): Removed.
+ (exit): Use vm_shutdown.
+
+ * src/native/native.h: Replaced ENABLE_STATICVM by
+ WITH_STATIC_CLASSPATH.
+ * src/native/Makefile.am: Likewise.
+ * src/native/vm/VMSystemProperties.c: Likewise.
+
+ * src/threads/native/threads.c (cacao/cacao.h): Removed.
+
+ * src/native/jni.h: Removed our JNI stuff and include GNU Classpath's.
+ * src/native/jni.c: Adapt to the new jni.h header.
+ (Release<type>ArrayElements): Copy correct element type.
+ (Get<type>ArrayRegion): Likewise.
+ (Set<type>ArrayRegion): Likewise.
+
+2006-02-20 23:35 twisti
+
+ * src/vm/global.h: Sorted java_<type>array definitions.
+
+2006-02-20 23:31 twisti
+
+ * src/vm/linker.c (link_class_intern): Comment reformatted.
+
+2006-02-20 15:19 twisti
+
+ * src/vm/jit/intrp/engine.c (USE_spTOS): Disable per default.
+
+2006-02-20 14:08 twisti
+
+ * src/vm/classcache.c (classcache_new_name): Keep c89 compilers happy.
+
+2006-02-19 22:27 christian
+
+ * src/vm/jit/jit.h: added define STKEEP
+
+ * src/vm/jit/simplereg.c (reg_free_tmp_func): SAVEDTMP and TMPARG
+ flags are not cleared anymore from Stackslots.
+ (reg_alloc_dup): TEMPVARs are not reused as SAVEDVARs anymore. This
+ has to be checked for conflicts.
+ (reg_mark_copy): Added. TEMPVAR Destination Stackslots are marked here
+ with STCOPY, if they use a duplicated register/memory location. Not
+ reused register/memory locations of TEMPVAR source Stacklots are freed
+ again.
+ (allocate_scratch_registers): ICMD_DUPx and ICMD_SWAP use now the new
+ reg_mark_copy.
+
+2006-02-16 19:39 christian
+
+ * src/vm/jit/stack.h (COPY): Prevent setting varkind to STACKVAR for
+ stackslots copied by DUPx and SWAP.
+ (DUP) Likewise.
+ * src/vm/jit/stack.c (analyse_stack): Copy elimination and needed
+ conflict resolution was implemented as
+ described in the CACAO paper. As "potential exception throwing
+ instruction" for now only INVOKE*s are
+ regarded. Conflict resolution over DUPx and SWAP should be refined to
+ be less conservative.
+ * src/vm/jit/jit.c (jit_init): Stackreq for JAVA_IINC is set to 0
+ again, since no dummy stackslot is
+ needed anymore for conflict resolution with XSTORE.
+ * src/vm/jit/allocator/simplereg.c (interface_regalloc): Reuse unused
+ float and int argument registers
+ for interfaces, too.
+ (reg_free_temp): Regard the new stackslot flag STCOPY, before freeing
+ a register/memory location.
+ (reg_alloc_dup): New function to allocate, if possible, the same
+ register/memory location for stackslot
+ copied by DUPx and SWAP.
+ (allocate_scratch_registers): The new function reg_alloc_dup is used
+ now for allocation at ICMD_DUPx and
+ ICMD_SWAP, if possible.
+ * src/vm/jit/jit.h: Added STCOPY as stackslot flag to mark
+ simultanously live stackslots with same
+ register after DUPx and SWAP.
+ * doc/stack.txt: Updated invariants to show the change with IINC (no
+ dummy stacklot anymore).
+
+2006-02-14 20:27 edwin
+
+ * src/native/jni.c (_Jv_jni_invokeNative): Cleanup.
+
+ * src/native/jni.c (Changes): Added my name.
+
+ * src/native/jni.c (vim boilerplate): Added.
+
+2006-02-14 20:10 edwin
+
+ * src/native/jni.c (_Jv_jni_invokeNative): Look up _all_ instance
+ methods
+ in the vftbl.
+
+2006-02-14 20:09 edwin
+
+ * src/vm/linker.c (link_class_intern): Do not override
+ package-private methods
+ from other packages.
+
+ * src/vm/linker.c (vim boilerplate): Added.
+
+2006-02-14 15:53 edwin
+
+ * src/vm/classcache.c, src/vm/classcache.h: Merge cache entries when
+ they are resolved to the same class.
+
+2006-02-14 15:34 edwin
+
+ * src/vm/utf8.c, src/vm/utf8.h (utf_full_hashkey): Added.
+
+2006-02-14 11:01 twisti
+
+ * configure.ac (AC_INIT): Changed version number to 0.95+cvs.
+ (CFLAGS): Changed optimization back to -O0.
+
+2006-02-14 10:30 twisti
+
+ * ChangeLog: Updated for release 0.95.
+
+2006-02-14 10:14 twisti
+
+ * configure.ac: Updated version to 0.95, set optimization level to
+ -O2, some indent changes.
+ * ChangeLog-2005: Removed 2006 entries.
+
+2006-02-14 01:10 twisti
+
+ * src/vm/jit/profile/profile.c (profile_thread): Fixed compiler
+ warning.
+
+2006-02-14 01:05 twisti
+
+ * src/vm/jit/intrp/codegen.c (createcompilerstub): Store the
+ methodinfo pointer in the same place as in the methodheader for
+ compiled methods.
+
+2006-02-14 00:41 twisti
+
+ * src/vm/jit/x86_64/codegen.c (createcompilerstub): Store the
+ methodinfo pointer in the same place as in the methodheader for
+ compiled methods.
+
+2006-02-14 00:33 twisti
+
+ * contrib/svn2cl.xsl: New file.
+ * THIRDPARTY (contrib/svn2cl.xsl): Added copyright message.
+
+2006-02-14 00:05 twisti
+
+ * NEWS: Updated 0.95 release notes.
+
+2006-02-14 00:03 twisti
+
+ * src/vm/loader.c (load_field): Removed f->xta.
+
+ * src/vm/class.h (vm/method.h): Added.
+ (vm/jit/inline/sets.h): Removed.
+
+ * src/vm/method.h (vm/jit/inline/parseXTA.h): Removed.
+
+ * src/vm/field.h (vm/jit/inline/parseXTA.h): Likewise.
+ (fieldinfo): Removed member xta.
+
+ * src/lib/Makefile.am (EXTRA_DIST): Fixed typo.
+
+2006-02-14 00:01 twisti
+
+ * src/vm/jit/inline/sets.c, src/vm/jit/inline/parseRTstats.c,
+ src/vm/jit/inline/parseRT.c, src/vm/jit/inline/parseRTflags.h,
+ src/vm/jit/inline/parseRTprint.h, src/vm/jit/inline/sets.h,
+ src/vm/jit/inline/parseRTstats.h, src/vm/jit/inline/parseRT.h,
+ src/vm/jit/inline/parseXTA.c, src/vm/jit/inline/parseXTA.h: Removed.
+
+2006-02-13 23:45 twisti
+
+ * src/vm/class.c (class_findmethod_approx): Removed.
+ * src/vm/class.h (class_findmethod_approx): Likewise.
+ (class_resolvemethod_approx): Likewise.
+
+2006-02-13 23:16 edwin
+
+ * NEWS: Added JNI method resolution fix.
+
+2006-02-13 18:55 twisti
+
+ * src/vm/method.c (assert.h): Added.
+ (vm/linker.h): Likewise.
+ (vm/jit/methodheader.h): Likewise.
+ (method_vftbl_lookup): New method.
+
+ * src/vm/method.h (vm/linker.h): Added.
+ (method_vftbl_lookup): New method.
+
+ Fixes bug #17 and #18.
+ * src/native/jni.c: Complete rewrite of Call*Method code.
+
+2006-02-13 10:53 twisti
+
+ * src/vm/utf8.c (utf_display): Some reformatting.
+ (utf_display_classname): Likewise.
+
+2006-02-13 00:12 twisti
+
+ * src/vm/jit/mips/codegen.c (createcompilerstub): Store the methodinfo
+ pointer in the same place as in the methodheader for compiled methods.
+
+2006-02-12 23:43 twisti
+
+ * src/vm/jit/alpha/md.c (md_assembler_get_patch_address): New method.
+ (md_codegen_findmethod): Use assert's directly.
+
+ * src/vm/jit/mips/md.c (md_assembler_get_patch_address): Likewise.
+ (md_codegen_findmethod): Likewise.
+
+ * src/vm/jit/alpha/codegen.c (createcompilerstub): Store the
+ methodinfo pointer in the same place as in the methodheader for
+ compiled methods and pass the pointer in REG_ITMP1.
+
+ * src/vm/jit/alpha/md-asm.h (mptr): Defined.
+
+ * src/vm/jit/powerpc/asmpart.S (asm_call_jit_compiler): methodinfo
+ pointer is passed via itmp1. Use md_assembler_get_patch_address to
+ get the patch address.
+ (asm_calljavafunction, asm_calljavafunction2): Pass methodinfo pointer
+ via itmp1.
+
+2006-02-12 23:22 twisti
+
+ * src/vm/jit/powerpc/codegen.c (createcompilerstub): Store the
+ methodinfo pointer in the same place as in the methodheader for
+ compiled methods.
+
+ * src/vm/jit/powerpc/asmpart.S (asm_call_jit_compiler): methodinfo
+ pointer is passed via itmp1.
+ (asm_calljavafunction, asm_calljavafunction2): Pass methodinfo pointer
+ via itmp1.
+
+2006-02-12 22:08 edwin
+
+ * src/threads/native/threads.c (threads_dump): Removed unused
+ variable 'ee'.
+
+2006-02-12 21:57 edwin
+
+ * src/native/vm/VMClass.c (Java_java_lang_VMClass_getDeclaredMethods):
+ Cast to java_lang_Class in order to avoid compiler warning.
+
+ * src/native/vm/VMClass.c (Changes): Added my name.
+
+ * src/native/vm/VMClass.c (vim biolerplate): Added.
+
+2006-02-12 21:47 edwin
+
+ * src/threads/native/threads.c (allocLockRecordSimple): Fixed
+ declaration
+ after code error.
+
+2006-02-12 16:28 twisti
+
+ * src/vm/jit/i386/codegen.c (createcompilerstub): Store the
+ methodinfo* in the same place as in the methodheader for compiled
+ methods.
+
+2006-02-12 16:24 edwin
+
+ * NEWS: Added directory check bugfix.
+
+2006-02-12 16:10 edwin
+
+ * NEWS: Added two bugfixes.
+
+2006-02-12 16:02 edwin
+
+ * src/vm/loader.c, src/vm/loader.h (vim boilerplate): Added.
+
+2006-02-12 13:11 twisti
+
+ * src/vm/zip.c (zip_open): Don't add directories to the zipfile
+ hashtable. We use the trailing `/' to identify a directory (i hope
+ that's correct).
+
+2006-02-12 12:59 christian
+
+ * src/vm/jit/x86_64/md-abi.c (md_param_alloc): Regard use of A0 for
+ returning float values.
+
+2006-02-12 02:18 edwin
+
+ * src/native/vm/VMClassLoader.c (vim boilerplate): Added.
+
+2006-02-12 02:17 edwin
+
+ * src/vm/classcache.c (classcache_store): Made classcache_store
+ idempotent.
+
+ * src/native/vm/VMClassLoader.c
+ (Java_java_lang_VMClassLoader_defineClass):
+ Store defined class with classcache_store instead of just with
+ classcache_store_defined, so it an initiating loader is recorded for
+ the
+ class. This should solve problems with classes that are defined
+ outside
+ of a loadClass context (e.g. by java.lang.reflect.Proxy).
+
+2006-02-12 00:30 twisti
+
+ * src/native/vm/VMClass.c (getDeclaredMethods): Set the method's class
+ in java.lang.reflect.Method.
+
+ * src/native/vm/Method.c (toolbox/logging.h, vm/jit/stacktrace.h):
+ Removed.
+
+ * src/native/vm/VMSystem.c (identityHashCode): Use casts.
+
+2006-02-12 00:25 twisti
+
+ * src/vm/exceptions.c, src/vm/exceptions.h
+ (exceptions_throw_nosuchmethoderror): New method.
+
+2006-02-11 21:25 christian
+
+ * src/vm/jit/stack.h (COPY) All copied stackslots set to TEMPVAR.
+ This prevents conflicts with LOCALVAR
+ and
+ (DUP) Likewise.
+ STACKVARS.
+
+2006-02-07 23:18 edwin
+
+ * src/vm/jit/stack.h (TYPE_VERIFYERROR): Converted most of body to a
+ function.
+
+ * src/vm/exceptions.c, src/vm/exceptions.h
+ (exceptions_throw_verifyerror_for_stack): Added.
+
+ * src/vm/exceptions.c, src/vm/exceptions.h (vim boilerplate): Added.
+
+2006-02-07 21:27 edwin
+
+ * src/vm/jit/stack.h (vim boilerplate): Fixed.
+
+2006-02-07 21:15 twisti
+
+ * NEWS: Added some stuff.
+
+2006-02-07 17:28 edwin
+
+ * src/vm/jit/intrp/codegen.c (createcalljavafunction):
+ Removed t_inlining_globals.
+
+2006-02-07 17:22 edwin
+
+ * src/vm/jit/codegen-common.c, src/vm/jit/codegen-common.h
+ (codegen_setup):
+ Removed t_inlining_globals argument.
+
+ * src/vm/jit/codegen-common.c (codegen_finish): Prepared for inlined
+ line
+ number tables. References with line number <-3 will not be relocated.
+
+ * src/vm/jit/codegen-common.c (codegen_createnativestub):
+ Removed t_inlining_globals and inlining_setup.
+
+ * src/vm/jit/codegen-common.h (Changes): Added my name to 'Changes'.
+
+ * src/vm/jit/inline/inline.c, src/vm/jit/inline/inline.h: Ripped out
+ old
+ inliner.
+
+ * src/vm/jit/jit.c: Removed inlining headers.
+
+ * src/vm/jit/jit.c (INLINE_GOTO): Added instruction name to table.
+
+ * src/vm/jit/jit.c (jit_compile_intern): Removed t_inlining_globals
+ argument.
+
+ * src/vm/jit/codegen-common.c, src/vm/jit/codegen-common.h,
+ src/vm/jit/inline/inline.c, src/vm/jit/inline/inline.h (vim
+ boilerplate):
+ Added.
+
+2006-02-07 16:52 edwin
+
+ * src/vm/jit/i386/codegen.c (codegen): Prepared for inlining. The
+ icmds
+ ICMD_INLINE_START, ICMD_INLINE_END, ICMD_INLINE_GOTO were
+ implemented, and
+ at the start of exception handlers the indepth is no longer assumed
+ to be 1.
+
+2006-02-07 16:47 edwin
+
+ * src/vm/jit/jit.h (Changes): Fixed tabs.
+
+2006-02-06 21:06 twisti
+
+ * src/threads/native/threads.c, src/threads/native/threads.h
+ (sleepThread): Renamed to thread_sleep.
+
+2006-02-06 21:01 twisti
+
+ * src/cacao/cacao.c (vm/jit/profile.h): Changed to
+ vm/jit/profile/profile.h.
+ (main): profile_init and profile_start_thread calls added.
+
+2006-02-06 18:50 twisti
+
+ * configure.ac (AC_CONFIG_FILES): Added src/vm/jit/profile/Makefile.
+
+2006-02-06 18:49 twisti
+
+ * src/vm/jit/Makefile.am (DIST_SUBDIRS): Added profile.
+ (PROFILE_LIB): Added.
+ (PROFILE_SOURCES): Removed.
+
+2006-02-06 18:48 twisti
+
+ * src/vm/jit/profile/profile.c (profile_init): New method.
+ (profile_thread): Likewise.
+ (profile_start_thread): Likewise.
+ * src/vm/jit/profile/profile.h (profile_init): Added.
+ (profile_start_thread): Likewise.
+ * src/vm/jit/profile/Makefile.am: New file.
+ * src/vm/jit/profile/.cvsignore: Likewise.
+
+2006-02-06 18:34 twisti
+
+ * src/vm/jit/profile.h: Moved to src/vm/jit/profile/.
+
+2006-02-06 18:33 twisti
+
+ * src/vm/jit/profile.c: Moved to src/vm/jit/profile/.
+ * src/vm/jit/profile: Added.
+
+2006-02-06 18:32 twisti
+
+ * src/vm/jit/profile: Ooops.
+
+2006-02-06 18:31 twisti
+
+ * src/vm/jit/profile.c: Moved to src/vm/jit/profile/.
+
+2006-02-06 18:14 twisti
+
+ * src/vm/jit/allocator/Makefile.am: Use tabs instead of space.
+ (INCLUDE): Renamed to AM_CPPFLAGS.
+
+2006-02-06 08:22 edwin
+
+ * doc/Makefile.am (EXTRA_DIST): Added inlining_stacktrace.txt and
+ native_threads.txt.
+
+2006-02-06 06:49 edwin
+
+ * src/threads/native/threads.c: Minor cleanup.
+
+2006-02-06 06:46 edwin
+
+ * src/threads/native/threads.c: Uncuddled `else`s and other cleanup.
+
+2006-02-06 06:16 edwin
+
+ * doc/inlining_stacktrace.txt: Clarified, added entry after the
+ inlined body
+ for the rest of the line after the call.
+
+2006-02-06 05:00 edwin
+
+ * src/vm/jit/i386/machine-instr.h (compare_and_swap): Commented.
+
+2006-02-06 04:50 edwin
+
+ * doc/native_threads.txt: Added.
+
+2006-02-06 04:46 edwin
+
+ * src/threads/native/threads.c (allocLockRecordPool): Relink the free
+ list
+ of lock records when reusing a pool from the global_pool. This avoids
+ cross-linking of lock record owned by different threads, and hopefully
+ fixes our long-standing deadlock problem.
+
+ * src/threads/native/threads.c (allocLockRecordSimple,
+ recycleLockRecord)
+ (initObjectLock): Temporarily added assertions to shake out possible
+ further bugs in the free list handling.
+
+ * src/threads/native/threads.c (monitorEnter, monitorExit): Commented.
+
+ * src/threads/native/threads.c (Changes): Added my name to 'Changes'.
+
+ * src/threads/native/threads.c (vim boilerplate): Added.
+
+2006-02-06 01:28 edwin
+
+ * src/vm/jit/stacktrace.c (stacktrace_add_method_intern): Added.
+ (stacktrace_add_method): Documented. Now uses
+ stacktrace_add_method_intern.
+ (stacktrace_getCurrentClassLoader): Documented.
+ (stacktrace_dump_trace): Removed unused variable.
+ (Changes): Added my name to 'Changes'.
+
+2006-02-06 01:08 edwin
+
+ * src/vm/jit/verify/typecheck.c (verify_basic_block): Teach the
+ verifier
+ about the new inline instructions ICMD_INLINE_START, ICMD_INLINE_END,
+ and ICMD_INLINE_GOTO.
+
+2006-02-06 01:02 edwin
+
+ * src/vm/jit/stack.c (analyse_stack): Set bptr->stack for each visited
+ block.
+ (show_icmd): Implemented printing of new inline instructions.
+
+2006-02-06 00:02 edwin
+
+ * src/vm/jit/allocator/simplereg.c (ICMD_INLINE_GOTO): Added.
+ (Changes): Added my name to 'Changes'.
+ (vim boilerplate): Added.
+
+2006-02-05 23:34 edwin
+
+ * src/vm/jit/allocator/lsra.c, src/vm/jit/allocator/lsra.h (lsra,
+ lsra_init):
+ Removed t_inlining_globals argument.
+ (Changes): Added my name to 'Changes'.
+ (vim boilerplate): Added.
+
+ * src/vm/jit/jit.c (lsra): Removed t_inlining_globals argument.
+
+2006-02-05 23:24 edwin
+
+ * src/vm/jit/jit.c (reg_setup): Removed t_inlining_globals argument.
+
+ * src/vm/jit/codegen-common.c (reg_setup): Removed t_inlining_globals
+ argument.
+
+ * src/vm/jit/reg.c, src/vm/jit/reg.h (reg_setup): Removed
+ t_inlining_globals
+ argument.
+ (Changes): Added my name to 'Changes'.
+ (vim boilerplate): Added.
+
+2006-02-05 23:09 edwin
+
+ * src/vm/jit/jit.h (Changes): Added my name to 'Changes'.
+
+2006-02-05 23:07 edwin
+
+ * src/vm/jit/jit.h (ICMD_INLINE_GOTO): Added. Not used, yet.
+
+ * src/vm/jit/jit.h (basicblock): Added 'stack' field. Not used, yet.
+
+ * src/vm/jit/jit.h, src/vm/jit/jit.c (vim boilerplate): Added.
+
+2006-02-05 23:02 edwin
+
+ * src/vm/jit/parse.c (parseRT.h, parseXTA.h, inline.h,
+ parseRTprint.h):
+ No longer included.
+ (parse): Removed t_inlining_globals * from arguments.
+
+ * src/vm/jit/jit.c (parse): Removed t_inlining_globals * from
+ arguments.
+
+2006-02-05 22:47 edwin
+
+ * src/vm/jit/parse.c, src/vm/jit/parse.h (inline_env): Removed most
+ occurences.
+ (bound_check1): Renamed to bound_check_exclusive.
+
+2006-02-05 22:22 edwin
+
+ * src/vm/jit/parse.c (useinlining): Removed.
+
+2006-02-05 17:36 edwin
+
+ * doc/inlining_stacktrace.txt: Added warning about signedness.
+ Fixed copy&paste errors.
+
+2006-02-05 15:26 edwin
+
+ * doc/inlining_stacktrace.txt: Added.
+
+ * src/vm/jit/dseg.c (dseg_addlinenumber_inline_start): Added.
+ (dseg_addlinenumber_inline_end): Added.
+ (dseg_addlinenumber): Commented.
+ (vim boilerplate): Added.
+
+ * src/vm/jit/dseg.h (linenumberref): Changed for inlining stacktraces.
+ Made targetmpc a ptrint, made linenumber s4, reordered fields.
+ (dseg_addlinenumber_inline_start): Added.
+ (dseg_addlinenumber_inline_end): Added.
+ (vim boilerplate): Added.
+
+2006-02-05 13:52 stefan
+
+ * src/threads/native/threads.h: waiting is correctly typed now
+ (previous checkin was wrong).
+
+2006-02-05 13:39 stefan
+
+ * src/threads/native/threads.c: Let's see if this improves the dead
+ lock situation (waiter handling changed slightly).
+
+2006-02-05 12:22 twisti
+
+ * tests/regression/native/.cvsignore (*.h, *.so): Added.
+
+2006-02-05 12:20 twisti
+
+ * tests/regression/native/Makefile.am,
+ tests/regression/codepatching/Makefile.am,
+ tests/regression/Makefile.am (JAVAFLAGS): Use VM_ZIP_STRING and
+ GLIBJ_ZIP_STRING.
+
+2006-02-05 12:03 twisti
+
+ * src/vm/jit/powerpc/asmpart.S, src/vm/jit/alpha/asmpart.S,
+ src/vm/jit/mips/asmpart.S, src/vm/jit/i386/asmpart.S,
+ src/vm/jit/x86_64/asmpart.S, src/vm/jit/arm/asmpart.S: Disable
+ executable stacks, this is required for Gentoo and we actually don't
+ need them.
+
+2006-02-05 00:40 twisti
+
+ * src/vm/jit/stacktrace.c (stacktrace_create): Get the value of
+ _no_threads_stackframeinfo, since it's a pointer, not a structure.
+ (stacktrace_print_trace): Check for NULL value and return.
+ * src/vm/exceptions.c (exceptions_handle_exception): Compiler warning
+ fixed.
+ (exceptions_print_exception): Check for NULL value, print it and
+ return.
+
+2006-02-05 00:16 twisti
+
+ * src/mm/memory.h (string.h): Moved after config.h.
+ (OFFSET): Use internal datatypes.
+ (NEW, MNEW): Use the proper GC macro when Gc is disabled.
+
+2006-02-05 00:13 twisti
+
+ * src/mm/nogc.c (config.h): Moved in front of system headers.
+ (heap_allocate): Call exceptions_throw_outofmemory_exit.
+ (nogc_init): Likewise.
+
+2006-02-05 00:01 twisti
+
+ * src/threads/none/: New.
+ * src/threads/none/threads.h: New file. We need this one for
+ e.g. stacktrace.c where we use thread stuff in the code.
+
+2006-02-04 23:59 twisti
+
+ * src/vm/access.c (assert.h): Move after config.h.
+ * src/vm/properties.c (mm/memory.h): Added.
+ * src/vm/jit/stacktrace.c (mm/memory.h): Likewise.
+ (threads.h): Added.
+ (stacktrace_create): Handle stackframeinfo when threads disabled
+ properly.
+
+2006-02-04 23:56 twisti
+
+ * src/vm/jit/allocator/simplereg.c (allocate_scratch_registers):
+ Generate an exception instead of exiting.
+ * src/vm/jit/allocator/lsra.c (lsra_scan_registers_canditates):
+ Likewise.
+
+2006-02-04 20:15 twisti
+
+ * src/vm/jit/stacktrace.h (stacktrace_getCallingClassLoader): Renamed
+ to stacktrace_getCurrentClassLoader.
+
+ * src/cacaoh/headers.c (nativelyoverloaded): Fixed compiler warning.
+
+2006-02-04 19:09 twisti
+
+ * src/native/native.c (native_resolve_function): Print failed is the
+ symbol was not found.
+
+2006-02-04 19:08 twisti
+
+ * src/vm/jit/stacktrace.h (STACKTRACE_CAPACITY_DEFAULT)
+ (STACKTRACE_CAPACITY_INCREMENT): Changed default from 40 to 80, seems
+ this is what eclipse and tomcat want.
+ (stacktracebuffer): Changed entries from an array to a pointer.
+
+2006-02-04 19:04 twisti
+
+ * src/vm/jit/stacktrace.c (stacktrace_add_entry): Reallocate to
+ stb->entries.
+ (stacktrace_create): Do two dump and heap allocs, does not affect
+ performance.
+ (stacktrace_getCallingClassLoader): Renamed to
+ stacktrace_getCurrentClassLoader.
+
+ * src/native/jni.c (FindClass): Renamed
+ stacktrace_getCallingClassLoader to stacktrace_getCurrentClassLoader.
+
+ * src/native/vm/VMStackWalker.c (getCallingClassLoader): Revert to old
+ implementation.
+
+2006-02-04 17:39 edwin
+
+ * doc/stack.txt: Typos fixed.
+
+2006-02-04 17:31 edwin
+
+ * doc/stack.txt: Expanded tabs.
+ * doc/Makefile.am (stack.txt): Added EXTRA_DIST entry for stack.txt.
+
+2006-02-04 17:25 edwin
+
+ * doc/stack.txt: Added. This file describes some details about the
+ stack representation.
+
+2006-02-04 00:43 twisti
+
+ * src/native/Makefile.am (CLEANFILES): Always clean nativetable.inc.
+ ($(srcdir)/native.c): Moved inside if ENABLE_STATICVM where it
+ belongs! Dammit!
+
+2006-02-04 00:33 twisti
+
+ * src/native/Makefile.am: Accidentally moved the library into if
+ ENABLE_STATICVM.
+ * src/native/include/Makefile.am: Enable accidentally removed
+ dependencies.
+
+2006-02-04 00:13 edwin
+
+ * src/vm/jit/verify/typecheck.c (logging): Adapted to new logging API.
+
+2006-02-04 00:08 edwin
+
+ * src/vm/jit/stack.h (MARKREACHED): Use BBREACHED for readability.
+ (vim boilerplate): Added.
+
+2006-02-04 00:04 edwin
+
+ * src/vm/method.h (methodinfo): Fixed copy&paste error in comment.
+ (vim boilerplate): Added.
+
+2006-02-04 00:00 edwin
+
+ * src/vm/jit/stacktrace.c (vim boilerplate): Added.
+
+2006-02-03 22:57 twisti
+
+ * configure.ac (VM_ZIP_STRING): Added.
+ (GLIBJZ): Renamed to GLIBJ_ZIP_STRING.
+ * src/vm/global.h (CACAO_VM_ZIP_PATH): Use GLIBJ_ZIP_STRING.
+ * src/lib/Makefile.am (GLIBJ_ZIP): Likewise.
+ * src/native/include/Makefile.am, src/native/Makefile.am (VM_ZIP): Use
+ VM_ZIP_STRING.
+ (GLIBJ_ZIP): Use GLIBJ_ZIP_STRING.
+ * contrib/setenvinstalled.in, contrib/setenvsource.in: Likewise.
+
+2006-02-03 22:53 twisti
+
+ * src/native/vm/VMRuntime.c (nativeLoad): #ifdef ENABLE_STATICVM
+ warning fix.
+
+2006-02-03 22:24 twisti
+
+ * src/vm/global.h (CACAO_VM_ZIP_PATH): Removed accidentally commited
+ VM_ZIP_FILE.
+ * src/native/Makefile.am (VM_ZIP): Likewise.
+ * src/native/include/Makefile.am (VM_ZIP): Likewise.
+
+2006-02-03 22:03 twisti
+
+ * src/vm/global.h (CACAO_VM_ZIP_PATH): Set correctly for ifndef
+ ENABLE_ZLIB.
+ * src/lib/Makefile.am (JAVA_VM_FILES): Renamed to VM_JAVA_FILES.
+ (VM_CLASS_FILES): Added.
+ (pkgdata_DATA): Set to class files for ifndef ENABLE_ZLIB.
+ * src/native/include/Makefile.am (VM_ZIP): Set correctly for ifndef
+ ENABLE_ZLIB.
+ * src/native/Makefile.am (VM_ZIP): Likewise.
+
+2006-02-03 21:58 twisti
+
+ * src/vm/suck.c (suck_add): Fixed compiler warning with #ifndef
+ ENABLE_ZLIB.
+
+2006-02-03 21:51 twisti
+
+ * src/native/tools/.cvsignore (TAGS): Added.
+
+2006-02-03 20:54 twisti
+
+ * src/native/Makefile.am (VM_ZIP, GLIBJ_ZIP, CLASSPATH): Added.
+
+2006-02-03 20:53 twisti
+
+ * src/native/tools/gennativetable.c (main): Don't free bootclasspath,
+ do proper initalization of subsystems, don't link classes.
+
+2006-02-03 19:44 twisti
+
+ * src/native/Makefile.am (nativetable.inc): Pass classpath on
+ commandline, environment variable support was removed.
+
+2006-02-03 19:42 twisti
+
+ * src/native/tools/gennativetable.c: Updated to work again.
+
+2006-02-03 19:27 twisti
+
+ * src/cacao/Makefile.am (INCLUDES): Renamed to AM_CPPFLAGS.
+ (CLASSPATH_PREFIX): Renamed to CLASSPATH_LIBDIR.
+
+2006-02-03 18:45 twisti
+
+ * configure.ac (ENABLE_SOFTFLOAT): Added.
+ (NDEBUG): Bugfix for AM_CONDITIONAL.
+
+2006-02-03 14:14 twisti
+
+ * src/vm/jit/stacktrace.c (stacktrace_entry): Wrong return value,
+ added some checks.
+
+2006-02-03 13:19 twisti
+
+ * src/vm/jit/stacktrace.c, src/vm/jit/stacktrace.h
+ (lineNumberTableEntry): Renamed to linenumbertable_entry.
+ (addEntry): Renamed to stacktrace_add_entry.
+ (stacktrace_fillInStackTrace_methodRecursive): Removed.
+ (stacktrace_fillInStackTrace_method): Renamed to
+ stacktrace_add_method.
+ (cacao_stacktrace_fillInStackTrace): Renamed to stacktrace_create.
+ (stackTraceCollector): Removed.
+ (cacao_stacktrace_NormalTrace): Renamed to
+ stacktrace_fillInStackTrace.
+ (classContextCollector): Removed.
+ (cacao_createClassContextArray): Renamed to
+ stacktrace_getClassContext.
+ (stacktrace_classLoaderCollector): Removed.
+ (cacao_currentClassLoader): Renamed to
+ stacktrace_getCallingClassLoader.
+ (getStackCollector): Removed.
+ (cacao_getStackForVMAccessController): Renamed to stacktrace_getStack.
+
+ * src/native/jni.c (jni_init): Use new GCNEW.
+ (FindClass): Renamed cacao_currentClassLoader to
+ stacktrace_getCallingClassLoader.
+
+ * src/native/vm/VMAccessController.c (getStack): Renamed
+ cacao_getStackForVMAccessController to stacktrace_getStack.
+
+ * src/native/vm/VMStackWalker.c (getClassContext): Renamed
+ cacao_createClassContextArray to stacktrace_getClassContext.
+ (getCallingClass): Likewise.
+ (getCallingClassLoader): Call stacktrace_getCallingClassLoader.
+
+ * src/native/vm/Method.c (config.h): Added.
+ (invokeNative): Renamed cacao_createClassContextArray to
+ stacktrace_getClassContext.
+
+ * src/native/vm/Field.c (config.h): Added.
+ (cacao_get_field_address): Renamed cacao_createClassContextArray to
+ stacktrace_getClassContext. Check for CLASS_INITIALIZED.
+
+ * src/native/vm/VMThrowable.c
+ (native/include/gnu_classpath_Pointer.h): Added.
+ (fillInStackTrace): Call stacktrace_fillInStackTrace.
+ (getStackTrace): Adapted.
+
+ * src/mm/memory.h (GCNEW): Use only 1 parameter, like NEW.
+ (GCMNEW): Added.
+
+2006-02-03 12:46 twisti
+
+ * src/threads/native/threads.h (THREADOBJECT): Don't cast to
+ java_lang_VMThread*, we don't need that.
+
+2006-02-03 12:38 twisti
+
+ * src/vm/method.c (method_printflags, method_print): Check for NULL.
+ * src/vm/field.c (field_printflags, field_print) Likewise.
+ (stdio.h): Added.
+ * src/vm/class.c (class_printflags, class_print): Likewise.
+
+2006-02-02 09:16 twisti
+
+ * configure.ac (AC_PROG_JAR): Added.
+ * m4/ac_prog_jar.m4: New file.
+ * src/lib/Makefile.am (VM_ZIP): Added.
+ (vm.zip): Check if $(JAR) is zip or jar type.
+
+2006-02-02 08:51 twisti
+
+ * src/vm/loader.c (loader_load_all_classes): Added missing #ifde
+ ENABLE_ZLIB.
+
+2006-02-02 08:45 twisti
+
+ * configure.ac (NDEBUG): Added missing WITH_BINUTILS_DISASSEMBLER
+ conditional.
+ (zlib): Fixed handling.
+
+2006-01-31 23:54 twisti
+
+ * src/vm/jit/i386/codegen.c (codegen): Added basic block frequency
+ count code.
+
+2006-01-31 23:45 twisti
+
+ * src/vm/jit/profile.c ("mm/memory.h,vm/options.h): Added.
+ (list_method_entry): Likewise.
+ (profile_printstats): Sort methods into a list and print it sorted,
+ added basic block frequency output.
+
+2006-01-31 23:43 twisti
+
+ * src/vm/method.h (methodinfo): Renamed executioncount to
+ frequency. Added bbfrequency and cycles.
+
+ * src/vm/jit/x86_64/codegen.c (codegen): Added cycle profiling code.
+
+ * src/vm/jit/x86_64/codegen.h (M_FMOV): Added.
+ (M_IADD_MEMBASE, M_IADC_MEMBASE, M_ISUB_MEMBASE, M_ISBB_MEMBASE):
+ Likewise.
+ (M_RDTSC, PROFILE_CYCLE_START, PROFILE_CYCLE_STOP): Likewise.
+
+ * src/vm/jit/x86_64/emitfuncs.c (x86_64_inc_membase)
+ (x86_64_incl_membase): Fixed.
+ (emit_rdtsc): Added.
+
+ * src/vm/jit/jit.c (jit_compile): Free m->bbfrequency memory.
+ (jit_compile_intern): Allocate m->bbfrequency memory.
+
+ * src/vm/jit/jit.h: Reformatting.
+
+2006-01-31 23:29 twisti
+
+ * src/vm/statistics.c, src/vm/jit/inline/inline.c: Removed inlining
+ statistics stuff.
+
+2006-01-31 23:27 twisti
+
+ * src/vm/options.c, src/vm/options.h (opt_rt, opt_xta, opt_vta):
+ Removed.
+ (opt_prof_bb): Added.
+ * src/cacao/cacao.c: Likewise.
+ (OPT_PROF_OPTION): Added.
+
+2006-01-31 22:31 twisti
+
+ * src/vm/jit/stack.c (show_icmd_block): Print the basic block type.
+
+2006-01-31 22:27 twisti
+
+ * src/toolbox/list.c, src/toolbox/list.h (list_add_before): Added.
+
+2006-01-31 15:41 twisti
+
+ * src/vm/jit/powerpc/codegen.c, src/vm/jit/alpha/codegen.c,
+ src/vm/jit/mips/codegen.c, src/vm/jit/i386/codegen.c (codegen): Use
+ CLASS_IS_OR_ALMOST_INITIALIZED macro, saves some code space.
+
+2006-01-31 15:35 twisti
+
+ Fixes Debian bug #350729
+ * src/vm/jit/i386/asmpart.S (asm_md_init): Added, puts the FPU to
+ 64-bit precision mode.
+ * src/vm/jit/i386/md.c (md_init): Call asm_md_init.
+
+ * src/vm/jit/asmpart.h (asm_md_init): Added.
+ (has_no_x_instr_set): Removed.
+ * src/vm/options.c, src/vm/options.h (has_ext_instr_set): Removed.
+ * src/vm/jit/jit.c (jit_init): Removed has_no_x_instr_set call.
+ * src/vm/jit/alpha/asmpart.S (has_no_x_instr_set): Renamed to
+ asm_md_init.
+ * src/vm/jit/alpha/md.c (has_ext_instr_set): Added.
+ (md_init): Call asm_md_init.
+ * src/vm/jit/alpha/md.h (has_ext_instr_set): Added.
+
+2006-01-31 15:18 edwin
+
+ * src/vm/classcache.c: Added a formal description of the classcache.
+
+2006-01-31 14:24 twisti
+
+ * src/vm/signal.c (signal_handler_sigint): Typo, reported by Chris
+ Burdess on irc.
+
+2006-01-30 16:25 twisti
+
+ * src/vm/jit/i386/codegen.c (codegen): Added profiling code.
+ (ICMD_IINC): Use macros.
+ * src/vm/jit/i386/codegen.h (ucontext.h): Removed.
+ (thread_restartcriticalsection): Likewise.
+ (M_IADD_IMM_MEMBASE): Added.
+
+2006-01-30 15:44 twisti
+
+ * src/vm/options.h, src/vm/options.c (opt_prof): Added.
+ * src/cacao/cacao.c (OPT_PROF): Added.
+ (exit_handler): Added profile_printstats when opt_prof is enabled.
+
+ * src/vm/class.h (classinfo): Members classUsed and impldBy removed.
+ * src/vm/loader.c (load_class_from_classbuffer): Likewise.
+ * src/vm/linker.c (link_primitivetype_table): Likewise.
+ (link_class_intern): Likewise.
+ * src/vm/jit/inline/inline.c: Likewise.
+
+ * src/vm/method.h (methodinfo): Added member executioncount.
+
+ * src/vm/jit/x86_64/codegen.c (codegen): Added profiling code. Some
+ code reordering, using more macros and save some code space.
+ * src/vm/jit/x86_64/codegen.h (M_ILD32, M_LLD32, M_IST_IMM, M_IST32)
+ (M_LST32, M_IST32_IMM, M_LST32_IMM32, M_IINC_MEMBASE, M_ITEST)
+ (M_CMP_IMM_MEMBASE, M_ICMP, M_ICMP_IMM, M_ICMP_IMM_MEMBASE, M_CMOVEQ)
+ (M_CMOVNE, M_CMOVLT, M_CMOVLE, M_CMOVGE, M_CMOVGT, M_CMOVB, M_CMOVA)
+ (M_CMOVP, M_CLR): Added.
+
+ * src/vm/jit/x86_64/emitfuncs.c (x86_64_emit_ifcc): Use macros.
+ (x86_64_call_mem): Changed mem argument to ptrint type.
+ * src/vm/jit/x86_64/emitfuncs.h (x86_64_call_mem): Likewise.
+
+ * src/vm/jit/profile.c, src/vm/jit/profile.h: New files.
+ * src/vm/jit/Makefile.am (DISASS_OBJ): Renamed to DISASS_SOURCES.
+ (PROFILE_SOURCES): Added.
+
+2006-01-30 14:24 christian
+
+ * src/vm/jit/allocator/simplereg.c (interface_regalloc): Used
+ m->parseddesc->arg[int|flt|adr]reguse to enable use of unused
+ argumentregisters in leadmethods.
+ (local_regalloc): Likewise.
+ (reg_init_temp): Likewise.
+
+2006-01-30 11:26 christian
+
+ * src/vm/jit/allocator/simplereg.c: Ensured proper alignment of all
+ doubles and longs if ALIGN_[DOUBLES|LONGS]_IN_MEMORY is defined.
+ (local_regalloc): Fixed error for HAS_ADREDD_REGISTER_FILE - else was
+ missing. Ensured use of unused argument register in leafmethod before
+ use of saved registers. Regarded PACK_REGS for
+ SUPPORT_COMBINE_INTEGER_REGISTER archs for unused integer argument
+ registers.
+ * src/vm/jit/i386/arch.h: Added defines for
+ ALIGN_[DOUBLES|LONGS]_IN_MEMORY.
+ * src/vm/jit/powerpc/arch.h: Likewise.
+
+2006-01-29 17:27 twisti
+
+ * src/vm/jit/stack.c (show_icmd): Fixed ICMD_ELSE_ICONST output.
+
+2006-01-28 14:42 twisti
+
+ * src/vm/jit/powerpc/linux/md-abi.c,
+ src/vm/jit/powerpc/darwin/md-abi.c (md_return_alloc): Use
+ m->parseddesc->paramcount instead of m->paramcount.
+ * src/vm/jit/schedule/schedule.c (schedule_init): Likewise.
+
+ * src/vm/jit/powerpc/codegen.c, src/vm/jit/alpha/codegen.c,
+ src/vm/jit/mips/codegen.c, src/vm/jit/i386/codegen.c (codegen):
+ Removed first MCODECHECK since it not required.
+
+ * src/vm/jit/methodheader.h: Added comment.
+
+2006-01-28 14:25 twisti
+
+ * src/vm/jit/x86_64/.cvsignore: Added TAGS.
+
+2006-01-28 14:21 twisti
+
+ * src/vm/loader.c (load_method): Removed reference to
+ nativelyoverloaded, monoPoly, subRedefs, subRedefsUsed, xta.
+ (load_newly_created_array): Removed reference to monoPoly.
+
+2006-01-28 14:18 twisti
+
+ * src/vm/method.c (method_descriptor2types): Removed.
+ * src/vm/method.h (methodinfo): Removed members returntype,
+ returnclass, paramcount, paramtypes, paramclass, xta, methodXTAparsed,
+ methodUsed, monoPoly, subRedefs, subRedefsUsed, and
+ nativelyoverloaded, this saves about 3.2MB of classinfo memory for
+ -all.
+ (method_descriptor2types): Removed.
+
+ * src/vm/jit/inline/inline.c (inlining_analyse_method): Use
+ m->parseddesc->paramcount instead of m->paramcount.
+ * src/vm/jit/allocator/simplereg.c (local_regalloc): Likewise.
+ * src/vm/jit/x86_64/md-abi.c (md_return_alloc): Likewise.
+
+ * src/vm/jit/jit.c (jit_compile): Removed RT_jit_parse and
+ XTA_jit_parse calls.
+ (jit_compile_intern): Removed method_descriptor2types call.
+
+ * src/cacaoh/cacaoh.c (main): Call string_init. Removed
+ nativemethod_chain and nativeclass_chain stuff.
+
+ * src/cacaoh/headers.c (nativemethod_chain): Removed.
+ (nativeclass_chain): Likewise.
+ (printmethod): Use m->isleafmethod instead of m->nativelyoverloaded.
+ (headerfile_generate): Likewise.
+
+2006-01-28 11:26 twisti
+
+ * src/vm/jit/inline/Makefile.am (INCLUDES): Renamed to AM_CPPFLAGS.
+ (libinline_la_SOURCES): Don't build RTA/XTA stuff.
+
+2006-01-28 11:24 twisti
+
+ * Makefile.am (EXTRA_DIST): Added THIRDPARTY.
+
+2006-01-27 19:05 stefan
+
+ * src/threads/native/threads.c: Removed a superfluous (I hope) NULL
+ check.
+
+2006-01-27 18:53 stefan
+
+ * src/threads/native/threads.c: Repaired thread_getself.
+
+2006-01-27 17:35 twisti
+
+ * src/toolbox/logging.c, src/toolbox/logging.h (log_start): Added.
+ (log_vprint): Likewise.
+ (log_print): Likewise.
+ (log_println): Likewise.
+ (log_finish): Likewise.
+ (log_plain): Removed.
+ (log_nl): Removed.
+ (log_flush): Likewise.
+ (dolog_plain): Likewise.
+ (get_logfile): Likewise.
+ (log_utf): Likewise.
+ (log_plain_utf): Likewise.
+ (log_text): Removed but added a define until we have ported all files.
+ (dolog): Likewise.
+ * src/vm/statistics.c (print_stats): Started to use new logging
+ functions. Print some ratios.
+
+2006-01-27 16:32 twisti
+
+ * src/native/vm/VMSystemProperties.c (preInit): Don't add . to
+ java.library.path per default.
+
+2006-01-27 12:43 twisti
+
+ * NEWS: Added powerpc fixes found by javver.
+
+2006-01-24 19:09 twisti
+
+ * src/vm/jit/powerpc/codegen.h (var_to_reg_dbl): Added.
+ (M_COPY): Handle doubles properly.
+
+2006-01-24 13:52 twisti
+
+ * src/vm/jit/powerpc/codegen.h (M_LNGMOVE): Added.
+ (var_to_reg_lng): Likewise.
+ (M_COPY): Support longs. This was actually never implemented and never
+ worked, grrr.
+
+2006-01-24 10:30 twisti
+
+ * src/vm/jit/stacktrace.c (cacao_stacktrace_fillInStackTrace): Use
+ method_print. Fixed typo.
+ * src/vm/jit/powerpc/md.c (md_codegen_findmethod): Handle 2
+ instruction returns properly.
+
+2006-01-24 10:28 twisti
+
+ * src/vm/builtin.c (builtin_f2i): Enable for interpreter.
+ (builtin_d2i): Likewise.
+ * src/vm/jit/stack.c (icmd_print_stack): Fixed for ENABLE_INTRP and
+ SUPPORT_COMBINE_INTEGER_REGISTERS.
+
+2006-01-23 16:03 twisti
+
+ * src/vm/jit/stack.c (show_icmd_method): Fixed basic block count
+ output.
+
+ * src/vm/jit/i386/codegen.c (codegen): Use disp instead of a. Usage of
+ some more macros.
+ * src/vm/jit/i386/codegen.h (M_BLT): Added.
+ (M_BLE): Likewise.
+ (M_BGE): Likewise.
+ (M_BGT): Likewise.
+ (M_BBE): Likewise.
+ (M_BAE): Likewise.
+
+2006-01-23 01:12 twisti
+
+ * configure.ac (AC_INIT): Changed version number to 0.94+cvs.
+ (CFLAGS): Changed optimization back to -O0.
+
+2006-01-23 01:01 twisti
+
+ * ChangeLog: Updated for 0.94 release.
+
+2006-01-22 23:42 twisti
+
+ * configure.ac (AC_INIT): Changed version number to 0.94.
+ (CFLAGS): Changed optimization to -O2.
+
+2006-01-22 23:33 twisti
+
+ * Updated header: Added 2006. Changed address of FSF. Changed email
+ address.
+
+2006-01-22 23:16 twisti
+
+ * Updated svn:ignore propset.
+
+2006-01-22 23:00 twisti
+
+ * src/vm/jit/intrp/Makefile.am (EXTRA_DIST): Added gray.fs and
+ BUILT_SOURCES.
+
+2006-01-22 22:46 twisti
+
+ * tests/regression/extest.java: Typo.
+
+2006-01-22 22:36 twisti
+
+ * NEWS: Added releases 0.90, 0.91, 0.92, 0.93, 0.94.
+
+2006-01-22 22:34 twisti
+
+ * README: Updated.
+
+2006-01-22 21:42 twisti
+
+ * src/vm/jit/intrp/codegen.c (cacaotype2ffitype): Revert edwin's
+ bugfix, but we can't use ffi_type_slong as it's defined as 64-bit
+ value on 32-bit machines.
+
+2006-01-22 21:40 twisti
+
+ * src/native/Makefile.am (INCLUDES): Renamed to AM_CPPFLAGS.
+ (libnative_la_SOURCES): Removed nativecalls.inc.
+
+2006-01-22 21:39 twisti
+
+ * tests/Makefile.am (SUBDIRS): Removed native.
+
+2006-01-22 21:38 twisti
+
+ * tests/regression/native/testarguments.output: Updated.
+ * tests/regression/native/Makefile.am: Made it work with distcheck.
+ * tests/regression/codepatching/Makefile.am: Likewise.
+ * tests/regression/Makefile.am: Likewise.
+
+ * tests/regression/extest.java: Comment changed.
+
+2006-01-22 21:22 twisti
+
+ * configure.in: Renamed to configure.ac.
+
+2006-01-22 21:21 twisti
+
+ * configure.in (AC_CONFIG_FILES): Removed tests/native/Makefile, added
+ tests/regression/native/Makefile.
+
+2006-01-22 20:21 twisti
+
+ * tests/native: Moved to tests/regression/native.
+
+2006-01-22 20:00 twisti
+
+ * src/vm/jit/asmpart.h (asm_handle_exception)
+ (asm_handle_nat_exception): #ifdef ENABLE_JIT.
+
+2006-01-22 19:59 twisti
+
+ * src/vm/jit/jit.c (jit_compile_intern): Use
+ CLASS_IS_OR_ALMOST_INITIALIZED to check uninitialized.
+
+2006-01-22 19:57 twisti
+
+ * src/vm/jit/stacktrace.c (stacktrace_create_inline_stackframeinfo):
+ Compiler warning fix.
+
+2006-01-22 19:56 twisti
+
+ * src/vm/jit/intrp/java.vmg: Some reformatting.
+
+2006-01-22 19:55 twisti
+
+ * src/vm/jit/intrp/asmpart.c (vm/loader.h): Added.
+ (intrp_asm_calljavafunction_intern): Use u1* instead of entrypoint.
+ (jni_invoke_java_intern): Likewise.
+
+2006-01-22 19:50 twisti
+
+ * .cvsignore, src/toolbox/.cvsignore, src/vm/jit/inline/.cvsignore,
+ src/vm/jit/allocator/.cvsignore: TAGS added.
+
+2006-01-22 19:37 twisti
+
+ * src/boehm-gc/.cvsignore, src/boehm-gc/include/.cvsignore,
+ src/vm/.cvsignore, src/vm/jit/tools/.cvsignore,
+ src/vm/jit/verify/.cvsignore, src/vm/jit/loop/.cvsignore,
+ src/vm/jit/.cvsignore, src/vm/jit/intrp/.cvsignore,
+ src/cacao/.cvsignore, src/native/vm/.cvsignore,
+ src/native/include/.cvsignore, src/native/.cvsignore,
+ src/mm/.cvsignore, src/threads/native/.cvsignore,
+ src/threads/.cvsignore, src/fdlibm/.cvsignore, src/.cvsignore,
+ src/cacaoh/.cvsignore: TAGS added.
+
+2006-01-22 19:29 edwin
+
+ * src/vm/jit/intrp/codegen.c (nativecall): Fixed calculation of the
+ stackframeinfo address.
+
+2006-01-22 14:44 twisti
+
+ * src/vm/jit/codegen-common.c (codegen_addreference): The last fix was
+ not correct if only the intrp is built.
+
+2006-01-22 14:39 twisti
+
+ * src/vm/class.c (class_showmethods): Use class_printflags.
+ * src/vm/loader.c, src/vm/loader.h (fprintflags): Removed.
+ (printflags): Likewise.
+ * src/vm/jit/inline/sets.c (printFldSet): Use field_println instead of
+ field_display.
+ * src/vm/field.c, src/vm/field.h (field_display): Removed.
+ (field_printflags): Added.
+ (field_print): Likewise.
+ (field_println): Likewise.
+
+2006-01-22 00:45 edwin
+
+ * src/vm/jit/intrp/codegen.c (cacaotype2ffitype): Use ffi_type_sint
+ for
+ values of TYPE_INT. This fixes the interpreter on i386, though I'm not
+ sure if it is a correct and complete solution.
+
+2006-01-21 21:46 edwin
+
+ * src/vm/jit/codegen-common.c (codegen_addreference): Fixed bug when
+ both ENABLE_INTRP and ENABLE_JIT were defined.
+
+2006-01-21 20:22 edwin
+
+ * src/vm/jit/verify/typecheck.c (typestack_copy,
+ typestack_separable_with)
+ (typestack_separable_from, verify_basic_block): Comment-only changes.
+ (verify_basic_block): Small typo fix in string.
+
+2006-01-20 14:49 twisti
+
+ * src/native/jni.c (fill_callblock_from_objectarray): Fixed typo.
+ (jni_method_invokeNativeHelper): Major code rewrite and speed
+ improvement, renamed to _Jv_jni_invokeNative.
+ (cacao_jni_CallVoidMethod): Fixed interpreter bug, renamed to
+ _Jv_jni_CallVoidMethod.
+ (callLongMethod): Renamed to _Jv_jni_CallLongMethod.
+ * src/native/jni.h (jni_method_invokeNativeHelper): Renamed to
+ _Jv_jni_invokeNative.
+ * src/native/vm/Method.c (Java_java_lang_reflect_Method_invokeNative):
+ Renamed jni_method_invokeNativeHelper to _Jv_jni_invokeNative.
+ * src/native/vm/Constructor.c: Updated includes.
+ (Java_java_lang_reflect_Constructor_constructNative): Renamed
+ jni_method_invokeNativeHelper to _Jv_jni_invokeNative.
+
+2006-01-20 13:41 twisti
+
+ * tests/regression/Makefile.am (EXTRA_DIST): Made it more readable.
+
+2006-01-20 13:40 twisti
+
+ * src/vm/jit/intrp/intrp.h (ffi.h): Removed, not required in this
+ file.
+ * src/vm/jit/intrp/codegen.c (nativecall): Removed unused big-endian
+ code.
+ * src/vm/jit/intrp/asmpart.c (asm_calljavafunction_intern): Renamed to
+ intrp_asm_calljavafunction_intern, just to be sure.
+
+2006-01-20 13:33 twisti
+
+ * src/vm/jit/mips/irix/md-os.c (md_signal_handler_sigsegv): Missed the
+ actal rename from the previous commit.
+
+2006-01-20 13:28 twisti
+
+ * src/vm/signal.c (vm/signallocal.h): Added.
+ * src/vm/signallocal.h (md_signal_handler_sigfpe): #ifdef for i386 and
+ x86_64.
+
+2006-01-20 13:25 twisti
+
+ * src/vm/jit/powerpc/linux/md-os.c, src/vm/jit/powerpc/darwin/md-os.c,
+ src/vm/jit/alpha/linux/md-os.c, src/vm/jit/alpha/freebsd/md-os.c,
+ src/vm/jit/mips/linux/md-os.c, src/vm/jit/mips/irix/md-os.c
+ (signal_handler_sigsegv): Renamed to md_signal_handler_sigsegv.
+ * src/vm/jit/i386/linux/md-os.c, src/vm/jit/i386/freebsd/md-os.c,
+ src/vm/jit/x86_64/md.c (signal_handler_sigsegv): Renamed to
+ md_signal_handler_sigsegv.
+ (signal_handler_sigfpe): Renamed to md_signal_handler_sigfpe.
+ * src/vm/signal.c (signal_init): Renamed signal_handler_sigsegv to
+ md_signal_handler_sigsegv and signal_handler_sigfpe to
+ md_signal_handler_sigfpe respectively.
+ * src/vm/signallocal.h (md_signal_handler_sigsegv): Added.
+ (md_signal_handler_sigfpe): Likewise.
+
+2006-01-20 13:19 twisti
+
+ * src/vm/jit/alpha/codegen.h (ucontext.h): Removed.
+ (thread_restartcriticalsection): Removed.
+
+2006-01-20 13:06 twisti
+
+ * src/vm/jit/x86_64/disass.c (dis-asm.h): Added.
+ (vm/global.h): Likewise.
+ (mm/memory.h): Removed.
+
+2006-01-20 13:05 twisti
+
+ * src/vm/class.c, src/vm/class.h (class_printflags): Added.
+ (class_print): Likewise.
+ (class_println): Likewise.
+
+2006-01-20 12:58 twisti
+
+ * src/vm/jit/i386/disass.c (disassinstr): Set the read_memory_func in
+ disassemble_info to disass_buffer_read_memory.
+ (disassemble): Removed.
+
+2006-01-20 12:57 twisti
+
+ * src/vm/jit/stack.c (show_icmd_method): Print basic blocks count and
+ better basic block header output.
+ ICMD_MULTIANEWARRAY: Changed iptr->target and iptr->val.a value.
+ ICMD_IFLE_ICONST, ICMD_ELSE_ICONST: Print values better.
+
+2006-01-20 12:01 twisti
+
+ * src/vm/jit/powerpc/disass.c (disassinstr): Set the read_memory_func
+ in disassemble_info to disass_buffer_read_memory.
+ (disassemble): Removed.
+
+2006-01-20 11:38 twisti
+
+ * src/vm/jit/disass-common.c, src/vm/jit/disass.h: Added
+ disassemble_info and disass_initialized.
+ (disassemble): Added.
+ (buffer_read_memory): Renamed to disass_buffer_read_memory.
+ * src/vm/jit/x86_64/disass.c (disassinstr): Set the read_memory_func
+ in disassemble_info to disass_buffer_read_memory.
+ (disassemble): Removed.
+
+2006-01-20 10:15 twisti
+
+ * regression/extest.java: Removed asmpart exceptions as they are now
+ checked with codepatching.
+ * regression/extest.2output: Regenerated.
+ * regression/extest_clinit.java: Added.
+
+2006-01-20 10:08 twisti
+
+ * src/vm/jit/alpha/md.c (md_init): Moved #include and extern's to the
+ top of the file, since this broke compilation on debian unstable.
+
+2006-01-19 23:40 edwin
+
+ * src/vm/jit/parse.h: Added vim boilerplate.
+
+2006-01-19 23:35 edwin
+
+ * src/vm/jit/stack.c: Added vim boilerplate.
+
+2006-01-19 22:21 twisti
+
+ * configure.in (AC_CONFIG_FILES): Removed tests/codepatching/Makefile
+ and added tests/regression/codepatching/Makefile.
+ * tests/Makefile.am (SUBDIRS): Removed codepatching.
+ * tests/regression/Makefile.am (SUBDIRS) Added with codepatching.
+ * tests/regression/codepatching/Makefile.am (JAVAFLAGS): Added.
+
+2006-01-19 22:11 edwin
+
+ * src/vm/jit/parse.c (parse): Removed inlining code.
+
+2006-01-19 22:06 edwin
+
+ * src/vm/options.c, src/vm/options.h (useinliningm): Removed.
+
+2006-01-19 22:05 twisti
+
+ * tests/codepatching: Moved to tests/regression/codepatching.
+
+2006-01-19 21:31 edwin
+
+ * src/vm/jit/jit.c (jit_compile): Removed the INAFTERMAIN hack.
+
+2006-01-19 21:27 edwin
+
+ * src/vm/jit/inline/inline.c (inlining_setup): Removed INAFTERMAIN
+ hack.
+
+2006-01-19 21:26 edwin
+
+ * src/cacao/cacao.c (main): Disabled useinlining and useinliningm.
+
+2006-01-19 20:56 twisti
+
+ * src/vm/jit/intrp/codegen.c, src/vm/jit/intrp/java.vmg (FALOAD)
+ (FASTORE): Added, required for big-endian machines.
+ * src/vm/jit/intrp/engine.c (access_array_float): Likewise.
+
+2006-01-19 20:53 twisti
+
+ * src/vm/global.h (java_floatarray): Typo.
+
+2006-01-19 20:28 edwin
+
+ * src/vm/jit/parse.c (parse, fillextable): Removed debugging code.
+ Minor cleanup.
+
+2006-01-19 20:13 edwin
+
+ * src/vm/jit/parse.c (parse): Removed commented out debugging code.
+
+2006-01-19 20:03 twisti
+
+ * src/vm/class.c (class_showmethods): Replaced method_display with
+ method_println.
+
+2006-01-19 20:00 twisti
+
+ * src/vm/jit/inline/inline.c, src/vm/jit/inline/sets.c,
+ src/vm/jit/inline/parseRTstats.c, src/vm/jit/inline/parseRT.c,
+ src/vm/jit/inline/parseRTprint.h, src/vm/jit/inline/parseXTA.c:
+ Replaced method_display and method_display_w_class calls with
+ method_println.
+
+2006-01-19 19:49 twisti
+
+ * src/vm/method.c, src/vm/method.h (method_display): Removed.
+ (method_display_w_class): Likewise.
+ (method_printflags): Added.
+ (method_print): Likewise.
+ (method_println): Likewise.
+ Removed. --This line, and those below, will be ignored--
+
+ M method.c
+ M method.h
+
+2006-01-19 17:02 twisti
+
+ * src/vm/jit/powerpc/linux/Makefile.am (INCLUDES): Renamed to
+ AM_CPPFLAGS.
+ * src/vm/jit/powerpc/Makefile.am (AM_CPPFLAGS): Added missing
+ $(OS_DIR) include.
+
+2006-01-19 16:02 twisti
+
+ * INCLUDES: Replaced with AM_CPPFLAGS as Tom Tromey suggested on irc,
+ as this is more common these days.
+
+2006-01-19 11:58 edwin
+
+ * alpha, mips, nat: removed obsolete directories resurrected by svn
+ migration
+
+2006-01-19 09:47 twisti
+
+ * INCLUDES: Replaced with AM_CPPFLAGS as Tom Tromey suggested on irc,
+ as this is more common these days.
+
+2006-01-18 21:41 edwin
+
+ * havoc.class: fix corruption by svn eol-style conversion
+
+2006-01-18 15:43 twisti
+
+ * AC_CHECK_HEADER: Added ansidecl.h, symcat.h, bfd.h and zconf.h.
+
+2006-01-18 15:41 twisti
+
+ * main: Call nogc_init for DISABLE_GC.
+
+2006-01-17 18:51 twisti
+
+ * Removed extern stuff that was removed from the lib.
+
+2006-01-17 18:37 twisti
+
+ * Updated to new classpath configure options.
+
+2006-01-17 18:24 twisti
+
+ * CLASSPATH_INSTALL_DIR: Renamed to CLASSPATH_PREFIX.
+
+2006-01-17 17:06 twisti
+
+ * CACAO_INSTALL_PREFIX: Renamed to CACAO_PREFIX.
+ * NDEBUG: Check for libintl on cygwin and darwin.
+ * --with-classpath-install-dir: Renamed to --with-classpath-prefix.
+ * --with-classpath-libdir: Added to support 64-bit platforms where the
+ libdir may be /usr/lib64.
+
+2006-01-17 16:59 twisti
+
+ * main: Removed CACAO_INSTALL_PREFIX and CLASSPATH_INSTALL_DIR since
+ CACAO_VM_ZIP_PATH and CLASSPATH_GLIBJ_ZIP_PATH are now full paths.
+
+2006-01-17 16:58 twisti
+
+ * Java_gnu_classpath_VMSystemProperties_preInit: Renamed
+ CACAO_INSTALL_PREFIX to CACAO_PREFIX.
+
+2006-01-17 16:57 twisti
+
+ * CACAO_VM_ZIP_PATH: Prepend CACAO_PREFIX.
+ * CLASSPATH_GLIBJ_ZIP_PATH: Prepend CLASSPATH_PREFIX.
+ * CLASSPATH_LIBRARY_PATH: Prepend CLASSPATH_LIBDIR.
+
+2006-01-17 16:55 twisti
+
+ * CLASSPATH_INSTALL_DIR: Renamed to CLASSPATH_PREFIX.
+
+2006-01-17 16:53 twisti
+
+ * Added.
+
+2006-01-17 16:51 twisti
+
+ * m4/as-ac-expand.m4: Added.
+
+2006-01-16 00:07 twisti
+
+ * jni_init: Fixed small typo.
+
+2006-01-16 00:04 twisti
+
+ * Java_gnu_classpath_VMSystemProperties_preInit: Use the same os.arch
+ property values as SUN and others do, so we are compatible (e.g.
+ jogl had
+ some problems), file.encoding removed as it's set by GNU Classpath,
+ hardcode values for gnu.cpu.endian.
+
+2006-01-15 23:32 twisti
+
+ * utf_java_nio_DirectByteBufferImpl_ReadWrite: Removed.
+ * utf_gnu_classpath_Pointer{32,64}: Likewise.
+ * class_java_nio_Buffer: Added, load and link this class in
+ jni_init().
+ * class_java_nio_DirectByteBufferImpl: Likewise.
+ * NewDirectByteBuffer: Removed debug output.
+ * GetDirectBufferAddress: Added instanceof check.
+ * GetDirectBufferCapacity: Likewise.
+
+2006-01-15 14:12 twisti
+
+ * native_new_and_init: Ooops, reverting last change and added an
+ explaining
+ comment.
+
+2006-01-15 13:32 twisti
+
+ * CLASSPATH_LIBRARY_PATH, CLASSPATH_GLIBJ_ZIP_PATH: Temporary bugfix.
+
+2006-01-15 12:28 twisti
+
+ * native_findfunction: #ifdef ENABLE_STATICVM.
+ * native_new_and_init: Fixed return value.
+
+2006-01-15 01:56 twisti
+
+ * math.h: Added for isnan.
+
+2006-01-15 00:37 twisti
+
+ * JAVAC: Removed.
+
+2006-01-15 00:36 twisti
+
+ * Java_gnu_classpath_VMSystemProperties_preInit: Set user.country
+ instead
+ of user.region, set en_US if none is defined,
+ java.protocol.handler.pkgs
+ removed.
+
+2006-01-14 20:02 twisti
+
+ * builtin_trace_args: Added callcount to verbose call output.
+
+2006-01-14 17:19 edwin
+
+ * src/native/vm/Method.c (invokeNative): check class access rights
+
+2006-01-13 19:37 twisti
+
+ * codegen_setup: #ifdef datareferences.
+
+2006-01-13 18:51 twisti
+
+ * This class does not differ from the GNU classpath upstream version.
+
+2006-01-13 18:49 twisti
+
+ * defineClassWithTransformers: Added, updated to generics version.
+
+2006-01-13 15:29 twisti
+
+ * codegendata: #ifdef datareferences member.
+ * codegen_finish: Moved data segment reference resolving into
+ dseg_resolve_datareferences.
+
+2006-01-13 15:28 twisti
+
+ * dseg_resolve_datareferences: Added.
+
+2006-01-13 15:27 twisti
+
+ * Small reformatting.
+
+2006-01-13 10:47 twisti
+
+ * src/vm/jit/{i386,x86_64}/{dis-asm.h,i386-dis.c}: Removed.
+ * src/vm/jit/powerpc/{ppc.h,ppc-dis.c,ppc-opc.c}: Likewise.
+ * m4/{ac_prog_javac.m4,ac_prog_javac_works.m4}: Added.
+
+2006-01-13 10:42 twisti
+
+ * ICMD_MULTIANEWARRAY: Usage of iptr->val.a and iptr->target changed.
+
+2006-01-13 10:11 twisti
+
+ * codegen.h: Added when ENABLE_JIT defined.
+ * codegen_addpatchref: Set lastmcodeptr when ENABLE_JIT is defined
+ and the
+ architecture requires it.
+
+2006-01-13 10:09 twisti
+
+ * ICMD_MULTIANEWARRAY: Usage of iptr->val.a and iptr->target changed.
+
+2006-01-12 23:54 twisti
+
+ * ICMD_MULTIANEWARRAY: Usage of iptr->val.a and iptr->target changed.
+
+2006-01-12 23:33 twisti
+
+ * arch.h: Added.
+ * GC_test_and_set: Removed 64-bit version since the 32-bit seems to be
+ sufficient and works.
+
+2006-01-12 23:31 twisti
+
+ * show_icmd: Use CLASS_IS_OR_ALMOST_INITIALIZED.
+ * initialize_class: Use CLASS_IS_OR_ALMOST_INITIALIZED.
+
+2006-01-12 23:30 twisti
+
+ * CLASS_IS_OR_ALMOST_INITIALIZED: Added.
+
+2006-01-12 23:27 twisti
+
+ * GETSTATIC_FLOAT, PUTSTATIC_FLOAT, GETFIELD_FLOAT, PUTFIELD_FLOAT:
+ Added.
+ * PATCHER_GETSTATIC_FLOAT, PATCHER_PUTSTATIC_FLOAT,
+ PATCHER_GETFIELD_FLOAT,
+ PATCHER_PUTFIELD_FLOAT: Likewise.
+ * TRACENATIVECALL: Removed codegen_findmethod, use methodinfo* from
+ threaded code stream.
+ * TRACECALL, TRACERETURN, TRACELRETURN: Likewise.
+
+2006-01-12 23:23 twisti
+
+ * Some 64-bit big-endian bugfixes.
+ * Use CLASS_IS_OR_ALMOST_INITIALIZED macro.
+
+2006-01-12 23:21 twisti
+
+ * 64-bit big-endian bugfix: replace s4 with ptrint.
+
+2006-01-12 23:10 twisti
+
+ * Imported for the interpreter.
+
+2006-01-12 23:09 twisti
+
+ * Added powerpc64 target.
+
+2006-01-12 23:08 twisti
+
+ * intrp_disassinstr, intrp_disassemble: Added.
+
+2006-01-12 23:07 twisti
+
+ * vm/options.h: Added.
+
+2006-01-12 23:05 twisti
+
+ * config.h, vm/types.h: Added.
+
+2006-01-12 23:03 twisti
+
+ * Use ASM_CALLJAVAFUNCTION* macros.
+
+2006-01-12 22:42 twisti
+
+ * thread_addstaticcritical: Quick hack: #ifdef ENABLE_JIT
+ asm_criticalsections.
+ * sigsuspend_handler: Quick hack: #ifdef ENABLE_JIT
+ thread_restartcriticalsection.
+
+2006-01-12 22:41 twisti
+
+ * vm/options.h: Added.
+ * descriptor_pool_parse_method_descriptor: #ifdef ENABLE_JIT
+ md_param_alloc
+ call.
+ * descriptor_params_from_paramtypes: Likewise.
+
+2006-01-12 22:40 twisti
+
+ * Fixed a lot of compiler warnings (functionptr -> u1*).
+
+2006-01-12 22:39 twisti
+
+ * regs: Removed.
+ * disassinstr, disassemble: Prefixed with intrp_.
+
+2006-01-12 22:38 twisti
+
+ * ICMD_MULTIANEWARRAY: Usage of iptr->val.a and iptr->target changed.
+
+2006-01-12 22:37 twisti
+
+ * builtin_gen_table: #if function according to arch.h.
+ * codegen: Prefixed with intrp_, usage of iptr->val.a and iptr->target
+ changed.
+ * codegen_createlinenumbertable: Renamed to
+ dseg_createlinenumbertable.
+ * createcompilerstub: Prefixed with intrp_.
+ * createnativestub: Likewise.
+
+2006-01-12 22:35 twisti
+
+ * verify_multianewarray: Usage iptr->val.a and iptr->target changed.
+ * JAVA_MULTIANEWARRAY: Pass c in iptr->val.a and cr in iptr->target.
+
+2006-01-12 22:34 twisti
+
+ * codegen_createnativestub: #ifdef ENABLE_JIT md_param_alloc call.
+ * codegen_disassemble_nativestub: Use DISASSEMBLE macro.
+
+2006-01-12 22:32 twisti
+
+ * analyse_stack: #ifdef ENBALE_JIT md_return_alloc call.
+ * icmd_print_stack: Print regs correctly for jit.
+ * show_icmd_method: Likewise.
+
+2006-01-12 21:55 twisti
+
+ * builtintable_internal: Removed ICMD_CHECKCAST.
+
+2006-01-12 21:39 twisti
+
+ * Prefixed functions with intrp_.
+ * md_init, md_stacktrace_get_returnaddress: Prefixed with intrp_.
+ * thread_restartcriticalsection, md_param_alloc, md_return_alloc:
+ Removed.
+
+2006-01-12 21:38 twisti
+
+ * Prefix functions with intrp_.
+
+2006-01-12 21:37 twisti
+
+ * Use ptrint instead of s8 in some places.
+
+2006-01-12 21:36 twisti
+
+ * Use DISASSINSTR macro.
+
+2006-01-12 21:36 michi
+
+ * Comment updated (for asm_cacheflush)
+
+2006-01-12 21:35 twisti
+
+ * intrp_createcompilerstub, intrp_createnativestub, intrp_codegen:
+ Added.
+ * codegen.h: Include only for some archs.
+ * md-abi.h: Include only for arm.
+ * codegen_init: Changed #ifdef to ENABLE_JIT.
+ * codegen_createnativestub: Call reg_setup only for jit, #ifdef
+ createnativestub to support interpreter.
+
+2006-01-12 21:30 twisti
+
+ * intrp_md_stacktrace_get_returnaddress: Added.
+ * cacao_stacktrace_fillInStackTrace: #ifdef
+ md_stacktrace_get_returnaddress
+ to support interpreter.
+
+2006-01-12 21:29 twisti
+
+ * Seperate ENABLE_JIT and ENABLE_INTRP.
+
+2006-01-12 21:17 twisti
+
+ * config.h: Added.
+ * intrp_patcher_get_putstatic, intrp_patcher_get_putfield,
+ intrp_patcher_aconst, intrp_patcher_builtin_multianewarray,
+ intrp_patcher_builtin_arraycheckcast,
+ intrp_patcher_invokestatic_special,
+ intrp_patcher_invokevirtual, intrp_patcher_invokeinterface,
+ intrp_patcher_checkcast_instanceof, intrp_patcher_resolve_native:
+ Likewise.
+
+2006-01-12 21:16 twisti
+
+ * jit_compile_intern: #ifdef codegen call to support interpreter, use
+ DISASSEMBLE macro.
+
+2006-01-12 21:15 twisti
+
+ * DISASSINSTR, DISASSEMBLE: Added.
+
+2006-01-12 21:14 twisti
+
+ * Use ASM_CALLJAVAFUNCTION macro.
+
+2006-01-12 21:13 twisti
+
+ * Use ASM_CALLJAVAFUNCTION_INT macro.
+
+2006-01-12 21:11 twisti
+
+ * intrp_asm_calljavafunction, intrp_createcompilerstub,
+ intrp_asm_getclassvalues_atomic: Added.
+
+2006-01-12 21:08 twisti
+
+ * Use ASM_CALLJAVAFUNCTION macros.
+ * main: #ifdef md_init call to support interpreter.
+ * link_class_intern: #ifdef createcompilerstub call to support
+ interpreter.
+
+2006-01-12 21:07 twisti
+
+ * Use ASM_CALLJAVAFUNCTION macros.
+
+2006-01-12 21:06 twisti
+
+ * Use ASM_CALLJAVAFUNCTION_ADR macro.
+ * Use ASM_CALLJAVAFUNCTION macro.
+
+2006-01-12 21:04 twisti
+
+ * intrp_md_init: Added.
+
+2006-01-12 20:57 twisti
+
+ * Check explicitly for isnan.
+
+2006-01-12 18:25 twisti
+
+ * print_dynamic_super_statistics: Added from intrp.
+
+2006-01-12 18:09 michi
+
+ * Included md-abi.h (needed for REG_SPLIT on Arm)
+
+2006-01-12 17:52 twisti
+
+ * We have to use a machine dependent arch.h.
+
+2006-01-11 12:16 twisti
+
+ * vm/jit/codegen.inc.h: Removed.
+ * Fixed compiler warnings.
+
+2006-01-11 10:35 twisti
+
+ * ICMD_F2I, ICMD_D2I, ICMD_F2L, ICMD_D2L: #if 0.
+
+2006-01-11 10:01 twisti
+
+ * SUPPORT_FMOD: Removed.
+ * SUPPORT_IFCVT: Replaced with SUPPORT_I2F, SUPPORT_I2D or
+ SUPPORT_L2F,
+ SUPPORT_L2D.
+ * SUPPORT_LONG_ICVT: Replaced with SUPPORT_F2L or SUPPORT_D2L.
+ * SUPPORT_LONG_FCVT: Replaced with SUPPORT_L2F or SUPPORT_L2D.
+
+2006-01-10 22:44 twisti
+
+ * SUPPORT_FMOD: Removed.
+ * SUPPORT_IFCVT: Replaced with SUPPORT_I2F, SUPPORT_I2D or
+ SUPPORT_L2F,
+ SUPPORT_L2D.
+ * SUPPORT_LONG_ICVT: Replaced with SUPPORT_F2L or SUPPORT_D2L.
+ * SUPPORT_LONG_FCVT: Replaced with SUPPORT_L2F or SUPPORT_L2D.
+
+2006-01-10 22:38 twisti
+
+ * SUPPORT_FMOD: Removed.
+ * SUPPORT_IFCVT: Replaced with SUPPORT_I2F, SUPPORT_I2D or
+ SUPPORT_L2F,
+ SUPPORT_L2D.
+ * SUPPORT_LONG_ICVT: Replaced with SUPPORT_F2L or SUPPORT_D2L.
+ * SUPPORT_LONG_FCVT: Replaced with SUPPORT_L2F or SUPPORT_L2D.
+
+2006-01-10 22:22 twisti
+
+ * EXTRA_DIST: Added ChangeLog-2005.
+
+2006-01-10 22:18 twisti
+
+ * SUPPORT_FMOD: Removed.
+ * SUPPORT_IFCVT: Replaced with SUPPORT_I2F, SUPPORT_I2D or
+ SUPPORT_L2F,
+ SUPPORT_L2D.
+ * SUPPORT_LONG_ICVT: Replaced with SUPPORT_F2L or SUPPORT_D2L.
+ * SUPPORT_LONG_FCVT: Replaced with SUPPORT_L2F or SUPPORT_L2D.
+
+2006-01-10 22:11 twisti
+
+ * asm_getclassvalues_atomic: Replaced with ASM_GETCLASSVALUES_ATOMIC.
+ * SUPPORT_IFCVT: Replaced with SUPPORT_I2F or SUPPORT_I2D.
+ * SUPPORT_FICVT: Replaced with SUPPORT_F2I.
+ * SUPPORT_LONG_FCVT: Replaced with SUPPORT_L2F.
+ * SUPPORT_LONG_ICVT: Replaced with SUPPORT_F2L or SUPPORT_D2L.
+
+2006-01-10 22:09 twisti
+
+ * ASM_CALLJAVAFUNCTION, ASM_CALLJAVAFUNCTION_ADR,
+ ASM_CALLJAVAFUNCTION_INT,
+ ASM_CALLJAVAFUNCTION2, ASM_CALLJAVAFUNCTION2_ADR,
+ ASM_CALLJAVAFUNCTION2_INT, ASM_CALLJAVAFUNCTION2_LONG,
+ ASM_CALLJAVAFUNCTION2_FLOAT, ASM_CALLJAVAFUNCTION2_DOUBLE: Macros
+ added,
+ these macros hide the selection between jit and intrp functions.
+ * ASM_GETCLASSVALUES_ATOMIC: Likewise.
+ * intrp_asm_calljavafunction, intrp_asm_calljavafunction_int: Added.
+ * intrp_asm_calljavafunction2, intrp_asm_calljavafunction2int,
+ intrp_asm_calljavafunction2long, intrp_asm_calljavafunction2float,
+ intrp_asm_calljavafunction2double: Likewise.
+ * intrp_asm_getclassvalues_atomic: Likewise.
+
+2006-01-10 21:58 twisti
+
+ * SUPPORT_IFCVT: Replaced with SUPPORT_I2F or SUPPORT_I2D.
+ * SUPPORT_LONG_FCVT: Replaced with SUPPORT_L2F or SUPPORT_L2D.
+ * SUPPORT_LONG_ICVT: Replaced with SUPPORT_F2I, SUPPORT_F2L or
+ SUPPORT_D2I,
+ SUPPORT_D2L.
+
+2006-01-10 21:11 twisti
+
+ * exceptions_throw_negativearraysizeexception: Use
+ * builtin_throw_exception: #ifndef NDEBUG.
+ * builtin_trace_exception: Likewise.
+ * builtin_trace_args: Likewise.
+ * builtin_displaymethodstop: Likewise.
+ * builtin_*: #if the function regarding the defines in arch.h.
+
+2006-01-10 20:57 twisti
+
+ * exceptions_throw_classformaterror,
+ exceptions_throw_arrayindexoutofboundsexception,
+ exceptions_throw_illegalargumentexception,
+ exceptions_throw_negativearraysizeexception,
+ exceptions_throw_nullpointerexception: Added.
+ * exceptions_print_exception: #ifndef NDEBUG.
+
+2006-01-10 20:56 twisti
+
+ * exceptions_throw_classformaterror: Use this function.
+
+2006-01-10 20:55 twisti
+
+ * exceptions_throw_nullpointerexception: Use this function.
+
+2006-01-10 20:50 twisti
+
+ * exceptions_throw_nullpointerexception,
+ exceptions_throw_arrayindexoutofboundsexception: Use these
+ functions.
+
+2006-01-10 20:48 twisti
+
+ * exceptions_throw_nullpointerexception,
+ exceptions_throw_illegalargumentexception: Use these functions.
+
+2006-01-10 20:46 twisti
+
+ * exceptions_throw_illegalargumentexception,
+ exceptions_throw_negativearraysizeexception,
+ exceptions_throw_arrayindexoutofboundsexception,
+ exceptions_throw_nullpointerexception: Use these functions.
+
+2006-01-10 20:44 twisti
+
+ * exceptions_throw_classformaterror,
+ exceptions_throw_negativearraysizeexception,
+ exceptions_throw_nullpointerexception: Added.
+
+2006-01-10 15:52 twisti
+
+ * Not required anymore.
+
+2006-01-10 15:50 twisti
+
+ * use_class_as_object, create_property, copy_vftbl, create_methodsig:
+ Removed.
+ * classMeth, nativeCall, methodCall, nativeMethod, nativeCompCall,
+ methodCompCall, nativeCompMethod: Likewise.
+ * natcall2utf, printNativeCall, markNativeMethodsRT: Likewise.
+
+2006-01-10 15:48 twisti
+
+ * nativeCalls, nativeCompCalls: Removed.
+ * copy_vftbl, create_methodsig: Likewise.
+ * printNativeCall, printCompNativeCall, findNativeMethodCalls,
+ findNativeClassCalls, utfNativeCall, natcall2utf: Likewise.
+
+2006-01-10 10:59 twisti
+
+ * codegen_ncode_increase: Typo.
+
+2006-01-09 20:52 twisti
+
+ * disass_buf: Fixed typo.
+
+2006-01-09 20:28 twisti
+
+ * disass_printf: Ooops, #ifdef was wrong.
+
+2006-01-09 20:19 twisti
+
+ * Removed, we now link against libbfd and libopcodes.
+ * stdarg.h, string.h, assert.h, vm/jit/powerpc/dis-asm.h: Removed.
+ * dis-asm.h, stdio.h, vm/jit/disass.h: Added.
+ * myprintf, buffer_read_memory, perror_memory, generic_print_address,
+ generic_symbol_at_address, bfd_getb32, bfd_getl32, sprintf_vma:
+ Removed.
+ * Use disass-common.c stuff.
+
+2006-01-09 20:15 twisti
+
+ * libarch_la_SOURCES: Removed dis-asm.h, ppc-dis.c, ppc-opc.c and
+ ppc.h.
+
+2006-01-09 19:21 twisti
+
+ * assert.h, stdarg.h, vm/jit/x86_64/dis-asm.h: Removed.
+ * stdio.h, vm/jit/disass.h: Added.
+ * myprintf, buffer_read_memory, generic_symbol_at_address,
+ generic_print_address, perror_memory: Likewise.
+ * Use disass-common.c stuff.
+
+2006-01-09 16:37 twisti
+
+ * string.h, vm/jit/i386/dis-asm.h: Removed.
+ * mylinebuf, mylen: Likewise.
+ * myprintf, buffer_read_memory, generic_symbol_at_address,
+ generic_print_address, perror_memory: Likewise.
+ * Use disass-common.c stuff.
+
+2006-01-09 16:36 twisti
+
+ * WITH_BINUTILS_DISASSEMBLER: Added, define DISASS_OBJ.
+ * noinst_LTLIBRARIES: Added DISASS_OBJ.
+
+2006-01-09 16:30 twisti
+
+ * This file contains the common functions required when we use the
+ binutils
+ disassembler.
+
+2006-01-09 16:29 twisti
+
+ * WITH_BINUTILS_DISASSEMBLER: Added.
+ * disass_printf: Added.
+
+2006-01-09 16:26 twisti
+
+ * WITH_BINUTILS_DISASSEMBLER: Added.
+
+2006-01-09 12:12 twisti
+
+ * Removed, we now link against libbfd and libopcodes.
+
+2006-01-09 12:10 twisti
+
+ * libarch_la_SOURCES: Removed dis-asm.h and i386-dis.c.
+
+2006-01-09 10:37 twisti
+
+ * AC_CHECK_HEADER checks for ansidecl.h, bfd.h and symcat.h removed.
+ * AC_CHECK_HEADER check for dis-asm.h added.
+ * AC_CHECK_LIB checks for libbfd and libopcodes added.
+
+2006-01-09 10:35 twisti
+
+ * Removed, we now link against libbfd and libopcodes.
+ * libarch_la_SOURCES: Removed dis-asm.h and i386-dis.c, we now link
+ against
+ libbfd and libopcodes.
+
+2006-01-08 23:37 twisti
+
+ * Updated from GNU Classpath:
+
+ 2005-12-17 Guilhem Lavaux <guilhem@kaffe.org>
+
+ * native/fdlibm/fdlibm.h
+ (isnan): Define explicitly isnan if it is not a macro.
+
+2006-01-08 23:00 twisti
+
+ * loader_load_all_classes: Print exception when loading failed.
+
+2006-01-08 22:38 twisti
+
+ * SUCK_xx_xx: We can only optimize little endian loads on i386 and
+ x86_64
+ machines. All others have problems with alignment.
+
+2006-01-08 22:12 twisti
+
+ * Ignore *.class files.
+
+2006-01-08 22:11 twisti
+
+ * java-assert.h: Unused, removed.
+
+2006-01-08 22:01 twisti
+
+ * Added VM interface change to be consistent:
+
+ 2005-11-13 Archie Cobbs <archie@dellroad.org>
+
+ * vm/reference/gnu/classpath/VMStackWalker.java (getClassLoader()):
+ added to fix an infinite loop bug.
+ * NEWS: note VM interface change.
+
+2006-01-08 21:32 twisti
+
+ * suck_add: Check for lce != NULL before adding it to the list, since
+ zip_open can return NULL.
+
+2006-01-08 19:14 twisti
+
+ * JAVAC: Removed.
+
+2006-01-08 19:13 twisti
+
+ * SOURCE_FILES: Added.
+ * JAVAC: Removed.
+ * checkall: Renamed to check.
+
+2006-01-08 19:12 twisti
+
+ * Use $(mkdir_p), $(JAVAC) and $(ZIP) variables.
+
+2006-01-08 19:11 twisti
+
+ * AM_PROG_MKDIR_P: Added.
+ * Added headers checks for ansidecl.h, bfd.h, and symcat.h if we have
+ debugging enabled.
+ * AC_PROG_JAVAC: Added.
+ * AC_PATH_PROG: Added check for zip.
+
+2006-01-08 19:09 twisti
+
+ * Macros to check for a Java compiler, taken from
+ http://ac-archive.sourceforge.net/.
+
+2006-01-04 09:35 twisti
+
+ * Removed src/toolbox/avl.[ch] copyright.
+
+2006-01-04 09:34 twisti
+
+ * avl_dump: Only print node->data.
+
+2006-01-03 23:46 twisti
+
+ * Use new avl tree code.
+ * Rewritten.
+
+2006-01-03 23:44 twisti
+
+ * exit_handler: Removed print_dynamic_super_statistics.
+ * print_stats: Added print_dynamic_super_statistics.
+
+2006-01-03 23:43 twisti
+
+ * threads.h: Added.
+ * builtin.h: Likewise.
+
+2006-01-03 23:08 twisti
+
+ * CallNonvirtualBooleanMethodA: Added missing ;.
+
+2006-01-03 23:05 twisti
+
+ * ENABLE_STATISTICS: Fixed typo.
+
+2006-01-02 21:01 christian
+
+ typeing error
+
+2006-01-02 17:13 twisti
+
+ * nregdescint, nregdescfloat: Moved to md-abi.c.
+
+2006-01-02 17:12 twisti
+
+ * nregdescint, nregdescfloat: Added.
+
+2006-01-02 17:11 twisti
+
+ * noinst_HEADERS: Removed md-abi.inc.
+
+2006-01-02 16:40 twisti
+
+ * signal_handler_sigsegv: Replaced functionptr with u1*.
+
+2006-01-02 16:18 twisti
+
+ * nregdescint, nregdescfloat: Moved to md-abi.c.
+
+2006-01-02 16:17 twisti
+
+ * nregdescint, nregdescfloat: Added.
+ * noinst_HEADERS: Removed md-abi.inc.
+
+2006-01-02 16:12 twisti
+
+ * INCLUDES: Added OS_DIR, some archs have their md-abi.* files in the
+ os
+ directory.
+
+2006-01-02 16:08 christian
+
+ *** empty log message ***
+
+2006-01-02 16:04 twisti
+
+ * nregdescint, nregdescfloat: Moved to md-abi.c.
+
+2006-01-02 16:03 twisti
+
+ * nregdescint, nregdescfloat: Added.
+ * noinst_HEADERS: Removed md-abi.inc.
+
+2006-01-02 14:32 christian
+
+ Removed old debug message
+
+2006-01-02 14:26 twisti
+
+ * md-abi.inc: Removed.
+
+2006-01-02 14:25 twisti
+
+ * nregdescint, nregdescfloat: Moved to md-abi.c.
+
+2006-01-02 14:24 twisti
+
+ * nregdescint, nregdescfloat: Added.
+ * noinst_HEADERS: Removed md-abi.inc.
+
+2006-01-02 14:11 christian
+
+ Corrected \"\" to \<\> for system header include
+
+2006-01-02 14:07 twisti
+
+ * nregdescint, nregdescfloat: Moved to md-abi.c.
+ * noinst_HEADERS: Removed md-abi.inc.
+
+2006-01-02 14:06 twisti
+
+ * nregdescint, nregdescfloat: Added.
+ * disassinstr: Some code improvement.
+
+2006-01-02 14:05 twisti
+
+ * md-abi.inc: Removed.
+
+2006-01-02 13:05 christian
+
+ Changed register allocator .inc to .c files and moved them to
+ src/vm/jit/allocator
+
+2006-01-02 12:59 christian
+
+ Changed register allocator .inc to .c files and moved them to
+ src/vm/jit/allocator
+
+2006-01-02 12:22 twisti
+
+ * Fixed result message for debug.
+
+2006-01-02 12:10 twisti
+
+ * Typo.
+
+2006-01-02 12:04 twisti
+
+ * Added ltdl.h check.
+
+2006-01-02 11:34 twisti
+
+ * Fixed ltdl.h include path.
+
+2006-01-02 01:34 twisti
+
+ * Fixed ltdl.h include path.
+
+2006-01-02 01:15 twisti
+
+ * I don't think we really need them, but they are still in Attic.
+
+2006-01-02 01:10 twisti
+
+ * Generated changelog for 2005.
+
+2006-01-02 01:05 twisti
+
+ * unzip.[ch], libffi, libltdl: Removed.
+
+2006-01-01 21:53 twisti
+
+ * Removed libltdl.
+
+2006-01-01 21:38 twisti
+
+ * We now use the system libltdl.
+
+2006-01-01 21:32 twisti
+
+ * Changed text of kaffe's stuff, dalibor pointed this out.
+
+2006-01-01 21:29 twisti
+
+ * AC_LIBLTDL_CONVENIENCE, AC_SUBST(LIBLTDL): Removed.
+ * AC_COMPILE_CHECK_SIZEOF: Replaced with AC_CHECK_SIZEOF.
+
+2006-01-01 21:22 twisti
+
+ * m4 macros have a different copyright header.
+
+2006-01-01 21:13 twisti
+
+ * Lists all third party software we use. This list contains all
+ stuff we
+ used in 0.93. Stuff that has been ripped will be deleted after that
+ commit, this is for the records.
+
+2006-01-01 20:55 twisti
+
+ * Not required.
+
+2006-01-01 19:39 twisti
+
+ * Removed libltdlc.la.
+ * DIST_SUBDIRS: Removed libltdl.
+ * SUBDIRS: Likewise.
+
+2006-01-01 19:38 twisti
+
+ * Added libltdl check.
+ * AC_CONFIG_SUBDIRS: Removed src/libltdl.
+
+2006-01-01 18:39 twisti
+
+ * libarch_la_SOURCES: Removed symcat.h.
+
+2006-01-01 18:34 twisti
+
+ * Use system one.
+
+2006-01-01 18:33 twisti
+
+ * libarch_la_SOURCES: Removed symcat.h.
+
+2006-01-01 18:30 twisti
+
+ * generic_symbol_at_address: Print only 8 bytes.
+
+2006-01-01 18:21 twisti
+
+ * Use system ones.
+ * generic_symbol_at_address: Added, they were implemented in dis-buf.c
+ which was removed.
+ * generic_print_address: Likewise.
+ * perror_memory: Likewise.
+
+2006-01-01 18:20 twisti
+
+ * libarch_la_SOURCES: Removed ansidecl.h, bfd.h and dis-buf.c.
+ * config.h, vm/jit/codegen-common.h: Added.
+
+2006-01-01 16:40 twisti
+
+ * Changed include to use system headers.
+
+2006-01-01 16:39 twisti
+
+ * Use system ones.
+ * generic_symbol_at_address: Added, they were implemented in dis-buf.c
+ which was removed.
+ * generic_print_address: Likewise.
+ * perror_memory: Likewise.
+
+2006-01-01 16:37 twisti
+
+ * libarch_la_SOURCES: Removed ansidecl.h, bfd.h and dis-buf.c.
+
+2006-01-01 16:35 twisti
+
+ * DEC OSF cc only defines __alpha.
+
+2006-01-01 16:34 twisti
+
+ * class_resolvefield: Renamed except to throwexception since some
+ compilers
+ have a builtin except macro (like DEC OSF cc).
+ * class_resolveclassmethod: Likewise.
+ * class_resolveinterfacemethod: Likewise.
+
+2006-01-01 16:31 twisti
+
+ * zip_open: Handle compiler error with DEC OSF's cc.
+
+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.
+