cacao.git
18 years ago* src/vm/builtin.c (builtin_throw_exception): Changed return type and
twisti [Tue, 11 Apr 2006 10:20:18 +0000 (10:20 +0000)]
* 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.

18 years ago* src/vm/jit/ifconv/ifconv.c (ifconv_static): Keep compiler happy.
twisti [Tue, 11 Apr 2006 10:04:43 +0000 (10:04 +0000)]
* src/vm/jit/ifconv/ifconv.c (ifconv_static): Keep compiler happy.

18 years ago* src/vm/jit/stack.c (stack_print_stack): Only use `regs` if
edwin [Tue, 11 Apr 2006 09:00:36 +0000 (09:00 +0000)]
* 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.

18 years ago* src/vm/jit/intrp/asmpart.c (intrp_asm_handle_exception): Do not trace
edwin [Tue, 11 Apr 2006 05:10:55 +0000 (05:10 +0000)]
* 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.

18 years ago* src/vm/jit/mips: Added TAGS.
twisti [Thu, 6 Apr 2006 12:54:07 +0000 (12:54 +0000)]
* 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.

18 years ago* src/vm/jit/mips/codegen.c (codegen): Changed signature to use
twisti [Thu, 6 Apr 2006 12:51:53 +0000 (12:51 +0000)]
* 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.

18 years ago* configure.ac: Added host type `armv5l`.
edwin [Thu, 6 Apr 2006 00:33:47 +0000 (00:33 +0000)]
* configure.ac: Added host type `armv5l`.

18 years ago* src/vm/jit/parse.h, src/vm/jit/parse.c (OP1LOAD):
edwin [Wed, 5 Apr 2006 20:31:38 +0000 (20:31 +0000)]
* 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.

18 years ago* src/vm/jit/parse.c (parse): Cleaned up and reordered an if.
edwin [Wed, 5 Apr 2006 19:58:18 +0000 (19:58 +0000)]
* src/vm/jit/parse.c (parse): Cleaned up and reordered an if.

18 years ago* src/vm/jit/parse.c (parse): Remove the `if (!iswide)` check for each opcode
edwin [Wed, 5 Apr 2006 19:44:46 +0000 (19:44 +0000)]
* 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.)

18 years ago* src/vm/jit/alpha/codegen.c (codegen, createnativestub): Remove
edwin [Wed, 5 Apr 2006 18:48:56 +0000 (18:48 +0000)]
* src/vm/jit/alpha/codegen.c (codegen, createnativestub): Remove
opt_verbosecall code for NDEBUG builds.

18 years ago* src/vm/jit/parse.c (parse): Only do verifier checks if ENABLE_VERIFIER.
edwin [Wed, 5 Apr 2006 18:13:18 +0000 (18:13 +0000)]
* src/vm/jit/parse.c (parse): Only do verifier checks if ENABLE_VERIFIER.
Cleaned up an obsolete printf.

18 years ago* configure.ac (ENABLE_RT_TIMING): Added.
edwin [Wed, 5 Apr 2006 12:56:43 +0000 (12:56 +0000)]
* 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.

18 years ago* src/vm/jit/inline/inline.c (create_block): Use BASICBLOCK_INIT.
edwin [Wed, 5 Apr 2006 11:32:52 +0000 (11:32 +0000)]
* src/vm/jit/inline/inline.c (create_block): Use BASICBLOCK_INIT.

18 years ago* src/vm/jit/alpha/asmpart.S (asm_vm_call_method): Removed !NDEBUG as
twisti [Wed, 5 Apr 2006 10:02:14 +0000 (10:02 +0000)]
* 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.

18 years ago* src/vm/jit/jit.h (instruction): Removed `method` field.
edwin [Wed, 5 Apr 2006 09:57:55 +0000 (09:57 +0000)]
* 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.

18 years agoFixes GCC Bugzilla Bug #26990.
twisti [Wed, 5 Apr 2006 09:54:33 +0000 (09:54 +0000)]
Fixes GCC Bugzilla Bug #26990.
* src/vm/vm.c (vm_exit): Don't check for exception of System.exit().

18 years ago* src/vm/builtin.c (builtin_throw_exception): No twisti, we don't turn off
edwin [Tue, 4 Apr 2006 21:31:52 +0000 (21:31 +0000)]
* 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.

18 years ago* src/vm/jit/i386/Makefile.am: Do not build disassebmler for
edwin [Tue, 4 Apr 2006 18:14:55 +0000 (18:14 +0000)]
* src/vm/jit/i386/Makefile.am: Do not build disassebmler for
--disable-disassembler

18 years ago* src/vm/jit/i386/codegen.c (codegen): disable verbosecall code for NDEBUG
edwin [Tue, 4 Apr 2006 18:14:01 +0000 (18:14 +0000)]
* src/vm/jit/i386/codegen.c (codegen): disable verbosecall code for NDEBUG

18 years ago* src/vm/jit/ifconv/ifconv.c (ifconv_static): #ifdef debug code.
edwin [Tue, 4 Apr 2006 18:11:25 +0000 (18:11 +0000)]
* src/vm/jit/ifconv/ifconv.c (ifconv_static): #ifdef debug code.
(check): Likewise.

18 years ago* src/threads/native/threads.c (tablelock): Removed.
twisti [Tue, 4 Apr 2006 09:17:05 +0000 (09:17 +0000)]
* 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.

18 years ago* src/vm/exceptions.c (exceptions_new_nosuchmethoderror): Print
twisti [Tue, 4 Apr 2006 09:14:19 +0000 (09:14 +0000)]
* src/vm/exceptions.c (exceptions_new_nosuchmethoderror): Print
classname with dots.
(exceptions_handle_exception): Compiler warning fix.

18 years ago* src/vm/jit/verify/typeinfo.c (CLASSINFO_IMPLEMENTS_INTERFACE): Removed the
edwin [Tue, 4 Apr 2006 09:13:01 +0000 (09:13 +0000)]
* src/vm/jit/verify/typeinfo.c (CLASSINFO_IMPLEMENTS_INTERFACE): Removed the
single use of the macro VFTBLINTERFACETABLE

18 years ago* src/native/vm/VMClass.c: Reordered methods like in the
twisti [Tue, 4 Apr 2006 08:45:43 +0000 (08:45 +0000)]
* src/native/vm/VMClass.c: Reordered methods like in the
VMClass.java. This eases the 1.5 changes addition.

18 years ago* src/vm/jit/parse.c (parse): Removed obsolete variable
edwin [Tue, 4 Apr 2006 08:30:53 +0000 (08:30 +0000)]
* src/vm/jit/parse.c (parse): Removed obsolete variable
`skipBasicBlockChange`.

18 years ago* src/vm/jit/parse.c (parse): Removed obsolete variable `firstlocal`.
edwin [Tue, 4 Apr 2006 08:24:25 +0000 (08:24 +0000)]
* src/vm/jit/parse.c (parse): Removed obsolete variable `firstlocal`.
(Was used for the old inliner.)

18 years ago* src/vm/jit/powerpc/codegen.c (codegen): Changed signature to use
twisti [Mon, 3 Apr 2006 15:36:00 +0000 (15:36 +0000)]
* 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.

18 years ago* src/vm/jit/powerpc/codegen.c (codegen): Renamed parentargs_base to
twisti [Mon, 3 Apr 2006 13:59:29 +0000 (13:59 +0000)]
* src/vm/jit/powerpc/codegen.c (codegen): Renamed parentargs_base to
stackframesize.
(codegen_trace_args): Likewise.

18 years ago* src/vm/jit/i386/codegen.c (codegen): Implemented inlining of synchronized
edwin [Sun, 2 Apr 2006 16:17:57 +0000 (16:17 +0000)]
* src/vm/jit/i386/codegen.c (codegen): Implemented inlining of synchronized
methods (INLINE_START, INLINE_END do monitorenter/exit).

18 years ago* src/vm/jit/inline/inline.c (inline_node): Added fields for inlining
edwin [Sun, 2 Apr 2006 16:16:18 +0000 (16:16 +0000)]
* 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.

18 years ago* src/vm/jit/intrp/codegen.c (createcalljavafunction): Create codeinfo with
edwin [Sat, 1 Apr 2006 21:03:40 +0000 (21:03 +0000)]
* src/vm/jit/intrp/codegen.c (createcalljavafunction): Create codeinfo with
the right methodinfo pointer.

18 years ago* src/vm/jit/codegen-common.h (intrp_createnativestub): Takes a `jitdata *` now.
edwin [Sat, 1 Apr 2006 21:00:28 +0000 (21:00 +0000)]
* 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.

18 years ago* src/vm/jit/inline/inline.c, src/vm/jit/inline/inline_debug.c: Adapted to
edwin [Fri, 31 Mar 2006 12:38:33 +0000 (12:38 +0000)]
* src/vm/jit/inline/inline.c, src/vm/jit/inline/inline_debug.c: Adapted to
twisti's jitdata changes.

18 years ago* src/vm/jit/powerpc/asmpart.S (asm_vm_call_method): Replaced $stub
twisti [Fri, 31 Mar 2006 07:50:19 +0000 (07:50 +0000)]
* 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.

18 years ago* src/vm/jit/powerpc/patcher.c
twisti [Fri, 31 Mar 2006 07:14:10 +0000 (07:14 +0000)]
* src/vm/jit/powerpc/patcher.c
(patcher_checkcast_instanceof_interface): Compile fix (typo).

18 years ago* src/vm/jit/alpha/asmpart.S (vm/jit/abi.h): Changed to
twisti [Thu, 30 Mar 2006 12:01:50 +0000 (12:01 +0000)]
* 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.

18 years ago* src/vm/jit/powerpc/codegen.c (codegen): Changed signature to use
twisti [Thu, 30 Mar 2006 11:59:46 +0000 (11:59 +0000)]
* 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.

18 years ago* src/vm/jit/ifconv/Makefile.am (AM_CPPFLAGS): Added OS_DIR.
twisti [Thu, 30 Mar 2006 10:26:39 +0000 (10:26 +0000)]
* src/vm/jit/ifconv/Makefile.am (AM_CPPFLAGS): Added OS_DIR.
(LIBS): Added.

18 years ago* src/vm/jit/Makefile.am (noinst_HEADERS): Added abi-asm.h.
twisti [Thu, 30 Mar 2006 10:23:11 +0000 (10:23 +0000)]
* 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.

18 years ago* src/vm/jit/codegen-common.c: Use ENABLE_DISASSEMBLER.
twisti [Thu, 30 Mar 2006 10:14:22 +0000 (10:14 +0000)]
* 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.

18 years ago* src/vm/jit/powerpc/patcher.c (patcher_invokevirtual): Use disp
twisti [Thu, 30 Mar 2006 10:10:07 +0000 (10:10 +0000)]
* 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.

18 years ago* src/vm/exceptions.c (exceptions_handle_exception): Check for special
twisti [Thu, 30 Mar 2006 09:52:49 +0000 (09:52 +0000)]
* 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.

18 years ago* src/vm/jit/mips/asmpart.S (asm_vm_call_method): Return NULL for
twisti [Thu, 30 Mar 2006 09:20:42 +0000 (09:20 +0000)]
* src/vm/jit/mips/asmpart.S (asm_vm_call_method): Return NULL for
exception.

18 years ago* configure.ac (opcodes): Check for disassembler symbol as
twisti [Thu, 30 Mar 2006 08:48:26 +0000 (08:48 +0000)]
* configure.ac (opcodes): Check for disassembler symbol as
init_disassemble_info isn't defined everywhere, like NetBSD.

18 years ago* src/vm/jit/powerpc/netbsd: New directory.
twisti [Wed, 29 Mar 2006 23:11:22 +0000 (23:11 +0000)]
* 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.

18 years ago* tests/regression/codepatching/test.java: Made functions static
twisti [Tue, 28 Mar 2006 15:43:15 +0000 (15:43 +0000)]
* tests/regression/codepatching/test.java: Made functions static
final.
  --This line, and those below, will be ignored--

M    test.java

18 years ago* src/vm/jit/i386/codegen.c (codegen): Changed signature to use
twisti [Tue, 28 Mar 2006 15:41:58 +0000 (15:41 +0000)]
* 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.

18 years ago* configure.ac (AC_CONFIG_FILES): Added src/vm/jit/ifconv/Makefile.
twisti [Tue, 28 Mar 2006 15:14:13 +0000 (15:14 +0000)]
* configure.ac (AC_CONFIG_FILES): Added src/vm/jit/ifconv/Makefile.

18 years ago* src/vm/jit/Makefile.am (DIST_SUBDIRS): Added ifconv.
twisti [Tue, 28 Mar 2006 15:10:43 +0000 (15:10 +0000)]
* 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.

18 years ago* src/vm/method.h (vm/jit/code.h): Added.
twisti [Tue, 28 Mar 2006 14:52:32 +0000 (14:52 +0000)]
* 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.

18 years ago* src/vm/jit/x86_64/md.c (md_signal_handler_sigsegv)
twisti [Tue, 28 Mar 2006 14:31:53 +0000 (14:31 +0000)]
* src/vm/jit/x86_64/md.c (md_signal_handler_sigsegv)
(md_signal_handler_sigfpe): Comment changes.

18 years ago* src/vm/jit/i386/codegen.c (createnativestub): Replaced _exceptionptr
twisti [Tue, 28 Mar 2006 14:30:49 +0000 (14:30 +0000)]
* src/vm/jit/i386/codegen.c (createnativestub): Replaced _exceptionptr
by _no_threads_exceptionptr.

18 years ago* NEWS: Added upcoming 0.96 release. Added miranda-methods fix.
twisti [Tue, 28 Mar 2006 14:22:03 +0000 (14:22 +0000)]
* NEWS: Added upcoming 0.96 release. Added miranda-methods fix.

18 years ago* src/tests/regression/native/checkjni.c (PushLocalFrame): New method.
twisti [Tue, 28 Mar 2006 14:21:14 +0000 (14:21 +0000)]
* 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.

18 years ago* src/vm/jit/x86_64/codegen.c (codegen): Renamed parentargs_base to
twisti [Tue, 28 Mar 2006 11:54:41 +0000 (11:54 +0000)]
* src/vm/jit/x86_64/codegen.c (codegen): Renamed parentargs_base to
stackframesize.
* tests/regression/extest.2output: Updated.

18 years ago* src/vm/Makefile.am (noinst_LTLIBRARIES): Reformatted.
twisti [Tue, 28 Mar 2006 10:42:04 +0000 (10:42 +0000)]
* src/vm/Makefile.am (noinst_LTLIBRARIES): Reformatted.

18 years ago* src/native/vm/VMClassLoader.c (loadClass): Smaller changes.
twisti [Tue, 28 Mar 2006 10:21:40 +0000 (10:21 +0000)]
* src/native/vm/VMClassLoader.c (loadClass): Smaller changes.

18 years ago* src/native/native.c (dummynativetable): Renamed getModifiers
twisti [Tue, 28 Mar 2006 09:41:33 +0000 (09:41 +0000)]
* 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.

18 years ago* src/vm/class.c: Don't initialize classes to NULL.
twisti [Mon, 27 Mar 2006 11:37:46 +0000 (11:37 +0000)]
* 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.

18 years ago* src/vm/utf8.c: Removed superfluous comment.
twisti [Mon, 27 Mar 2006 11:15:44 +0000 (11:15 +0000)]
* src/vm/utf8.c: Removed superfluous comment.

18 years ago* src/cacao/cacao.c (main): remove debug code
motse [Fri, 24 Mar 2006 11:50:00 +0000 (11:50 +0000)]
* src/cacao/cacao.c (main): remove debug code

18 years ago* src/vm/jit/parse.h (bound_check): Renamed to CHECK_BYTECODE_INDEX, made
edwin [Thu, 23 Mar 2006 12:48:43 +0000 (12:48 +0000)]
* 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.

18 years ago* src/vm/jit/parse.c (CHECK_END_OF_BYTECODE): Added a macro for checking
edwin [Thu, 23 Mar 2006 11:22:04 +0000 (11:22 +0000)]
* 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.

18 years ago* src/vm/jit/parse.c (parse): Uncuddled else's.
edwin [Thu, 23 Mar 2006 02:06:50 +0000 (02:06 +0000)]
* src/vm/jit/parse.c (parse): Uncuddled else's.

18 years ago* src/vm/jit/powerpc/darwin/md-asm.h (_asm_replacement_out)
edwin [Thu, 23 Mar 2006 00:56:21 +0000 (00:56 +0000)]
* src/vm/jit/powerpc/darwin/md-asm.h (_asm_replacement_out)
(_asm_replacement_in, _replace_me): Added #defines for Darwin.

18 years ago* src/vm/jit/stack.h (CHECK_STACK_DEPTH): Added. Uses goto to a common
edwin [Thu, 23 Mar 2006 00:30:30 +0000 (00:30 +0000)]
* 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.

18 years ago* src/vm/global.h (TYPECHECK_STACK_COMPCAT): Replaced by ENABLE_VERIFIER.
edwin [Thu, 23 Mar 2006 00:08:28 +0000 (00:08 +0000)]
* 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.

18 years ago* src/vm/jit/stack.h (BBEND): Inlined this macro (used only once) at its
edwin [Wed, 22 Mar 2006 23:51:09 +0000 (23:51 +0000)]
* 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.

18 years ago* src/vm/jit/stack.c (analyse_stack): Removed obsolete label `icmd_store`.
edwin [Wed, 22 Mar 2006 23:29:18 +0000 (23:29 +0000)]
* src/vm/jit/stack.c (analyse_stack): Removed obsolete label `icmd_store`.

18 years ago* src/vm/jit/jit.h (ICMD_READONLY_ARG, ICMD_CLEAR_ARGREN): Removed.
edwin [Wed, 22 Mar 2006 23:27:12 +0000 (23:27 +0000)]
* 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.

18 years ago* src/vm/jit/stack.h (TYPE_VERIFYERROR): Changed to CHECK_BASIC_TYPE. This
edwin [Wed, 22 Mar 2006 23:17:27 +0000 (23:17 +0000)]
* 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.

18 years ago* src/vm/jit/i386/asmpart.S (asm_vm_call_method): Save/restore stack pointer
edwin [Wed, 22 Mar 2006 20:59:49 +0000 (20:59 +0000)]
* src/vm/jit/i386/asmpart.S (asm_vm_call_method): Save/restore stack pointer
properly. Fixed copy&paste error in restoring callee-save registers.

18 years ago* src/vm/jit/stack.c (analyse_stack): Added throw_stack_overflow label.
edwin [Wed, 22 Mar 2006 18:32:47 +0000 (18:32 +0000)]
* 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(...)

18 years ago* src/vm/jit/stack.h (REQUIRE): Made a NOP if ENABLE_VERIFIER is undefined.
edwin [Wed, 22 Mar 2006 17:25:36 +0000 (17:25 +0000)]
* 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.

18 years ago* src/vm/jit/stack.h (REQUIRE): Avoid duplication of exception throwing code.
edwin [Wed, 22 Mar 2006 17:14:07 +0000 (17:14 +0000)]
* 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.

18 years ago* src/vm/jit/powerpc/md.c (DISASSINSTR): #ifdef'ed
edwin [Wed, 22 Mar 2006 15:30:06 +0000 (15:30 +0000)]
* 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

18 years ago* src/vm/jit/inline/inline.c (stack_depth): Moved here from inline_debug.c.
edwin [Wed, 22 Mar 2006 12:35:15 +0000 (12:35 +0000)]
* 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

18 years ago* src/vm/jit/inline/inline_debug.c (debug_dump_stack): Fixed warning on
edwin [Wed, 22 Mar 2006 09:19:48 +0000 (09:19 +0000)]
* src/vm/jit/inline/inline_debug.c (debug_dump_stack): Fixed warning on
platforms that don't define NULL as a pointer.

18 years ago* src/vm/jit/inline/inline.c (relocate_stack_ptr_inter, rewrite_method):
edwin [Wed, 22 Mar 2006 01:22:11 +0000 (01:22 +0000)]
* 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.

18 years ago* src/vm/jit/i386/codegen.h (ALIGNCODENOP): Added.
twisti [Tue, 21 Mar 2006 14:07:34 +0000 (14:07 +0000)]
* 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.

18 years ago* src/vm/jit/Makefile.am: Removed ifconv. Again...
twisti [Tue, 21 Mar 2006 11:58:50 +0000 (11:58 +0000)]
* src/vm/jit/Makefile.am: Removed ifconv. Again...

18 years ago* configure.ac (AC_INIT): Changed cvs to svn.
twisti [Tue, 21 Mar 2006 11:50:32 +0000 (11:50 +0000)]
* 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.

18 years ago* src/vm/jit/alpha/codegen.c (codegen): Comment 16-byte stack alignment.
edwin [Tue, 21 Mar 2006 07:57:11 +0000 (07:57 +0000)]
* 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.

18 years ago* src/vm/jit/alpha/asmpart.S (REPLACEMENT_ROOM): Fixed deleted characters.
edwin [Tue, 21 Mar 2006 07:42:34 +0000 (07:42 +0000)]
* src/vm/jit/alpha/asmpart.S (REPLACEMENT_ROOM): Fixed deleted characters.

18 years ago* src/vm/jit/inline/Makefile.am (AM_CPPFLAGS): Added OS include dir.
edwin [Tue, 21 Mar 2006 04:14:26 +0000 (04:14 +0000)]
* src/vm/jit/inline/Makefile.am (AM_CPPFLAGS): Added OS include dir.

18 years ago* src/vm/jit/inline/inline_debug.c: Added file.
edwin [Tue, 21 Mar 2006 03:15:01 +0000 (03:15 +0000)]
* src/vm/jit/inline/inline_debug.c: Added file.

18 years ago* src/vm/jit/inline/inline.c: Committed the inliner. This code works but
edwin [Tue, 21 Mar 2006 00:13:45 +0000 (00:13 +0000)]
* 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.

18 years agomajor rework of jvmti. now we have three processes in jvmti mode. there are still...
motse [Tue, 21 Mar 2006 00:04:59 +0000 (00:04 +0000)]
major rework of jvmti. now we have three processes in jvmti mode. there are still many debug statements

18 years ago* src/vm/jit/code.h (codeinfo): Comment that profiling fields
edwin [Mon, 20 Mar 2006 23:56:51 +0000 (23:56 +0000)]
* src/vm/jit/code.h (codeinfo): Comment that profiling fields
will be removed.

18 years ago* src/vm/jit/alpha/asmpart.S (asm_replacement_out): 16-byte align stack.
edwin [Mon, 20 Mar 2006 15:41:23 +0000 (15:41 +0000)]
* src/vm/jit/alpha/asmpart.S (asm_replacement_out): 16-byte align stack.

18 years ago* doc/stack_frames.txt: Some fixes, described PowerPC stack frames.
edwin [Mon, 20 Mar 2006 15:37:41 +0000 (15:37 +0000)]
* doc/stack_frames.txt: Some fixes, described PowerPC stack frames.

18 years ago* src/vm/jit/alpha/codegen.c (codegen): Align stack to 16-bytes in
twisti [Mon, 20 Mar 2006 15:12:16 +0000 (15:12 +0000)]
* 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.

18 years ago* autogen.sh, src/boehm-gc/autogen.sh: Prefix all shell variables with
twisti [Mon, 20 Mar 2006 14:43:36 +0000 (14:43 +0000)]
* autogen.sh, src/boehm-gc/autogen.sh: Prefix all shell variables with
CACAO_ to prevent problems on OpenBSD.

18 years ago* src/boehm-gc/darwin_stop_world.c,
twisti [Mon, 20 Mar 2006 14:27:47 +0000 (14:27 +0000)]
* 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.

18 years ago* src/vm/jit/code.c (code_get_stack_frame_size): Implement stack alignment
edwin [Sun, 19 Mar 2006 19:46:11 +0000 (19:46 +0000)]
* 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.

18 years ago* src/vm/jit/powerpc/md.c (md_patch_replacement_point): Added.
edwin [Sat, 18 Mar 2006 04:14:17 +0000 (04:14 +0000)]
* 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.

18 years ago* src/vm/jit/alpha/codegen.c (codegen): Use `disp` for displacement.
edwin [Thu, 16 Mar 2006 23:32:17 +0000 (23:32 +0000)]
* src/vm/jit/alpha/codegen.c (codegen): Use `disp` for displacement.

18 years ago* src/vm/jit/alpha/md.c (Changes): Added my name.
edwin [Thu, 16 Mar 2006 21:12:33 +0000 (21:12 +0000)]
* src/vm/jit/alpha/md.c (Changes): Added my name.

18 years ago* src/vm/jit/alpha/md.c (md_patch_replacement_point): Added.
edwin [Thu, 16 Mar 2006 21:11:50 +0000 (21:11 +0000)]
* 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.