cacao.git
17 years ago* src/vm/jit/alpha/codegen.c (codegen): Port MULTIANEWARRAY.
edwin [Tue, 5 Sep 2006 22:27:36 +0000 (22:27 +0000)]
* src/vm/jit/alpha/codegen.c (codegen): Port MULTIANEWARRAY.

--HG--
branch : new_instruction_format

17 years ago* sarc/vm/jit/parse.c (parse): Check return value of
edwin [Tue, 5 Sep 2006 22:23:06 +0000 (22:23 +0000)]
* sarc/vm/jit/parse.c (parse): Check return value of
lock_monitor_enter.

--HG--
branch : new_instruction_format

17 years ago* src/threads/native/lock.h (lock_monitor_enter): Return bool.
edwin [Tue, 5 Sep 2006 22:22:19 +0000 (22:22 +0000)]
* src/threads/native/lock.h (lock_monitor_enter): Return bool.
* src/threads/native/lock.c (lock_monitor_enter): Check for
NullPointerException.

--HG--
branch : new_instruction_format

17 years ago* src/vm/jit/cfg.c (cfg_build): It's better to not reuse the loop
twisti [Tue, 5 Sep 2006 22:05:52 +0000 (22:05 +0000)]
* src/vm/jit/cfg.c (cfg_build): It's better to not reuse the loop
variable.

--HG--
branch : new_instruction_format

17 years ago* src/vm/jit/show.c (new_show_icmd): Show BLOCK_OF tableswitch
edwin [Tue, 5 Sep 2006 21:53:36 +0000 (21:53 +0000)]
* src/vm/jit/show.c (new_show_icmd): Show BLOCK_OF tableswitch
targets.

--HG--
branch : new_instruction_format

17 years ago* src/vm/jit/show.c (new_show_icmd): Show TABLESWITCH targets.
edwin [Tue, 5 Sep 2006 21:50:36 +0000 (21:50 +0000)]
* src/vm/jit/show.c (new_show_icmd): Show TABLESWITCH targets.

--HG--
branch : new_instruction_format

17 years ago* src/vm/jit/alpha/codegen.c (codegen): Port ICMD_CHECKCAST.
edwin [Tue, 5 Sep 2006 21:20:34 +0000 (21:20 +0000)]
* src/vm/jit/alpha/codegen.c (codegen): Port ICMD_CHECKCAST.

--HG--
branch : new_instruction_format

17 years ago* src/vm/method.h (methodinfo): Removed members basicblockcount,
twisti [Tue, 5 Sep 2006 21:20:33 +0000 (21:20 +0000)]
* src/vm/method.h (methodinfo): Removed members basicblockcount,
basicblocks, basicblockindex, instructioncount, instructions,
stackcount, and stack.

* src/vm/jit/cfg.c: Use jitdata variables instead of methodinfo ones.
* src/vm/jit/reorder.c: Likewise.
* src/vm/jit/ifconv/ifconv.c: Likewise.
* src/vm/jit/allocator/simplereg.c: Likewise.
* src/vm/jit/replace.c: Likewise.
* src/vm/jit/jit.c: Likewise.

--HG--
branch : new_instruction_format

17 years ago* src/vm/jit/powerpc/Makefile.am (libarch_la_SOURCES): Added
twisti [Tue, 5 Sep 2006 21:17:54 +0000 (21:17 +0000)]
* src/vm/jit/powerpc/Makefile.am (libarch_la_SOURCES): Added
accidentally removed codegen.c.

--HG--
branch : new_instruction_format

17 years ago* src/vm/jit/x86_64/codegen.c (codegen): Use d for return type checks.
twisti [Tue, 5 Sep 2006 21:16:30 +0000 (21:16 +0000)]
* src/vm/jit/x86_64/codegen.c (codegen): Use d for return type checks.

--HG--
branch : new_instruction_format

17 years ago* src/cacaoh/headers.c: Use a dummy flag for natively overloaded
twisti [Tue, 5 Sep 2006 21:15:02 +0000 (21:15 +0000)]
* src/cacaoh/headers.c: Use a dummy flag for natively overloaded
methods.

--HG--
branch : new_instruction_format

17 years ago* src/vm/jit/alpha/codegen.c (codegen): Deactivate replacement points.
edwin [Tue, 5 Sep 2006 21:14:00 +0000 (21:14 +0000)]
* src/vm/jit/alpha/codegen.c (codegen): Deactivate replacement points.
* src/vm/jit/x86_64/codegen.c (codegen): Likewise.

--HG--
branch : new_instruction_format

17 years ago* src/vm/jit/alpha/codegen.c (codegen): Set fieldtype in all cases.
edwin [Tue, 5 Sep 2006 21:06:54 +0000 (21:06 +0000)]
* src/vm/jit/alpha/codegen.c (codegen): Set fieldtype in all cases.

--HG--
branch : new_instruction_format

17 years ago* src/vm/jit/show.c (new_show_basicblock): Prettier if.
edwin [Tue, 5 Sep 2006 20:58:06 +0000 (20:58 +0000)]
* src/vm/jit/show.c (new_show_basicblock): Prettier if.

--HG--
branch : new_instruction_format

17 years ago* src/vm/jit/alpha/codegen.c (codegen): Use jd->new_basicblocks.
edwin [Tue, 5 Sep 2006 20:57:13 +0000 (20:57 +0000)]
* src/vm/jit/alpha/codegen.c (codegen): Use jd->new_basicblocks.

--HG--
branch : new_instruction_format

17 years ago* src/vm/jit/alpha/codegen.c: Use invars/outvars instead of
edwin [Tue, 5 Sep 2006 20:50:21 +0000 (20:50 +0000)]
* src/vm/jit/alpha/codegen.c: Use invars/outvars instead of
instack/outstack.

--HG--
branch : new_instruction_format

17 years ago* src/vm/jit/alpha/codegen.c (codegen): Port handling of INVOKE*
edwin [Tue, 5 Sep 2006 20:17:46 +0000 (20:17 +0000)]
* src/vm/jit/alpha/codegen.c (codegen): Port handling of INVOKE*
arguments.

--HG--
branch : new_instruction_format

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

--HG--
branch : new_instruction_format

17 years ago* src/vm/jit/jit.h (instruction): Removed.
twisti [Tue, 5 Sep 2006 19:38:28 +0000 (19:38 +0000)]
* src/vm/jit/jit.h (instruction): Removed.
(new_instruction): Renamed to instruction.

* src/vm/builtin.c: Renamed new_instruction to instruction.
* src/vm/builtin.h: Likewise.
* src/vm/resolve.c: Likewise.
* src/vm/resolve.h: Likewise.
* src/vm/jit/powerpc/emit.c: Likewise.
* src/vm/jit/powerpc/Makefile.am: Likewise.
* src/vm/jit/codegen-common.h: Likewise.
* src/vm/jit/cfg.c: Likewise.
* src/vm/jit/reorder.c: Likewise.
* src/vm/jit/emit.h: Likewise.
* src/vm/jit/stack.c: Likewise.
* src/vm/jit/stack.h: Likewise.
* src/vm/jit/show.c: Likewise.
* src/vm/jit/dseg.c: Likewise.
* src/vm/jit/verify/typecheck.c: Likewise.
* src/vm/jit/verify/typeinfo.c: Likewise.
* src/vm/jit/show.h: Likewise.
* src/vm/jit/allocator/simplereg.c: Likewise.
* src/vm/jit/parse.c: Likewise.
* src/vm/jit/codegen-common.c: Likewise.

--HG--
branch : new_instruction_format

17 years ago* src/vm/jit/powerpc/codegen.c (codegen): Converted with
edwin [Tue, 5 Sep 2006 19:06:22 +0000 (19:06 +0000)]
* src/vm/jit/powerpc/codegen.c (codegen): Converted with
portcodegen.pl.
* src/vm/jit/sparc64/codegen.c (codegen): Likewise.
* src/vm/jit/alpha/codegen.c (codegen): Likewise.
* src/vm/jit/mips/codegen.c (codegen): Likewise.
* src/vm/jit/i386/codegen.c (codegen): Likewise.
* src/vm/jit/powerpc64/codegen.c (codegen): Likewise.

--HG--
branch : new_instruction_format

17 years agoMerge changes from trunk (powerpc64).
edwin [Tue, 5 Sep 2006 18:43:12 +0000 (18:43 +0000)]
Merge changes from trunk (powerpc64).

--HG--
branch : new_instruction_format

17 years ago* src/vm/jit/powerpc/codegen.c (codegen): Use emit_load instead of
edwin [Tue, 5 Sep 2006 17:42:22 +0000 (17:42 +0000)]
* src/vm/jit/powerpc/codegen.c (codegen): Use emit_load instead of
emit_load_s1/s2 for variable arguments and interface copying.
* src/vm/jit/alpha/codegen.c (codegen): Likewise.
* src/vm/jit/mips/codegen.c (codegen): Likewise.
* src/vm/jit/i386/codegen.c (codegen): Likewise.
* src/vm/jit/powerpc64/codegen.c (codegen): Likewise.

--HG--
branch : new_instruction_format

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.