cacao.git
17 years agoMerged changes from trunk.
edwin [Tue, 5 Sep 2006 17:21:21 +0000 (17:21 +0000)]
Merged changes from trunk.

--HG--
branch : new_instruction_format

17 years ago* src/vm/jit/jit.h (basicblock): Changed type of iinstr to
edwin [Tue, 5 Sep 2006 16:12:09 +0000 (16:12 +0000)]
* src/vm/jit/jit.h (basicblock): Changed type of iinstr to
new_instruction *.
* src/vm/jit/stack.c (new_stack_analyse): Removed obsolete casts.
* src/vm/jit/show.c (new_show_basicblock): Likewise.
* src/vm/jit/verify/typecheck.c (verify_basic_block): Likewise.
* src/vm/jit/allocator/simplereg.c (new_allocate_scratch_registers):
Likewise.
* src/vm/jit/parse.c (new_parse): Likewise.
* src/vm/jit/x86_64/codegen.c (new_parse): Likewise.

--HG--
branch : new_instruction_format

17 years ago* src/vm/jit/jit.h (s3_operand_t): Removed arrayvftbl.
edwin [Tue, 5 Sep 2006 12:42:12 +0000 (12:42 +0000)]
* src/vm/jit/jit.h (s3_operand_t): Removed arrayvftbl.
* src/vm/jit/x86_64/codegen.c (codegen): ICMD_MULTIANEWARRAY:
Use s3.c.cls instead of s3.arrayvftbl.

--HG--
branch : new_instruction_format

17 years ago* src/vm/jit/jit.h (jitdata): Removed field new_rd.
edwin [Tue, 5 Sep 2006 12:29:16 +0000 (12:29 +0000)]
* src/vm/jit/jit.h (jitdata): Removed field new_rd.
* src/vm/jit/jit.c (jit_compile): Use rd instead of new_rd.
(jit_compile_intern): Likewise.
* src/vm/jit/verify/typecheck.c (typecheck): Likewise.
(verify_basic_block): Removed unused variables.
* src/vm/jit/allocator/simplereg.c (new_regalloc):
Use rd instead of new_rd.
* src/vm/jit/x86_64/codegen.c (codegen): Likewise.

--HG--
branch : new_instruction_format

17 years ago* src/vm/jit/x86_64/codegen.c: Ported to new instruction format.
edwin [Tue, 5 Sep 2006 11:53:11 +0000 (11:53 +0000)]
* src/vm/jit/x86_64/codegen.c: Ported to new instruction format.
* src/vm/jit/x86_64/emit.c: Likewise.
* src/vm/jit/x86_64/md-emit.h: Likewise.

--HG--
branch : new_instruction_format

17 years ago* src/vm/jit/jit.h (s3_operand_t): Added union field arrayvftbl.
edwin [Tue, 5 Sep 2006 11:50:47 +0000 (11:50 +0000)]
* src/vm/jit/jit.h (s3_operand_t): Added union field arrayvftbl.

--HG--
branch : new_instruction_format

17 years ago* src/vm/jit/jit.c (jit_compile): Test setup for the new x86_64
edwin [Tue, 5 Sep 2006 11:47:44 +0000 (11:47 +0000)]
* src/vm/jit/jit.c (jit_compile): Test setup for the new x86_64
codegen.
(jit_compile_intern): Likewise.

--HG--
branch : new_instruction_format

17 years ago* src/vm/jit/emit.h (emit_load*): Changed for new instruction format.
edwin [Tue, 5 Sep 2006 11:42:55 +0000 (11:42 +0000)]
* src/vm/jit/emit.h (emit_load*): Changed for new instruction format.
(emit_store*): Likewise.
(emit_copy*): Likewise.
(emit_store_dst): New function.

--HG--
branch : new_instruction_format

17 years ago* src/vm/jit/jit.h (basicblock): Added fields invars and outvars.
edwin [Tue, 5 Sep 2006 11:40:03 +0000 (11:40 +0000)]
* src/vm/jit/jit.h (basicblock): Added fields invars and outvars.
* src/vm/jit/stack.h (MARKREACHED): Set invars.
* src/vm/jit/stack.c (new_stack_analyse): Set invars and outvars.
* src/vm/jit/show.c (new_show_basicblock): Show invars and outvars.

--HG--
branch : new_instruction_format

17 years ago* src/vm/jit/jit.h (NEW_INSTRUCTION_*): Renamed to INSTRUCTION_.
edwin [Tue, 5 Sep 2006 11:34:49 +0000 (11:34 +0000)]
* src/vm/jit/jit.h (NEW_INSTRUCTION_*): Renamed to INSTRUCTION_.
The old INSTRUCTION_ and ICMD_ macros are removed.
* src/vm/resolve.c (NEW_INSTRUCTION_*): Replaced with INSTRUCTION_.
* src/vm/jit/show.c (new_show_icmd): Likewise.
* src/vm/jit/allocator/simplereg.c (new_allocate_scratch_registers):
Likewise.
* src/vm/jit/stack.c (new_stack_analyse): Likewise, and add a call
of builtintable_replace_function.

--HG--
branch : new_instruction_format

17 years ago* src/vm/jit/verify/typecheck.c: Ported to new instruction format.
edwin [Tue, 5 Sep 2006 11:20:04 +0000 (11:20 +0000)]
* src/vm/jit/verify/typecheck.c: Ported to new instruction format.
* src/vm/jit/verify/typeinfo.c (typeinfo_print): Likewise.
(typeinfo_print_short): Likewise.

--HG--
branch : new_instruction_format

17 years ago* src/vm/builtin.h (builtintable_replace_function): Ported to new
edwin [Tue, 5 Sep 2006 11:16:06 +0000 (11:16 +0000)]
* src/vm/builtin.h (builtintable_replace_function): Ported to new
instruction format.
* src/vm/builtin.c (builtintable_replace_function): Likewise.

--HG--
branch : new_instruction_format

17 years ago* src/vm/jit/show.c (new_show_variable_array): New function.
edwin [Tue, 5 Sep 2006 11:13:58 +0000 (11:13 +0000)]
* src/vm/jit/show.c (new_show_variable_array): New function.
(new_show_method): Fixed calculation of lastbptr.
Only show code lengths if stage >= SHOW_CODE.

--HG--
branch : new_instruction_format

17 years ago* src/vm/resolve.h: Removed code for old instruction format.
edwin [Tue, 5 Sep 2006 10:52:12 +0000 (10:52 +0000)]
* src/vm/resolve.h: Removed code for old instruction format.
* src/vm/resolve.c: Likewise.

--HG--
branch : new_instruction_format

17 years ago* src/vm/jit/allocator/simplereg.h: Removed code for old instruction
edwin [Tue, 5 Sep 2006 10:47:11 +0000 (10:47 +0000)]
* src/vm/jit/allocator/simplereg.h: Removed code for old instruction
format.
* src/vm/jit/allocator/simplereg.c: Likewise.

--HG--
branch : new_instruction_format

17 years ago* src/vm/jit/show.h: Removed code for old instruction format.
edwin [Tue, 5 Sep 2006 10:44:52 +0000 (10:44 +0000)]
* src/vm/jit/show.h: Removed code for old instruction format.
* src/vm/jit/show.c: Likewise.

--HG--
branch : new_instruction_format

17 years ago* src/vm/jit/stack.h: Removed code for old instruction format.
edwin [Tue, 5 Sep 2006 10:39:58 +0000 (10:39 +0000)]
* src/vm/jit/stack.h: Removed code for old instruction format.
* src/vm/jit/stack.c: Likewise.

--HG--
branch : new_instruction_format

17 years ago* src/vm/jit/parse.h: Removed code for old instruction format.
edwin [Tue, 5 Sep 2006 10:37:26 +0000 (10:37 +0000)]
* src/vm/jit/parse.h: Removed code for old instruction format.
* src/vm/jit/parse.c: Likewise.

--HG--
branch : new_instruction_format

17 years ago* src/vm/jit/i386/Makefile.am (noinst_HEADERS): Removed
twisti [Tue, 5 Sep 2006 10:15:55 +0000 (10:15 +0000)]
* src/vm/jit/i386/Makefile.am (noinst_HEADERS): Removed
icmd_uses_reg_res.inc.

17 years ago* src/vm/jit/i386/icmd_uses_reg_res.inc: Removed.
twisti [Tue, 5 Sep 2006 10:10:10 +0000 (10:10 +0000)]
* src/vm/jit/i386/icmd_uses_reg_res.inc: Removed.

17 years ago* src/vm/jit/x86_64/codegen.h (ICONST): Fix this macro so it properly
edwin [Tue, 5 Sep 2006 10:09:52 +0000 (10:09 +0000)]
* src/vm/jit/x86_64/codegen.h (ICONST): Fix this macro so it properly
uses its arguments.
(LCONST): Likewise.

17 years ago* src/tests/Howdy.java: Removed.
twisti [Tue, 5 Sep 2006 10:04:50 +0000 (10:04 +0000)]
* src/tests/Howdy.java: Removed.

17 years ago* src/vm/jit/x86_64/codegen.c (codegen): Use cd->stackframesize
twisti [Tue, 5 Sep 2006 10:03:40 +0000 (10:03 +0000)]
* src/vm/jit/x86_64/codegen.c (codegen): Use cd->stackframesize
instead of stackframesize (bugfix).
(createnativestub): Likewise.

17 years ago* src/vm/jit/codegen-common.h (codegen_reg_of_dst): New function.
edwin [Tue, 5 Sep 2006 09:59:53 +0000 (09:59 +0000)]
* src/vm/jit/codegen-common.h (codegen_reg_of_dst): New function.
* src/vm/jit/codegen-common.c (codegen_reg_of_dst): Likewise.
Right now this duplicates codegen_reg_of_var's body. We should
probably make one of these functions inline the other.

17 years ago* src/vm/jit/ifconv/ifconv.c (ifconv_static): Deactivated
edwin [Tue, 5 Sep 2006 00:12:10 +0000 (00:12 +0000)]
* src/vm/jit/ifconv/ifconv.c (ifconv_static): Deactivated
show_basicblock calls that will become a problem when code for the
old instruction format is removed.
(check): Likewise.

17 years ago* src/vm/resolve.c (resolve_field): new_resolve_field_verifier_checks
edwin [Tue, 5 Sep 2006 00:02:30 +0000 (00:02 +0000)]
* src/vm/resolve.c (resolve_field): new_resolve_field_verifier_checks
used instead of the old function that will be removed soon.
(resolve_method): Use new_resolve_method_verifier_checks instead of the
old function that will be removed soon.
(new_resolve_method_verifier_checks): Port handling of TYPEINFO_IS_NEWOBJECT.
(new_resolve_method_verifier_checks): Likewise.
(new_constrain_unresolved_field): Likewise.
(new_constrain_unresolved_method): Likewise.

17 years ago* src/vm/jit/parse.c (new_parse): Changed leftover "OP" macro uses
edwin [Mon, 4 Sep 2006 23:24:39 +0000 (23:24 +0000)]
* src/vm/jit/parse.c (new_parse): Changed leftover "OP" macro uses
to "NEW_OP".

17 years ago* src/vm/jit/mips/emit.c (config.h): Added.
twisti [Mon, 4 Sep 2006 17:45:32 +0000 (17:45 +0000)]
* src/vm/jit/mips/emit.c (config.h): Added.
[ENABLE_THREADS] (threads/native/lock.h): Likewise.
(vm/exceptions.h): Likewise.
(vm/stringlocal.h): Likewise.
(vm/jit/asmpart.h): Likewise.
(vm/jit/dseg.h): Likewise.
(vm/jit/replace.h): Likewise.
(emit_exception_stubs): New method.
(emit_patcher_stubs): Likewise.
(emit_replacement_stubs): Likewise.

* src/vm/jit/mips/codegen.c (codegen): Use cd->stackframesize instead
of stackframesize, use emit functions to generate stubs and call trace
code.
(createnativestub): Likewise.

17 years ago* src/vm/jit/alpha/patcher.c (patcher_wrapper): Patch back machine
christian [Mon, 4 Sep 2006 17:12:48 +0000 (17:12 +0000)]
* src/vm/jit/alpha/patcher.c (patcher_wrapper): Patch back machine
code.
(patcher_aconst): Renamed to patcher_resolve_classref_to_classinfo.
(patcher_clinit): Renamed to patcher_initialize_class.
(patcher_resolve_native): Renamed to patcher_resolve_native_function.
(patcher_athrow_areturn): Renamed to patcher_resolve_class.
(patcher_checkcast_instanceof_class): Renamed to
patcher_resolve_classref_to_vftbl.
(patcher_checkcast_instanceof_flags): Renamed to
patcher_resolve_classref_to_flags.
(patcher_builtin_multianewarray): Removed.
(patcher_builtin_arraycheckcast): Likewise.

* src/vm/jit/alpha/codegen.c (codegen): Use new patcher functions.

17 years ago* src/vm/jit/alpha/emit.c (vm/builtin.h): Added.
twisti [Mon, 4 Sep 2006 16:33:57 +0000 (16:33 +0000)]
* src/vm/jit/alpha/emit.c (vm/builtin.h): Added.
(vm/jit/abi-asm.h): Likewise.
(vm/jit/replace.h): Likewise.
(emit_verbosecall_enter): New method.
(emit_verbosecall_exit): Likewise.

* src/vm/jit/alpha/codegen.c (codegen): Use emit functions to generate
call trace code.
(createnativestub): Likewise.

17 years ago* src/vm/jit/powerpc/emit.c (config.h): Added.
twisti [Mon, 4 Sep 2006 15:48:16 +0000 (15:48 +0000)]
* src/vm/jit/powerpc/emit.c (config.h): Added.
[ENABLE_THREADS] (threads/native/lock.h): Likewise.
(vm/builtin.h): Likewise.
(vm/jit/abi-asm.h): Likewise.
(vm/jit/asmpart.h): Likewise.
(vm/jit/replace.h): Likewise.
(emit_exception_stubs): New method.
(emit_patcher_stubs): Likewise.
(emit_replacement_stubs): Likewise.
(emit_verbosecall_enter): Likewise.
(emit_verbosecall_exit): Likewise.

* src/vm/jit/powerpc/codegen.c (codegen): Use emit functions to
generate stubs and call trace code.
(createnativestub): Likewise.

17 years ago* src/vm/jit/powerpc/asmpart.S (asm_call_jit_compiler): We don't save
twisti [Mon, 4 Sep 2006 14:21:11 +0000 (14:21 +0000)]
* src/vm/jit/powerpc/asmpart.S (asm_call_jit_compiler): We don't save
an argument on the stack anymore, offsets adjusted.
(asm_handle_exception): Use md_codegen_get_pv_from_pc instead of
assembler code and temporary variables as on other RISC architectures.

17 years ago* src/vm/jit/powerpc64/emit.c (emit_verbosecall_enter): Fixed off
tbfg [Mon, 4 Sep 2006 12:38:21 +0000 (12:38 +0000)]
* src/vm/jit/powerpc64/emit.c (emit_verbosecall_enter): Fixed off
by one stackslot overwrite some stuff bug.

* src/vm/jit/powerpc64/codegen.c (codegen): Fix parameter passing
in.

17 years ago* src/vm/jit/powerpc64/arch.h: Reenabled platfrom features.
tbfg [Sat, 2 Sep 2006 14:26:04 +0000 (14:26 +0000)]
* src/vm/jit/powerpc64/arch.h: Reenabled platfrom features.

* src/vm/jit/powerpc64/codegen.c (codegen): Fixed native calls.
(createnativestub): Likewise.

17 years ago* srv/vm/jit/powerpc64/asmpart.S (asm_vm_call_method): Fixed argument
tbfg [Thu, 31 Aug 2006 19:58:15 +0000 (19:58 +0000)]
* srv/vm/jit/powerpc64/asmpart.S (asm_vm_call_method): Fixed argument
handling.

17 years ago* src/vm/jit/powerpc64/emit.c (emit_verbosecall_enter): Moved from
tbfg [Thu, 31 Aug 2006 13:32:19 +0000 (13:32 +0000)]
* src/vm/jit/powerpc64/emit.c (emit_verbosecall_enter): Moved from
codegen.c refactored into function, and made it work.
(emit_verbosecall_exit): Likewise.

* src/vm/jit/powerpc64/codegen.c (codegen_trace_args): Moved into
emit.c and renamed it to emit_verbosecall_enter.
(codegen): Using emit_verbosecall_* instead of inline code, and
various fixes to make verbose:call work.
(createnativestub): Likewise.

17 years ago* src/vm/jit/powerpc64/linux/md-abi.h: New REG_TOC name needed to
tbfg [Mon, 28 Aug 2006 19:31:37 +0000 (19:31 +0000)]
* src/vm/jit/powerpc64/linux/md-abi.h: New REG_TOC name needed to
call builtins due to ppc64 function descriptors (ELF ABI).

* src/vm/jit/powerpc64/codegen.c (createnativestub): Big endian
requires M_LLD and M_IST to copy s4 values from dseg to stack.
(codegen): gen_method needs to create function descriptor call.

* src/vm/jit/powerpc64/asmpart.S: When linking statically
non function descriptor calls are generated by compiler.
Some ifdefs added to fix static linking.

17 years ago* src/vm/jit/patcher.h (patcher_resolve_class): Added.
twisti [Mon, 28 Aug 2006 15:18:54 +0000 (15:18 +0000)]
* src/vm/jit/patcher.h (patcher_resolve_class): Added.
(patcher_initialize_class): Likewise.
(patcher_resolve_classref_to_classinfo): Likewise.
(patcher_resolve_classref_to_vftbl): Likewise.
(patcher_resolve_classref_to_flags): Likewise.
(patcher_resolve_native_function): Likewise.

* src/vm/jit/powerpc/patcher.c (patcher_wrapper): Patch back machine
code.
(patcher_aconst): Renamed to patcher_resolve_classref_to_classinfo.
(patcher_clinit): Renamed to patcher_initialize_class.
(patcher_resolve_native): Renamed to patcher_resolve_native_function.
(patcher_athrow_areturn): Renamed to patcher_resolve_class.
(patcher_checkcast_class): Renamed to
patcher_resolve_classref_to_vftbl.
(patcher_checkcast_instanceof_flags): Renamed to
patcher_resolve_classref_to_flags.
(patcher_builtin_multianewarray): Removed.
(patcher_builtin_arraycheckcast): Likewise.
(patcher_instanceof_class): Likewise.

* src/vm/jit/powerpc/codegen.c (codegen): Use new patcher functions
(some of them were already commited accidentally in the last commit).

17 years ago* src/vm/jit/emit.h (emit_verbosecall_enter): Added.
twisti [Mon, 28 Aug 2006 13:05:03 +0000 (13:05 +0000)]
* src/vm/jit/emit.h (emit_verbosecall_enter): Added.
(emit_verbosecall_exit): Likewise.

* src/vm/jit/powerpc/emit.c (vm/builtin.h): Added.
(vm/jit/asmpart.h): Likewise.
(vm/jit/replace.h): Likewise.
(emit_exception_stubs): New method.
(emit_patcher_stubs): Likewise.
(emit_replacement_stubs): Likewise.
(emit_verbosecall_enter): Likewise.
(emit_verbosecall_exit): Likewise.

* src/vm/jit/powerpc/codegen.c (vm/jit/abi-asm.h): Added.
(codegen_trace_args): Removed.
(codegen): Use cd->stackframesize instead of stackframesize, use emit
functions to generate stubs and call trace code.
(createnativestub): Likewise.

17 years ago* src/vm/jit/show.c (show_method): Stubs are printed green when
tbfg [Fri, 25 Aug 2006 11:55:21 +0000 (11:55 +0000)]
* src/vm/jit/show.c (show_method): Stubs are printed green when
using -debug-color.

* src/vm/jit/powerpc64/linux/md-os.c (md_signal_handler_sigusr2):
Moved into #ifdef ENABLE_THREADS conditional compile, as it depends
on threadobject.

* src/vm/jit/powerpc64/codegen.h: Added M_LADD_IMM and M_AADD_IMM
for better reading of code. Fixed M_CLR.

* src/vm/jit/powerpc64/codegen.c (codegen): Some fixes with ?RETURN,
some fixes for -verbose:call (still defunc),
(createnativestub): Lots of fixes in stackframe calculations.

* src/vm/jit/powerpc64/patcher.c (patch_aconst): Correct asm comment.

* src/vm/jit/powerpc64/disass.c (disassinstr): Display 64 bit
addresses in disassembled code (-sa).

* src/vm/jit/powerpc64/asmpart.S (L_asm_vm_call_method_return):
Fixed path for methods returning a value.
(L_asm_handle_exception): Fixed path for exception handling.
(asm_patcher_wrapper): Fixed path for codepatching.

17 years ago* src/vm/exceptions.c (new_illegalmonitorstateexception): Renamed to
twisti [Fri, 25 Aug 2006 07:54:27 +0000 (07:54 +0000)]
* src/vm/exceptions.c (new_illegalmonitorstateexception): Renamed to
exceptions_new_illegalmonitorstateexception.
(exceptions_throw_illegalmonitorstateexception): New method.
* src/vm/exceptions.h: Likewise.

* src/threads/native/lock.c (lock_monitor_exit): Use
exceptions_throw_illegalmonitorstateexception instead of
new_illegalmonitorstateexception.
(lock_monitor_wait): Likewise.
(lock_monitor_notify): Likewise.

* src/cacaoh/headers.c (new_illegalmonitorstateexception): Renamed to
exceptions_throw_illegalmonitorstateexception.

17 years ago* src/vm/jit/alpha/emit.c (emit_exception_stubs): Bugfix when
twisti [Fri, 25 Aug 2006 07:29:05 +0000 (07:29 +0000)]
* src/vm/jit/alpha/emit.c (emit_exception_stubs): Bugfix when
reallocating the code area.
(emit_patcher_stubs): Reuse the asm_patcher_wrapper call code.
(emit_replacement_stubs): Removed savedmcodeptr.

17 years ago* src/vm/jit/alpha/emit.c (emit_exception_stubs): Bugfix when
twisti [Fri, 25 Aug 2006 07:14:31 +0000 (07:14 +0000)]
* src/vm/jit/alpha/emit.c (emit_exception_stubs): Bugfix when
reallocating the code area.
(emit_patcher_stubs): Likewise.

17 years ago* src/vm/jit/codegen-common.h (codegendata): Added stackframesize. I
twisti [Thu, 24 Aug 2006 18:42:48 +0000 (18:42 +0000)]
* src/vm/jit/codegen-common.h (codegendata): Added stackframesize. I
think this is more obvious than in jitdata.

* src/vm/jit/jit.h (jitdata): Removed stackframesize.

* src/vm/jit/alpha/emit.c (emit_exception_stubs): Replaced
jd->stackframesize with cd->stackframesize.

* src/vm/jit/alpha/codegen.c (codegen): Likewise.
(createnativestub): Likewise.

* src/vm/jit/i386/emit.c (emit_exception_stubs): Likewise.

* src/vm/jit/i386/codegen.c (codegen): Likewise.
(createnativestub): Likewise.

17 years agosrv/vm/jit/powerpc/linux/md-os.c (md_signal_handler_sigusr2): Moved inside
tbfg [Thu, 24 Aug 2006 09:29:44 +0000 (09:29 +0000)]
srv/vm/jit/powerpc/linux/md-os.c (md_signal_handler_sigusr2): Moved inside
ENABLE_THREADS ifdef as is depends on threads.

17 years ago* src/vm/jit/alpha/emit.c [ENABLE_THREADS] (threads/native/lock.h):
twisti [Wed, 23 Aug 2006 16:04:03 +0000 (16:04 +0000)]
* src/vm/jit/alpha/emit.c [ENABLE_THREADS] (threads/native/lock.h):
Added.
(vm/jit/asmpart.h): Likewise.
(vm/jit/dseg.h): Likewise.
(emit_exception_stubs): New function.
(emit_patcher_stubs): Likewise.
(emit_replacement_stubs): Likewise.

* src/vm/jit/i386/codegen.c (codegen): Use jd->stackframesize, removed
stub generation code.
(createnativestub): Likewise.

17 years ago* src/vm/jit/alpha/asmpart.S (asm_handle_exception): Fixed bug with
twisti [Wed, 23 Aug 2006 15:55:38 +0000 (15:55 +0000)]
* src/vm/jit/alpha/asmpart.S (asm_handle_exception): Fixed bug with
maybe-leaf stack and use same registers as on MIPS.

17 years ago* src/vm/jit/alpha/asmpart.S (asm_handle_exception): Use
twisti [Wed, 23 Aug 2006 15:45:52 +0000 (15:45 +0000)]
* src/vm/jit/alpha/asmpart.S (asm_handle_exception): Use
md_codegen_get_pv_from_pc.

17 years ago* src/vm/jit/mips/asmpart.S (asm_handle_exception): Changed some
twisti [Wed, 23 Aug 2006 15:10:16 +0000 (15:10 +0000)]
* src/vm/jit/mips/asmpart.S (asm_handle_exception): Changed some
comments.

17 years ago* src/vm/jit/alpha/asmpart.S (L_asm_handle_exception_stack_loop):
twisti [Wed, 23 Aug 2006 14:55:28 +0000 (14:55 +0000)]
* src/vm/jit/alpha/asmpart.S (L_asm_handle_exception_stack_loop):
Don't save xpc.

17 years ago* src/boehm-gc/configure.in (AC_C_INLINE): Set CFLAGS properly before.
twisti [Wed, 23 Aug 2006 14:23:26 +0000 (14:23 +0000)]
* src/boehm-gc/configure.in (AC_C_INLINE): Set CFLAGS properly before.

17 years ago* configure.ac (AC_CONFIG_SUBDIRS): Moved to the end of the file and
twisti [Wed, 23 Aug 2006 14:07:10 +0000 (14:07 +0000)]
* configure.ac (AC_CONFIG_SUBDIRS): Moved to the end of the file and
export OPT_CFLAGS/ARCH_CFLAGS instead of CFLAGS.

* src/boehm-gc/configure.in: Pass CFLAGS to Makefile's as for CACAO.
* src/boehm-gc/Makefile.am (AM_CXXFLAGS, AM_CFLAGS): Commented.
(AM_CPPFLAGS): Added.

17 years ago* src/vm/jit/alpha/emit.c (config.h): Added.
twisti [Wed, 23 Aug 2006 12:57:41 +0000 (12:57 +0000)]
* src/vm/jit/alpha/emit.c (config.h): Added.
[ENABLE_THREADS] (threads/native/lock.h): Likewise.
(vm/jit/asmpart.h): Likewise.
(vm/jit/dseg.h): Likewise.
(emit_exception_stubs): New function.
(emit_patcher_stubs): Likewise.
(emit_replacement_stubs): Likewise.

* src/vm/jit/alpha/codegen.c (codegen): Use jd->stackframesize, use
new desg_add_* functions, removed stub generation code.
(createnativestub): Likewise.

17 years ago* src/vm/vm.c (OPT_ALL, OPT_METHOD, OPT_SIGNATURE): #ifndef NDEBUG.
twisti [Wed, 23 Aug 2006 12:29:29 +0000 (12:29 +0000)]
* src/vm/vm.c (OPT_ALL, OPT_METHOD, OPT_SIGNATURE): #ifndef NDEBUG.
(usage): Don't print -all, -m, -sig options.

17 years ago* src/vm/jit/emit.h (emit_replacement_stubs): Added.
twisti [Wed, 23 Aug 2006 12:12:30 +0000 (12:12 +0000)]
* src/vm/jit/emit.h (emit_replacement_stubs): Added.

17 years ago* src/vm/jit/i386/md-emit.h (vm/jit/codegen-common.h): Added.
twisti [Tue, 22 Aug 2006 20:48:16 +0000 (20:48 +0000)]
* src/vm/jit/i386/md-emit.h (vm/jit/codegen-common.h): Added.

17 years ago* src/vm/jit/emit.h (emit_exception_stubs): Added.
twisti [Tue, 22 Aug 2006 19:53:56 +0000 (19:53 +0000)]
* src/vm/jit/emit.h (emit_exception_stubs): Added.
(emit_patcher_stubs): Likewise.

* src/vm/jit/jit.h (jitdata): Added member stackframesize.

17 years ago* src/vm/jit/powerpc64/linux/md-abi.h: Added PA_SIZE and
tbfg [Tue, 22 Aug 2006 15:49:25 +0000 (15:49 +0000)]
* src/vm/jit/powerpc64/linux/md-abi.h: Added PA_SIZE and
PA_SIZE_IN_POINTERS defines.

* src/vm/jit/powerpc64/arch.h: Enabled machine dependend
compare_and_swap implementation for ppc64.

* src/vm/jit/powerpc64/codegen.c (codegen): Remove lot of PACK_REGS
usages, changed stack address calculations from *4 -> *8, added
a M_NOP for debugging.

* src/vm/jit/powerpc64/machine-instr.h (compare_and_swap): Ported
for 64 bit.
(atomic_add): Removed.

* src/vm/jit/powerpc64/patcher.c (patcher_wrapper): Fixed stack
calculations from *4 -> *8
(patcher_aconst): Likewise.
(patcher_athrow_areturn): Likewise.
(patcher_builtin_arraycheckcast): Likewise.
(patcher_builtin_multianewarray): Likewise.
(patcher_checkcast_class): Likewise.
(patcher_checkcast_instanceof_flags): Likewise.
(patcher_checkcast_instanceof_interf): Likewise.
(patcher_clinit): Likewise.
(patcher_get_putfield): Likewise.
(patcher_get_putstatic): Likewise.
(patcher_instanceof_class): Likewise.
(patcher_invokeinterface): Likewise.
(patcher_invokestatic_special): Likewise.
(patcher_invokevirtual): Likewise.
(patcher_resolve_native): Likewise.

* src/vm/jit/powerpc64/asmpart.S (asm_patcher_wrapper): Fixed
calling convetions, as we callback C. Fixed 32 bit issues.
(asm_call_jit_compiler): PPC64 has additional PA_SIZE
on stack - fixed that.

17 years ago* src/native/vm/java_lang_VMThrowable.c (fillInStackTrace): Removed
twisti [Tue, 22 Aug 2006 14:39:36 +0000 (14:39 +0000)]
* src/native/vm/java_lang_VMThrowable.c (fillInStackTrace): Removed
architecture #ifdef's.
(getStackTrace): Likewise.

17 years ago* src/native/native.c (dummynativetable): Made non-static, GCC 4.1
twisti [Tue, 22 Aug 2006 12:43:00 +0000 (12:43 +0000)]
* src/native/native.c (dummynativetable): Made non-static, GCC 4.1
optimized the table away.
(native_init): Removed dummynativetable-hack.

17 years ago* src/vm/options.h: Renamed -verbosecolor to -debug-color,
tbfg [Tue, 22 Aug 2006 09:02:25 +0000 (09:02 +0000)]
* src/vm/options.h: Renamed -verbosecolor to -debug-color,
opt_colorverbose to opt_debugcolor and OPT_COLORVERBOSE to
OPT_DEBUGCOLOR
* src/vm/method.c: Same as above.
* src/vm/jit/dseg.c: Same as above.
* src/vm/vm.c: Same as above.
* src/vm/options.c: Same as above.
* src/vm/jit/Makefile.am: Removed options.h dependecy, as deps are
tracked  automatically.

17 years ago* src/lib/vm/reference/gnu/classpath/VMStackWalker.java
twisti [Mon, 21 Aug 2006 17:37:01 +0000 (17:37 +0000)]
* src/lib/vm/reference/gnu/classpath/VMStackWalker.java
(firstNonNullClassLoader): Added and made native.

* src/native/vm/gnu_classpath_VMStackWalker.c (getClassContext):
Removed architecture #ifdef's, as most stacktrace stuff is
architecture independent and the dependent stuff is very simple to
implement.
(getCallingClass): Likewise.
(getCallingClassLoader): Likewise.
(firstNonNullClassLoader): Added.

17 years ago* src/vm/jit/i386/asmpart.S (L_asm_patcher_wrapper_exception): Removed
twisti [Mon, 21 Aug 2006 15:25:59 +0000 (15:25 +0000)]
* src/vm/jit/i386/asmpart.S (L_asm_patcher_wrapper_exception): Removed
duplicate add line.

17 years ago* configure.ac (AC_CONFIG_FILES): Added
twisti [Mon, 21 Aug 2006 15:17:48 +0000 (15:17 +0000)]
* configure.ac (AC_CONFIG_FILES): Added
src/vm/jit/i386/darwin/Makefile.

* src/vm/jit/i386/codegen.c (createnativestub): Align stack to
16-bytes.

* src/vm/jit/i386/darwin/md-os.c: Darwin specific functions.
* src/vm/jit/i386/darwin/md-asm.h: Darwin specific assembler defines.
* src/vm/jit/i386/darwin/Makefile.am: New file.
* src/vm/jit/i386/darwin/.cvsignore: Likewise.

* src/vm/jit/i386/linux/md-asm.h: Linux specific assembler defines.
* src/vm/jit/i386/freebsd/md-asm.h: FreeBSD specific assembler defines.

* src/vm/jit/i386/md-asm.h: Removed.

* src/vm/jit/i386/asmpart.S (asm_handle_exception): Align stack to
16-bytes.
(asm_abstractmethoderror): Likewise.
(asm_patcher_wrapper): Likewise.
(asm_builtin_f2i, asm_builtin_d2i, asm_builtin_f2l, asm_builtin_d2l):
Likewise.

* src/vm/jit/i386/Makefile.am (DIST_SUBDIRS): Added darwin.
(AM_CPPFLAGS): Added OS_DIR as include.
(noinst_HEADERS): Removed md-asm.h.

* src/threads/native/threads.c (threads_cast_darwinstop): Use generic
defines and machine dependent structures.

17 years ago* src/vm/jit/powerpc/darwin/md-asm.h (asm_initialize_thread_stack):
twisti [Mon, 21 Aug 2006 14:52:20 +0000 (14:52 +0000)]
* src/vm/jit/powerpc/darwin/md-asm.h (asm_initialize_thread_stack):
Define removed.
(asm_perform_threadswitch): Likewise.
(asm_switchstackandcall): Likewise.

17 years agosrc/vm/options.h: Added the commandlineswitch --verbosecolor which enables
tbfg [Fri, 18 Aug 2006 18:37:19 +0000 (18:37 +0000)]
src/vm/options.h: Added the commandlineswitch --verbosecolor which enables
colored output of show: -si prints method names in red -sd shows datasegment
dump in blue. (use | less -R)

src/vm/options.c (options_get): There is a nasty bug in there, read comment.

17 years ago* src/toolbox/util.c (util_current_time_millis): Removed.
twisti [Fri, 18 Aug 2006 13:07:21 +0000 (13:07 +0000)]
* src/toolbox/util.c (util_current_time_millis): Removed.
* src/toolbox/util.h: Likewise.

* src/vm/vm.c (vm_create): Use builtin_currenttimemillis instead of
util_current_time_millis.

17 years ago* src/vm/exceptions.c (new_arraystoreexception): Renamed to
twisti [Fri, 18 Aug 2006 13:01:00 +0000 (13:01 +0000)]
* src/vm/exceptions.c (new_arraystoreexception): Renamed to
exceptions_new_arraystoreexception.
(exceptions_throw_arraystoreexception): New function.
* src/vm/exceptions.h: Likewise.

* src/vm/builtin.c (builtintable_init): Reimplemented and added
builtintable_function.
(builtintable_replace_function): New function.
(builtin_arraycopy): Likewise.
(builtin_currenttimemillis): Likewise.

* src/vm/builtin.h (builtintable_entry): Added some extra members.
(builtin_asm_get_exceptionptrptr): Removed.
(builtintable_replace_function): Added.
(builtin_arraycopy): Likewise.
(builtin_currenttimemillis): Likewise.

* src/vm/builtintable.inc (builtintable_internal): Use new
builtintable_entry structure.
(builtintable_automatic): Likewise.
(builtintable_function): Added.

* src/vm/jit/stack.c (stack_analyse): Call
builtintable_replace_function.

* src/vm/jit/show.c (new_show_icmd): Print correct variable of builtin
calls.
(show_icmd): Likewise.

* src/vm/jit/stacktrace.c (stacktrace_inline_arraystoreexception): Use
exceptions_new_arraystoreexception.

* src/native/vm/java_lang_VMSystem.c (arraycopy): Removed
implementation and use builtin_arraycopy.

* src/cacaoh/headers.c
(exceptions_throw_arrayindexoutofboundsexception): Added.
(exceptions_new_arraystoreexception): Likewise.
(exceptions_throw_arraystoreexception): Likewise.

17 years ago* src/vm/class.c (class_java_lang_VMSystem): Added.
twisti [Fri, 18 Aug 2006 12:24:10 +0000 (12:24 +0000)]
* src/vm/class.c (class_java_lang_VMSystem): Added.
* src/vm/class.h: Likewise.
* src/vm/loader.c (loader_init): Likewise.
* src/vm/linker.c (linker_init): Likewise.

17 years agosrc/vm/jit/powerpc64/linux/md-os.c: Ported signal handlers to ppc64 ucontext.
tbfg [Fri, 18 Aug 2006 10:22:17 +0000 (10:22 +0000)]
src/vm/jit/powerpc64/linux/md-os.c: Ported signal handlers to ppc64 ucontext.

17 years agosrc/vm/jit/powerpc64/md.c (md_get_method_patch_address): Fixed opcodes in
tbfg [Thu, 17 Aug 2006 17:51:40 +0000 (17:51 +0000)]
src/vm/jit/powerpc64/md.c (md_get_method_patch_address): Fixed opcodes in
casetests.

src/vm/jit/powerpc64/arch.h: Temporarily disabled all hardwarefeaturs to
make porting easier.

src/vm/jit/powerpc64/codegen.c: Started to fix 32/64 bit issues.

src/vm/jit/powerpc64/codegen.h: Removing special long handling.

src/vm/jit/powerpc64/patcher.c: Changed comment only.

17 years ago* src/vm/jit/i386/asmpart.S (asm_patcher_wrapper): Restore REG_ITMP3
twisti [Thu, 17 Aug 2006 09:59:26 +0000 (09:59 +0000)]
* src/vm/jit/i386/asmpart.S (asm_patcher_wrapper): Restore REG_ITMP3
from stub stack. I missed this when I did the last changes.

17 years ago* src/vm/jit/optimizing/.cvsignore: New file.
christian [Wed, 16 Aug 2006 15:35:27 +0000 (15:35 +0000)]
* src/vm/jit/optimizing/.cvsignore: New file.

17 years ago* src/vm/jit/stack.c (stack_analyse): Use of real PEI data
christian [Wed, 16 Aug 2006 12:21:35 +0000 (12:21 +0000)]
* src/vm/jit/stack.c (stack_analyse): Use of real PEI data
(op_data[opcode][PEI]) to prevent copy propagation to LOCALVAR with
ICMD_XSTORE instead of just regarding INVOKES as PEI's.

17 years ago* src/toolbox/worklist.h: Comments added.
christian [Wed, 16 Aug 2006 12:11:47 +0000 (12:11 +0000)]
* src/toolbox/worklist.h: Comments added.

17 years ago* src/toolbox/bitvector.c: Comments added.
christian [Wed, 16 Aug 2006 12:10:53 +0000 (12:10 +0000)]
* src/toolbox/bitvector.c: Comments added.

* src/toolbox/bitvector.h: Comments added.

* src/toolbox/worklist.c: Comments added.

17 years ago* src/toolbox/worklist.c: Corrected Header information.
christian [Wed, 16 Aug 2006 11:35:12 +0000 (11:35 +0000)]
* src/toolbox/worklist.c: Corrected Header information.

* src/toolbox/worklist.h: Likewise.

* src/toolbox/bitvector.c: Likewise.

* src/toolbox/bitvector.h: Likewise.

17 years ago* src/vm/jit/allocator/liveness.c: Corrected Header information.
christian [Wed, 16 Aug 2006 11:31:02 +0000 (11:31 +0000)]
* src/vm/jit/allocator/liveness.c: Corrected Header information.

* src/vm/jit/allocator/liveness.h: Likewise.

* src/vm/jit/allocator/lsra.c: Likewise.

* src/vm/jit/allocator/lsra.h: Likewise.

17 years ago* src/vm/jit/optimizing/dominators.c: Corrected Header information.
christian [Wed, 16 Aug 2006 11:26:59 +0000 (11:26 +0000)]
* src/vm/jit/optimizing/dominators.c: Corrected Header information.

* src/vm/jit/optimizing/dominators.h: Likewise.

* src/vm/jit/optimizing/graph.c: Likewise.

* src/vm/jit/optimizing/graph.h: Likewise.

* src/vm/jit/optimizing/lifetimes.c: Likewise.

* src/vm/jit/optimizing/lifetimes.h: Likewise.

* src/vm/jit/optimizing/lsra.c: Likewise.

* src/vm/jit/optimizing/lsra.h: Likewise.

* src/vm/jit/optimizing/ssa.c: Likewise.

* src/vm/jit/optimizing/ssa.h: Likewise.

17 years ago* src/vm/jit/optimizing/ssa.c (ssa_print_phi): Printing now phi
christian [Wed, 16 Aug 2006 11:18:05 +0000 (11:18 +0000)]
* src/vm/jit/optimizing/ssa.c (ssa_print_phi): Printing now phi
functions correctly for debug output.

* src/vm/jit/optimizing/ssa.c (dead_code_elimination): No removal of
potential exception throwing instructions (PEI) anymore.

* src/vm/jit/jit.h: Renamed op_needs_saved[] to op_data[][NEEDS_SAVED]
and introduced the new op_data[][PEI].

* src/vm/jit/jit.c (jit_init): Added init of op_data[NEEDS_SAVED|PEI]

* src/vm/jit/optimizing/lifetimes.c (LifeOutAtStatement): Renamed
op_needs_saved[] to the new op_data[][NEEDS_SAVED]

17 years ago* src/vm/jit/optimizing/lifetimes.c (LifenessAnalysis): Ignore
christian [Tue, 15 Aug 2006 14:54:25 +0000 (14:54 +0000)]
* src/vm/jit/optimizing/lifetimes.c (LifenessAnalysis): Ignore
variables used in phi functions, if they define itself (x =
phi(...,x,...)).

* src/vm/jit/i386/codegen.c (codegen): Bugfix in code created for
ICMD_IINC for SSA.

* src/vm/jit/show.c (new_show_method): Regard ENABLE_SSA like
ENABLE_LSRA to suppress output of interfaces.

* src/vm/jit/show.c (show_method): likewise.

* src/vm/jit/show.c (show_icmd): Regard special operand format for
ICMD_IINC with SSA.

17 years ago* src/vm/jit/optimizing/: New directory for optimizing compiler (SSA
christian [Mon, 14 Aug 2006 18:14:53 +0000 (18:14 +0000)]
* src/vm/jit/optimizing/: New directory for optimizing compiler (SSA
by now - does not work by now, code merging with svn head introduced
some hazardous faults).

* src/vm/jit/optimizing/dominators.c: Computation of dominators and
domination frontier for SSA.

* src/vm/jit/optimizing/dominators.h: Include file for dominators.c.

* src/vm/jit/optimizing/graph.c: CFG functions needed for SSA.

* src/vm/jit/optimizing/graph.h: Include file for graph.c

* src/vm/jit/optimizing/lifetimes.c: Scanning lifetimes for SSA.

* src/vm/jit/optimizing/lifetimes.h: Include file for lifetimes.c

* src/vm/jit/optimizing/lsra.c: LSRA based on SSA.

* src/vm/jit/optimizing/lsra.h: Include file for lsra.c.

* src/vm/jit/optimizing/Makefile.am: New Makefile.am for this
directory.

* src/vm/jit/optimizing/ssa.c: Computation of SSA form.

* src/vm/jit/optimizing/ssa.h: Include File for ssa.c.

17 years ago* src/vm/jit/optimizing/: New directory for optimizing compiler (SSA
christian [Mon, 14 Aug 2006 17:50:12 +0000 (17:50 +0000)]
* src/vm/jit/optimizing/: New directory for optimizing compiler (SSA
by now - does not work by now, code merging with svn head introduced
some hazardous faults).

* src/vm/jit/optimizing/dominators.c: Computation of dominators and
domination frontier for SSA.

* src/vm/jit/optimizing/dominators.h: Include file for dominators.c.

* src/vm/jit/optimizing/graph.c: CFG functions needed for SSA.

* src/vm/jit/optimizing/graph.h: Include file for graph.c

* src/vm/jit/optimizing/lifetimes.c: Scanning lifetimes for SSA.

* src/vm/jit/optimizing/lifetimes.h: Include file for lifetimes.c

* src/vm/jit/optimizing/lsra.c: LSRA based on SSA.

* src/vm/jit/optimizing/lsra.h: Include file for lsra.c.

* src/vm/jit/optimizing/Makefile.am: New Makefile.am for this
directory.

* src/vm/jit/optimizing/ssa.c: Computation of SSA form.

* src/vm/jit/optimizing/ssa.h: Include File for ssa.c.

* src/vm/jit/allocator/lsra.c: Moved from src/vm/jit. Quite complete
code change (including: no more allocation of unused reserved
registers, possibility of exact lifetime analysis, removal of old
lifetime test functions).

* src/vm/jit/allocator/lsra.h: Moved from src/vm/jit.

* src/vm/jit/allocator/liveness.c: New File. Exact lifetime analysis
for LSRA.

* src/vm/jit/allocator/liveness.h: New File. Include File for
liveness.c. The #define LV enables by now the exact liveness analysis.

* src/vm/jit/allocator/Makefile.am: Adopted for new/moved files in
src/vm/jit/allocator.

* sc/vm/jit/Makefile.am: Adopted for above new/moved files.

* configure.ac: Introduced ENABLE_SSA: new option --enable-ssa.
Changes for ENABLE_LSRA (--enable-lsra). New Makefile in
src/vm/jit/optimizing added.

* src/vm/jit/allocator/simplereg.c (reg_make_statistics): Support for
ENABLE_SSA for statistics.

* src/vm/options.h: opt_lsra is used with ENABLE_SSA like with
ENABLE_LSRA.

* src/vm/options.c: opt_lsra is used with ENABLE_SSA like with
ENABLE_LSRA.

* src/vm/global.h: New struct imm for union imm_union to get another
operand for IINC in combination with SSA added.

* src/vm/vm.c: opt_lsra and the option -lsra is used with ENABLE_SSA
like with ENABLE_LSRA.

* src/vm/jit/stack.c (stack_analyse): No stack element lifetimes
counting anymore for lsra/ssa (m->maxlifetimes).

* src/vm/jit/stack.h: No stack lifetime counting anymore for lsra/ssa
(m->maxlifetimes).

* src/vm/jit/i386/codegen.c: Support for ENABLE_SSA added.

* src/vm/jit/i386/codegen.c (codegen_insert_phi_moves): New function
to insert phi moves for SSA at the end of Basic Blocks.

* src/vm/jit/i386/codegen.c (cg_move): New function to create the
instructions for the actual move for codegen_insert_phi_moves).

* src/vm/jit/i386/codegen.c (codegen): Logic and calls to use
codegen_insert_phi_moves for SSA added. With SSA for parameters in
memory this memory positions cannot be reused to avoid copying. Checks
added to prevent moves to or from stackslots removed by the dead code
elimination. Special handling for the new ICMD_IINC operand format
used by SSA added.

* src/vm/jit/i386/codegen.h (M_COPY): Checks added to prevent moves to
or from stackslots removed by the dead code elimination. Original
M_COPY renamed to _M_COPY.

* src/vm/jit/jit.c (jit_init): Populate op_needs_saved. Regard
ENABLE_SSA.

* src/vm/jit/jit.h: Support for ENABLE_SSA added. Added an array which
shows which ICMD's need a SAVEDVAR for SSA and the new LSRA with exact
liveness analysis.  src/toolbox/Makefile.am: Changed to include the
following new files:

* src/toolbox/bitvector.c: Bitvector implementation for SSA.

* src/toolbox/bitvector.h: Include file for bitvector.c.

* src/toolbox/worklist.c: Worklist implementation for SSA.

* src/toolbox/worklist.h: Include file for worklist.c.

17 years ago* src/vm/jit/codegen-common.c (codegen_findmethod): Renamed to
twisti [Mon, 14 Aug 2006 10:59:39 +0000 (10:59 +0000)]
* src/vm/jit/codegen-common.c (codegen_findmethod): Renamed to
codegen_get_pv_from_pc.

* src/vm/jit/codegen-common.h (codegen_findmethod): Likewise.
(md_codegen_findmethod): Renamed to md_codegen_get_pv_from_pc.

* src/vm/jit/stacktrace.c (stacktrace_create_stackframeinfo):
Likewise.
(stacktrace_create_inline_stackframeinfo): Likewise.
(stacktrace_create_extern_stackframe): Likewise.
(stacktrace_create): Likewise.

* src/vm/jit/alpha/md.c (md_codegen_findmethod): Renamed to
md_codegen_get_pv_from_pc.
* src/vm/jit/i386/md.c: Likewise.
* src/vm/jit/mips/md.c: Likewise.
* src/vm/jit/powerpc/md.c: Likewise.
* src/vm/jit/powerpc64/md.c: Likewise.
* src/vm/jit/sparc64/md.c: Likewise.
* src/vm/jit/x86_64/md.c: Likewise.

* src/vm/jit/i386/asmpart.S: Likewise.
* src/vm/jit/mips/asmpart.S: Likewise.
* src/vm/jit/powerpc/asmpart.S: Likewise.
* src/vm/jit/x86_64/asmpart.S: Likewise.
* src/vm/jit/intrp/asmpart.c: Likewise.

* src/vm/jit/i386/patcher.c (patcher_wrapper): Fixed comment.
* src/vm/jit/x86_64/patcher.c: Likewise.

17 years ago* src/vm/jit/powerpc64/linux/md-abi.h: LA_WORD_SIZE renamed to
tbfg [Fri, 11 Aug 2006 13:11:44 +0000 (13:11 +0000)]
* src/vm/jit/powerpc64/linux/md-abi.h: LA_WORD_SIZE renamed to
 LA_SIZE_IN_POINTERS, value fixed
* src/vm/jit/powerpc64/linux/md-abi.c: LA_SIZE_IN_POINTERS rename
* src/vm/jit/powerpc64/linux/md.c (md_codegen_findmethod): PPC64 uses r14
 instead of r13 (as PPC) for PV so opcodes changed.
* src/vm/jit/powerpc64/asmpart.S: Using LA_SIZE instead of LA_WORD_SIZE,
 LA_SIZE_IN_POINTERS for SAVE_*_REGISTERS macros only.

17 years ago* src/vm/jit/powerpc/linux/md-abi.h (LA_WORD_SIZE): Renamed to
twisti [Fri, 11 Aug 2006 10:13:28 +0000 (10:13 +0000)]
* src/vm/jit/powerpc/linux/md-abi.h (LA_WORD_SIZE): Renamed to
LA_SIZE_IN_POINTERS.

* src/vm/jit/powerpc/darwin/md-abi.h (LA_WORD_SIZE): Likewise.

* src/vm/jit/powerpc/linux/md-abi.c (md_param_alloc): Use
LA_SIZE_IN_POINTERS instead of LA_WORD_SIZE.

* src/vm/jit/powerpc/darwin/md-abi.c (md_param_alloc): Likewise.

* src/vm/jit/powerpc/asmpart.S: Likewise.

* src/vm/jit/stack.c (new_stack_analyse): Likewise.
(stack_analyse): Likewise.

* src/vm/jit/reg.c (reg_setup): Likewise.

17 years ago* src/vm/jit/powerpc64/linux/md-abi.h: fixed linkage area defines for 64bit abi.
tbfg [Thu, 10 Aug 2006 19:45:28 +0000 (19:45 +0000)]
* src/vm/jit/powerpc64/linux/md-abi.h: fixed linkage area defines for 64bit abi.
* src/vm/jit/powerpc64/linux/md-asm.h: fixed register name defines and
 SAVE/RESTORE macros.
* src/vm/jit/powerpc64/asmpart.S (asm_vm_call_method): fixed no argument method
 call path, coming back to C now.

17 years ago* src/boehm-gc/darwin_stop_world.c: Updated to version 6.8.
twisti [Thu, 10 Aug 2006 09:10:58 +0000 (09:10 +0000)]
* src/boehm-gc/darwin_stop_world.c: Updated to version 6.8.
* src/boehm-gc/doc/README.changes: Likewise.
* src/boehm-gc/doc/README: Likewise.
* src/boehm-gc/include/gc.h: Likewise.
* src/boehm-gc/include/gc_config_macros.h: Likewise.
* src/boehm-gc/include/private/gcconfig.h: Likewise.
* src/boehm-gc/configure.in: Likewise.
* src/boehm-gc/version.h: Likewise.
* src/boehm-gc/malloc.c: Likewise.
* src/boehm-gc/pthread_support.c: Likewise.
* src/boehm-gc/os_dep.c: Likewise.
* src/boehm-gc/dyn_load.c: Likewise.

17 years ago* src/vm/jit/i386/codegen.c (codegen): Fixed ICMD_LMUL bug.
twisti [Wed, 9 Aug 2006 15:11:29 +0000 (15:11 +0000)]
* src/vm/jit/i386/codegen.c (codegen): Fixed ICMD_LMUL bug.

17 years ago* src/vm/jit/i386/emit.c (emit_load_s1): Coding style changes.
twisti [Wed, 9 Aug 2006 15:10:51 +0000 (15:10 +0000)]
* src/vm/jit/i386/emit.c (emit_load_s1): Coding style changes.
(emit_load_s2): Likewise.
(emit_load_s3): Likewise.
(emit_load_s1_low): Likewise.
(emit_load_s2_low): Likewise.
(emit_load_s1_high): Likewise.
(emit_store): Likewise.

17 years ago* src/vm/jit/jit.c (stackreq): Initialize this table statically.
edwin [Tue, 8 Aug 2006 19:57:19 +0000 (19:57 +0000)]
* src/vm/jit/jit.c (stackreq): Initialize this table statically.
(jit_init): Removed dynamic initialization of stackreq table.

17 years ago* src/native/vm/java_lang_reflect_Method.c
edwin [Tue, 8 Aug 2006 19:23:44 +0000 (19:23 +0000)]
* src/native/vm/java_lang_reflect_Method.c
(Java_java_lang_reflect_Method_invokeNative): Removed unused
variables.

* src/native/vm/java_lang_reflect_Constructor.c (vm/access.h):
Include to fix warning.

17 years ago* src/native/vm/java_lang_reflect_Field.c (cacao_get_field_address):
edwin [Tue, 8 Aug 2006 19:18:49 +0000 (19:18 +0000)]
* src/native/vm/java_lang_reflect_Field.c (cacao_get_field_address):
Use access_check_caller.

17 years ago* src/vm/access.h, src/vm/access.c (access_check_caller): Added.
edwin [Tue, 8 Aug 2006 16:21:22 +0000 (16:21 +0000)]
* src/vm/access.h, src/vm/access.c (access_check_caller): Added.

* src/native/vm/java_lang_reflect_Method.c
(Java_java_lang_reflect_Method_invokeNative): Use access_check_caller
for the access check.

* src/native/vm/java_lang_reflect_Constructor.c
(Java_java_lang_reflect_Constructor_constructNative): Likewise. This
should fix the mauve test case
java.lang.reflect.AccessibleObject.security.

* src/cacaoh/headers.c (stacktrace_getClassContext): Added dummy
implementation.

17 years ago* src/vm/jit/parse.h (new_block_insert): Renamed to
twisti [Tue, 8 Aug 2006 14:24:08 +0000 (14:24 +0000)]
* src/vm/jit/parse.h (new_block_insert): Renamed to
NEW_MARK_BASICBLOCK.
(block_insert): Renamed to MARK_BASICBLOCK.

* src/vm/jit/parse.c (new_fillextable): Likewise.
(fillextable): Likewise.
(new_parse): Likewise.
(parse): Likewise.

17 years ago* src/vm/jit/stack.c (new_stack_analyse): Replaced debug_nr with nr.
twisti [Tue, 8 Aug 2006 13:25:33 +0000 (13:25 +0000)]
* src/vm/jit/stack.c (new_stack_analyse): Replaced debug_nr with nr.

* src/vm/jit/verify/typecheck.c (typestate_reach): Likewise.
(verify_basic_block): Likewise.

* src/vm/jit/i386/codegen.c (codegen): Likewise.
* src/vm/jit/powerpc/codegen.c (codegen): Likewise.
* src/vm/jit/x86_64/codegen.c (codegen): Likewise.

17 years ago* src/vm/jit/cfg.c (cfg_insert_predecessors): New method.
twisti [Tue, 8 Aug 2006 13:03:13 +0000 (13:03 +0000)]
* src/vm/jit/cfg.c (cfg_insert_predecessors): New method.
(cfg_build): Use cfg_insert_predecessors for TABLESWITCH and
LOOKUPSWITCH.

17 years ago* src/vm/resolve.h, src/vm/resolve.c (new_resolve_method_lazy):
edwin [Tue, 8 Aug 2006 13:01:28 +0000 (13:01 +0000)]
* src/vm/resolve.h, src/vm/resolve.c (new_resolve_method_lazy):
Removed curstack parameter.
(new_resolve_field_lazy): Likewise.
(new_constrain_unresolved_field): New function.
(new_constrain_unresolved_method): Likewise.

* src/vm/jit/parse.c (new_parse): Use new_resolve_field_lazy and
new_resolve_method_lazy.

17 years ago* src/vm/jit/stack.c (new_stack_analyse): For INVOKE* instructions,
edwin [Tue, 8 Aug 2006 12:56:15 +0000 (12:56 +0000)]
* src/vm/jit/stack.c (new_stack_analyse): For INVOKE* instructions,
store the live-through stack slots as additional arguments after
the live-in slots. These live-through slots are needed by the
verifier and by on-stack replacement in order to create a replacement
point at the call site.
NOTE: Currently the live-through slots are also stored for builtins.
This should change in the final version.

17 years ago* src/vm/jit/jit.h (NEW_INSTRUCTION_IS_RESOLVED): New macro.
edwin [Tue, 8 Aug 2006 12:46:51 +0000 (12:46 +0000)]
* src/vm/jit/jit.h (NEW_INSTRUCTION_IS_RESOLVED): New macro.
(NEW_INSTRUCTION_IS_UNRESOLVED): Likewise.
(NEW_INSTRUCTION_MUST_CHECK): Likewise.