cacao.git
17 years ago* NEWS: Added ClassCastException and system assertions.
twisti [Mon, 10 Jul 2006 14:11:34 +0000 (14:11 +0000)]
* NEWS: Added ClassCastException and system assertions.

17 years ago* src/vm/jit/stack.c (new_stack_analyse): Changed missing
twisti [Mon, 10 Jul 2006 14:11:07 +0000 (14:11 +0000)]
* src/vm/jit/stack.c (new_stack_analyse): Changed missing
jd->isleafmethod.
(stack_analyse): Likewise.

17 years ago* src/vm/jit/code.h (codeinfo): Removed basicblocks and isleafmethod.
twisti [Mon, 10 Jul 2006 14:02:25 +0000 (14:02 +0000)]
* src/vm/jit/code.h (codeinfo): Removed basicblocks and isleafmethod.
* src/vm/jit/jit.h (jitdata): Added isleafmethod.

* src/vm/jit/alpha/codegen.c (codegen): Use jd->isleafmethod. Pass
register number to codegen_add_classcastexception_ref.

* src/vm/jit/allocator/simplereg.c (interface_regalloc): Use
jd->isleafmethod.
(local_regalloc): Likewise.

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

* src/vm/jit/parse.h (NEW_OP_BUILTIN_CHECK_EXCEPTION): Likewise.
(NEW_OP_BUILTIN_NO_EXCEPTION): Likewise.
(NEW_OP_BUILTIN_ARITHMETIC): Likewise.
(BUILTIN): Likewise.

17 years ago* src/vm/jit/powerpc64/linux/.cvsignore: New file.
twisti [Mon, 10 Jul 2006 13:53:07 +0000 (13:53 +0000)]
* src/vm/jit/powerpc64/linux/.cvsignore: New file.
* src/vm/jit/powerpc64/.cvsignore: Likewise.

17 years ago* src/vm/jit/alpha/patcher.c (assert.h): Added.
twisti [Mon, 10 Jul 2006 13:51:38 +0000 (13:51 +0000)]
* src/vm/jit/alpha/patcher.c (assert.h): Added.
(vm/exceptions.h): Added.
(vm/jit/methodheader.h): Likewise.
(patcher_wrapper): New function.
(patcher_get_putstatic): Removed monitor enter/exit, this is now done
by the wrapper.
(patcher_get_putfield): Likewise.
(patcher_aconst): Likewise.
(patcher_builtin_multianewarray): Likewise.
(patcher_builtin_arraycheckcast): Likewise.
(patcher_invokestatic_special): Likewise.
(patcher_invokevirtual): Likewise.
(patcher_invokeinterface): Likewise.
(patcher_checkcast_instanceof_flags): Likewise.
(patcher_checkcast_instanceof_interface): Likewise.
(patcher_checkcast_instanceof_class): Likewise.
(patcher_clinit): Likewise.
(patcher_athrow_areturn): Likewise.
(patcher_resolve_native): Likewise.

* src/vm/jit/alpha/asmpart.S (asm_wrapper_patcher): Use
patcher_wrapper.

* src/vm/jit/alpha/md-abi.c (md_return_alloc): Changed signature.

17 years ago* src/vm/statistics.c (count_class_infos): Renamed to size_classinfo.
twisti [Mon, 10 Jul 2006 13:36:47 +0000 (13:36 +0000)]
* src/vm/statistics.c (count_class_infos): Renamed to size_classinfo.
(size_fieldinfo): Added.
(size_methodinfo): Likewise.
(size_codeinfo): Likewise.
(print_stats): Print new variables.

* src/vm/statistics.h (count_class_infos): Renamed to size_classinfo.
(size_fieldinfo): Added.
(size_methodinfo): Likewise.
(size_codeinfo): Likewise.

* src/vm/class.c (class_create_classinfo): Renamed count_class_infos
to size_classinfo.

* src/vm/loader.c (load_class_from_classbuffer): Likewise and use new
variables.

* src/vm/jit/code.c [ENABLE_STATISTICS] (code_codeinfo_new): Add
codeinfo size.
[ENABLE_STATISTICS] (code_codeinfo_free): Subtract codeinfo size.

17 years ago* src/vm/jit/x86_64/codegen.c (codegen): Pass register number to
twisti [Mon, 10 Jul 2006 10:18:28 +0000 (10:18 +0000)]
* src/vm/jit/x86_64/codegen.c (codegen): Pass register number to
codegen_add_classcastexception_ref.

17 years ago* src/lib/vm/reference/java/lang/VMClassLoader.java
twisti [Mon, 10 Jul 2006 10:01:47 +0000 (10:01 +0000)]
* src/lib/vm/reference/java/lang/VMClassLoader.java
(defaultAssertionStatus): Made native.
* src/native/vm/VMClassLoader.c (defaultAssertionStatus): Added.

* src/native/jni.h (_Jv_JavaVM): Added
Java_java_lang_VMClassLoader_defaultAssertionStatus.

* src/vm/vm.c (OPT_ESA): Added.
(OPT_DSA): Likewise.

17 years ago* src/vm/jit/methodheader.h (ExEntrySize): Removed.
twisti [Sat, 8 Jul 2006 22:07:05 +0000 (22:07 +0000)]
* src/vm/jit/methodheader.h (ExEntrySize): Removed.
(ExStartPC): Likewise.
(ExEndPC): Likewise.
(ExHandlerPC): Likewise.
(ExCatchType): Likewise.

17 years ago* src/vm/jit/i386/codegen.c (codegen): Pass register number to
twisti [Sat, 8 Jul 2006 20:32:30 +0000 (20:32 +0000)]
* src/vm/jit/i386/codegen.c (codegen): Pass register number to
codegen_add_classcastexception_ref.

17 years ago* src/vm/utf8.c (utf_java_lang_ClassCastException): Added.
twisti [Sat, 8 Jul 2006 20:16:05 +0000 (20:16 +0000)]
* src/vm/utf8.c (utf_java_lang_ClassCastException): Added.
(utf8_init): Initialize utf_java_lang_ClassCastException.
* src/vm/utf8.h (utf_java_lang_ClassCastException): Added.

* src/vm/class.c (class_java_lang_ClassCastException): Added.
* src/vm/class.h (class_java_lang_ClassCastException): Likewise.

* src/vm/exceptions.c (exceptions_init): Initialize
class_java_lang_ClassCastException.

(new_classcastexception): Renamed to
exceptions_new_classcastexception, pass the failing class name to the
exception.

* src/vm/exceptions.h (exceptionptr): Use thread object directly.
(new_classcastexception): Renamed to
exceptions_new_classcastexception.

* src/vm/jit/stacktrace.c (stacktrace_inline_classcastexception):
Changed signature.
* src/vm/jit/stacktrace.h (stacktrace_inline_classcastexception):
Likewise.

* src/vm/jit/codegen-common.c (codegen_add_classcastexception_ref):
Likewise.
* src/vm/jit/codegen-common.h (codegen_add_classcastexception_ref):
Likewise.

* src/vm/jit/powerpc/codegen.c (codegen): Pass register number to
codegen_add_classcastexception_ref.

17 years ago* src/vm/jit/i386/codegen.c (createnativestub): Don't use
twisti [Sat, 8 Jul 2006 19:08:13 +0000 (19:08 +0000)]
* src/vm/jit/i386/codegen.c (createnativestub): Don't use
builtin_get_exceptionptrptr, but codegen_finish_native_call for
exception check.

17 years ago* configure.ac: Use ARCH_CFLAGS and OPT_CFLAGS instead of CFLAGS and
twisti [Sat, 8 Jul 2006 18:28:37 +0000 (18:28 +0000)]
* configure.ac: Use ARCH_CFLAGS and OPT_CFLAGS instead of CFLAGS and
pass the flags via AM_CFLAGS to Makefile's.

17 years ago* src/vm/jit/stacktrace.c (stacktrace_create): Added another code ==
twisti [Sat, 8 Jul 2006 14:20:59 +0000 (14:20 +0000)]
* src/vm/jit/stacktrace.c (stacktrace_create): Added another code ==
NULL check.

17 years ago* src/vm/jit/powerpc/darwin/md-abi.h (REG_ITMP12_PACKED): Added.
twisti [Thu, 6 Jul 2006 22:52:23 +0000 (22:52 +0000)]
* src/vm/jit/powerpc/darwin/md-abi.h (REG_ITMP12_PACKED): Added.
(REG_RESULT_PACKED): Added.

* src/vm/jit/powerpc/darwin/md-asm.h (patcher_wrapper): Added.

* src/vm/jit/powerpc/darwin/md-abi.c (md_return_alloc): Changed
signature.

* src/vm/jit/powerpc/asmpart.S (L_patcher_wrapper$stub): Added.

17 years ago* src/vm/jit/x86_64/codegen.c (codegen): Use code variables.
twisti [Thu, 6 Jul 2006 14:19:04 +0000 (14:19 +0000)]
* src/vm/jit/x86_64/codegen.c (codegen): Use code variables.
(createnativestub): Likewise and don't use
builtin_get_exceptionptrptr, but codegen_finish_native_call for
exception check.

* src/vm/jit/x86_64/codegen.h (PROFILE_CYCLE_START): Use code
variables.
(PROFILE_CYCLE_STOP): Likewise.

* src/vm/jit/x86_64/md-abi.c (md_return_alloc): Changed signature.

17 years agofixed isleafmethod is now part of code issues
tbfg [Thu, 6 Jul 2006 14:10:23 +0000 (14:10 +0000)]
fixed isleafmethod is now part of code issues

17 years agopowerpc64 compiles
tbfg [Thu, 6 Jul 2006 13:59:01 +0000 (13:59 +0000)]
powerpc64 compiles
arch.h and md-abi.h: modified PV register assignment

--HG--
rename : src/vm/jit/powerpc/Makefile.am => src/vm/jit/powerpc64/Makefile.am
rename : src/vm/jit/powerpc/asmpart.S => src/vm/jit/powerpc64/asmpart.S
rename : src/vm/jit/powerpc/codegen.c => src/vm/jit/powerpc64/codegen.c
rename : src/vm/jit/powerpc/codegen.h => src/vm/jit/powerpc64/codegen.h
rename : src/vm/jit/powerpc/disass.c => src/vm/jit/powerpc64/disass.c
rename : src/vm/jit/powerpc/emit.c => src/vm/jit/powerpc64/emit.c
rename : src/vm/jit/powerpc/linux/Makefile.am => src/vm/jit/powerpc64/linux/Makefile.am
rename : src/vm/jit/powerpc/linux/md-abi.c => src/vm/jit/powerpc64/linux/md-abi.c
rename : src/vm/jit/powerpc/linux/md-asm.h => src/vm/jit/powerpc64/linux/md-asm.h
rename : src/vm/jit/powerpc/linux/md-os.c => src/vm/jit/powerpc64/linux/md-os.c
rename : src/vm/jit/powerpc/machine-instr.h => src/vm/jit/powerpc64/machine-instr.h
rename : src/vm/jit/powerpc/md.c => src/vm/jit/powerpc64/md.c
rename : src/vm/jit/powerpc/patcher.c => src/vm/jit/powerpc64/patcher.c

17 years ago* src/vm/jit/i386/codegen.c (codegen): Use code->isleafmethod.
twisti [Thu, 6 Jul 2006 12:42:23 +0000 (12:42 +0000)]
* src/vm/jit/i386/codegen.c (codegen): Use code->isleafmethod.
* src/vm/jit/i386/md-abi.c (md_return_alloc): Changed signature.

17 years ago* src/vm/method.h (methodinfo): Removed isleafmethod, frequency,
twisti [Thu, 6 Jul 2006 11:36:01 +0000 (11:36 +0000)]
* src/vm/method.h (methodinfo): Removed isleafmethod, frequency,
bbfrequency and cycles.

* src/vm/jit/powerpc/linux/md-abi.c (md_return_alloc): Changed
signature, use code->isleafmethod.

* src/vm/jit/powerpc/linux/md-abi.h (REG_IFTMP): Changed from 0 to 16.
(REG_ITMP12_PACKED): Added.
(REG_RESULT_PACKED): Likewise.

* src/vm/jit/powerpc/codegen.c (vm/jit/methodheader.h): Added.
(codegen): Use code->isleafmethod, added instrumentation code.

* src/vm/jit/abi.h (md_return_alloc): Added.

* src/vm/jit/stack.c (new_stack_analyse): Use code->isleafmethod.
(stack_analyse): Likewise.

* src/vm/jit/stack.h (md_return_alloc): Removed.

* src/vm/jit/code.c (code_codeinfo_new): Don't memset as NEW already
does that, set isleafmethod to true.

* src/vm/jit/code.h (codeinfo): Added basicblockcount and basicblocks.

* src/vm/jit/allocator/simplereg.c (interface_regalloc): Use
code->isleafmethod.
(local_regalloc): Likewise.

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

* src/vm/jit/parse.h (NEW_OP_BUILTIN_CHECK_EXCEPTION): Likewise.
(NEW_OP_BUILTIN_NO_EXCEPTION): Likewise.
(NEW_OP_BUILTIN_ARITHMETIC): Likewise.
(BUILTIN): Likewise.

* src/vm/jit/replace.c (replace_create_replacement_points): Don't set
code->isleafmethod, it's already set.

* src/vm/jit/profile/profile.c (profile_printstats): Use code
variables.

* src/vm/jit/jit.c (jit_compile_intern): Don't set m->isleafmethod.

* src/cacaoh/headers.c: Use stackcount instead of isleafmethod.

17 years ago* src/vm/descriptor.h: Removed space.
twisti [Wed, 5 Jul 2006 11:48:49 +0000 (11:48 +0000)]
* src/vm/descriptor.h: Removed space.

17 years ago* src/vm/jit/powerpc/darwin/md-asm.h
twisti [Tue, 4 Jul 2006 19:06:56 +0000 (19:06 +0000)]
* src/vm/jit/powerpc/darwin/md-asm.h
(builtin_asm_get_exceptionptrptr): Removed.
(_no_threads_exceptionptr): Likewise.
(exceptions_get_and_clear_exception): Added.

* src/vm/jit/powerpc/patcher.c (vm/exceptions.h): Added.
(vm/jit/methodheader.h): Likewise.
(patcher_wrapper): New function.
(patcher_get_putstatic): Removed monitor enter/exit, this is now done
by the wrapper.
(patcher_get_putfield): Likewise.
(patcher_aconst): Likewise.
(patcher_builtin_multianewarray): Likewise.
(patcher_builtin_arraycheckcast): Likewise.
(patcher_invokestatic_special): Likewise.
(patcher_invokevirtual): Likewise.
(patcher_invokeinterface): Likewise.
(patcher_checkcast_instanceof_flags): Likewise.
(patcher_checkcast_instanceof_interface): Likewise.
(patcher_checkcast_class): Likewise.
(patcher_instanceof_class): Likewise.
(patcher_clinit): Likewise.
(patcher_athrow_areturn): Likewise.
(patcher_resolve_native): Likewise.

* src/vm/jit/powerpc/asmpart.S (asm_call_jit_compiler): Use
exceptions_get_and_clear_exception.
(asm_wrapper_patcher): Likewise, use patcher_wrapper.
(L_builtin_asm_get_exceptionptrptr$stub): Removed.
(L_exceptions_get_and_clear_exception$stub): Added.

* src/vm/jit/patcher.h (assert.h): Added.
(PATCHER_FLAG_PATCHED): Likewise.
(PATCHER_MONITORENTER): Added assert and return NULL.
(PATCHER_MARK_PATCHED_MONITOREXIT): Use PATCHER_FLAG_PATCHED.
(patcher_wrapper): Added.

17 years ago* src/vm/jit/powerpc/codegen.c (createnativestub): Don't use
twisti [Tue, 4 Jul 2006 18:24:24 +0000 (18:24 +0000)]
* src/vm/jit/powerpc/codegen.c (createnativestub): Don't use
builtin_get_exceptionptrptr, but codegen_finish_native_call for
exception check.

17 years ago* tests/regression/codepatching/test.java: Catch only thrown
twisti [Tue, 4 Jul 2006 16:56:45 +0000 (16:56 +0000)]
* tests/regression/codepatching/test.java: Catch only thrown
exceptions.

17 years ago* src/vm/jit/powerpc/darwin/md-os.c (md_signal_handler_sigusr2): New
twisti [Tue, 4 Jul 2006 16:05:35 +0000 (16:05 +0000)]
* src/vm/jit/powerpc/darwin/md-os.c (md_signal_handler_sigusr2): New
function.

* src/vm/jit/powerpc/darwin/md-asm.h (asm_handle_nullptr_exception):
Removed.
(asm_abstractmethoderror): Added.
(exceptions_asm_new_abstractmethoderror): Likewise.
* src/vm/jit/powerpc/asmpart.S
(L_exceptions_asm_new_abstractmethoderror$stub): Added.

17 years ago* src/vm/jit/powerpc/darwin/md-abi.c (md_param_alloc): Code
twisti [Tue, 4 Jul 2006 16:02:19 +0000 (16:02 +0000)]
* src/vm/jit/powerpc/darwin/md-abi.c (md_param_alloc): Code
beautifying.

17 years ago* src/vm/jit/alpha/asmpart.S (asm_call_jit_compiler): Use
twisti [Mon, 3 Jul 2006 14:06:05 +0000 (14:06 +0000)]
* src/vm/jit/alpha/asmpart.S (asm_call_jit_compiler): Use
exceptions_get_and_clear_exception.
(asm_wrapper_patcher): Likewise.

17 years ago* src/vm/jit/codegen-common.c (codegen_finish_native_call): Check for
twisti [Mon, 3 Jul 2006 13:49:14 +0000 (13:49 +0000)]
* src/vm/jit/codegen-common.c (codegen_finish_native_call): Check for
exception and return it.
* src/vm/jit/codegen-common.h (codegen_finish_native_call): Changed
signature.

* src/vm/jit/alpha/codegen.c (createnativestub): Don't use
builtin_get_exceptionptrptr, but codegen_finish_native_call for
exception check.

* src/vm/jit/alpha/codegen.h (M_ASUB_IMM): Added.

17 years ago* src/vm/jit/alpha/md-abi.c (nregdescint): Added comments.
twisti [Mon, 3 Jul 2006 13:46:42 +0000 (13:46 +0000)]
* src/vm/jit/alpha/md-abi.c (nregdescint): Added comments.

17 years ago* src/vm/jit/alpha/linux/md-os.c (md_signal_handler_sigusr2): New
twisti [Mon, 3 Jul 2006 13:45:15 +0000 (13:45 +0000)]
* src/vm/jit/alpha/linux/md-os.c (md_signal_handler_sigusr2): New
method.
(thread_restartcriticalsection): Code cleanup.

17 years ago* src/vm/jit/alpha/asmpart.S (asm_abstractmethoderror): New method.
twisti [Mon, 3 Jul 2006 12:06:51 +0000 (12:06 +0000)]
* src/vm/jit/alpha/asmpart.S (asm_abstractmethoderror): New method.

17 years ago* src/vm/exceptions.c (exceptions_get_and_clear_exception): New
twisti [Mon, 3 Jul 2006 10:18:56 +0000 (10:18 +0000)]
* src/vm/exceptions.c (exceptions_get_and_clear_exception): New
function.
* src/vm/exceptions.h (exceptions_get_and_clear_exception): Added.

17 years ago* src/lib/vm/reference/gnu/java: Added.
twisti [Sun, 2 Jul 2006 18:31:02 +0000 (18:31 +0000)]
* src/lib/vm/reference/gnu/java: Added.
* src/lib/vm/reference/gnu/java/lang: Likewise.
* src/lib/vm/reference/gnu/java/lang/management: Likewise.
* src/lib/vm/reference/gnu/java/lang/management/VMRuntimeMXBeanImpl.java:
New file.
* src/lib/Makefile.am (VM_JAVA_FILES): Added
src/lib/vm/reference/gnu/java/lang/management/VMRuntimeMXBeanImpl.java.
(VM_CLASS_FILES): Added
classes/gnu/java/lang/management/VMRuntimeMXBeanImpl.class.
(vm.zip, nozip): Removed ecj check.

* src/native/vm/gnu_java_lang_management_VMRuntimeMXBeanImpl.c: New
file.
* src/native/vm/Makefile.am (libnativevm_la_SOURCES): Added
gnu_java_lang_management_VMRuntimeMXBeanImpl.c.

* src/native/include/.cvsignore: Added
gnu_java_lang_management_VMRuntimeMXBeanImpl.h.
* src/native/include/Makefile.am
(ADDITIONAL_IMPLEMENTED_VM_CLASSES_HEADER_FILES): Added
gnu_java_lang_management_VMRuntimeMXBeanImpl.h.

* src/native/native.c
(native/include/gnu_java_lang_management_VMRuntimeMXBeanImpl.h):
Added.
(dummynativetable): Added
Java_gnu_java_lang_management_VMRuntimeMXBeanImpl_getInputArguments
and Java_gnu_java_lang_management_VMRuntimeMXBeanImpl_getStartTime.

17 years ago* m4/ac_prog_javac.m4 (AC_PROG_JAVAC): Add -1.5 option when using ecj.
twisti [Sun, 2 Jul 2006 18:24:06 +0000 (18:24 +0000)]
* m4/ac_prog_javac.m4 (AC_PROG_JAVAC): Add -1.5 option when using ecj.

17 years ago* m4/ac_prog_javac.m4 (AC_PROG_JAVAC): Added bootclasspath to compiler
twisti [Sun, 2 Jul 2006 11:00:52 +0000 (11:00 +0000)]
* m4/ac_prog_javac.m4 (AC_PROG_JAVAC): Added bootclasspath to compiler
checks.

17 years ago* src/vm/jit/mips/asmpart.S (asm_abstractmethoderror): New function.
twisti [Sun, 2 Jul 2006 10:42:03 +0000 (10:42 +0000)]
* src/vm/jit/mips/asmpart.S (asm_abstractmethoderror): New function.

17 years ago* NEWS: Added new release.
twisti [Wed, 28 Jun 2006 22:47:57 +0000 (22:47 +0000)]
* NEWS: Added new release.

17 years ago* src/lib/vm/reference/java/lang/VMThread.java: Updated to GNU
twisti [Wed, 28 Jun 2006 22:38:42 +0000 (22:38 +0000)]
* src/lib/vm/reference/java/lang/VMThread.java: Updated to GNU
Classpath version.

17 years ago* src/vm/jit/powerpc/asmpart.S (asm_abstractmethoderror): New
twisti [Wed, 28 Jun 2006 21:52:26 +0000 (21:52 +0000)]
* src/vm/jit/powerpc/asmpart.S (asm_abstractmethoderror): New
function.

17 years ago* src/vm/exceptions.c (exceptions_handle_exception): Typo.
twisti [Wed, 28 Jun 2006 21:51:56 +0000 (21:51 +0000)]
* src/vm/exceptions.c (exceptions_handle_exception): Typo.

17 years ago* src/vm/linker.c (link_class_intern): Fixed compiler warning, added
twisti [Wed, 28 Jun 2006 21:46:41 +0000 (21:46 +0000)]
* src/vm/linker.c (link_class_intern): Fixed compiler warning, added
comment.
(linker_addinterface): Fixed compiler warning.

17 years ago* src/vm/linker.c (link_class_intern): Converted the check against
edwin [Wed, 28 Jun 2006 21:44:16 +0000 (21:44 +0000)]
* src/vm/linker.c (link_class_intern): Converted the check against
creating a stubroutine twice into an assert. The check became
obsolete because abstract methods do no longer get compiler stubs.

17 years ago* src/vm/linker.c (link_class_intern): Do not generate compiler
edwin [Wed, 28 Jun 2006 21:01:21 +0000 (21:01 +0000)]
* src/vm/linker.c (link_class_intern): Do not generate compiler
stubs for abstract methods.

17 years ago* src/vm/jit/intrp/codegen.c (intrp_codegen): Changed MethodPointer
edwin [Wed, 28 Jun 2006 20:33:38 +0000 (20:33 +0000)]
* src/vm/jit/intrp/codegen.c (intrp_codegen): Changed MethodPointer
in method header to CodeinfoPointer.
(intrp_createcompilerstub): Likewise.
(intrp_createnativestub): Likewise.
(createcalljavafunction): Likewise.

* src/vm/jit/intrp/asmpart.c (intrp_asm_handle_exception):
Changed MethodPointer in method header to CodeinfoPointer.

17 years ago* src/vm/exceptions.c (exceptions_asm_new_abstractmethoderror): New
twisti [Wed, 28 Jun 2006 19:43:42 +0000 (19:43 +0000)]
* src/vm/exceptions.c (exceptions_asm_new_abstractmethoderror): New
function.
* src/vm/exceptions.h (exceptions_asm_new_abstractmethoderror): Added.

* src/vm/jit/x86_64/asmpart.S (asm_abstractmethoderror): Use
exceptions_asm_new_abstractmethoderror.
* src/vm/jit/i386/asmpart.S (asm_abstractmethoderror): Likewise.

17 years ago* src/vm/utf8.c (utf_java_lang_AbstractMethodError): Added.
twisti [Wed, 28 Jun 2006 19:11:20 +0000 (19:11 +0000)]
* src/vm/utf8.c (utf_java_lang_AbstractMethodError): Added.
(utf8_init): Initialize utf_java_lang_AbstractMethodError.
* src/vm/utf8.h (utf_java_lang_AbstractMethodError): Added.

* src/vm/class.c (class_java_lang_AbstractMethodError): Added.
(class_resolveclassmethod): Use exceptions_throw_abstractmethoderror.
* src/vm/class.h (class_java_lang_AbstractMethodError): Added.

* src/vm/exceptions.c (exceptions_init): Initialize
class_java_lang_AbstractMethodError.
(exceptions_new_abstractmethoderror): New function.
(exceptions_throw_abstractmethoderror): Likewise.
* src/vm/exceptions.h (exceptions_new_abstractmethoderror)
(exceptions_throw_abstractmethoderror): Added.

* src/vm/resolve.c (resolve_method_invokespecial_lookup): Use
exceptions_throw_abstractmethoderror.

* src/vm/jit/asmpart.h (asm_abstractmethoderror): Added.

* src/vm/jit/i386/asmpart.S (asm_abstractmethoderror): New function.
* src/vm/jit/x86_64/asmpart.S (asm_abstractmethoderror): Likewise.

* src/vm/linker.c (link_class_intern): Fill empty slots in vftbl with
the AbstractMethodError stub.
(linker_addinterface): Insert the AbstractMethodError stub if no
suitable method was found.

* src/cacaoh/headers.c (asm_abstractmethoderror): Added.
(exceptions_throw_abstractmethoderror): Likewise.

17 years ago* src/vm/jit/jit.h (JITDATA_FLAG_INSTRUMENT)
twisti [Wed, 28 Jun 2006 17:05:46 +0000 (17:05 +0000)]
* src/vm/jit/jit.h (JITDATA_FLAG_INSTRUMENT)
(JITDATA_HAS_FLAG_INSTRUMENT): Likewise.
(ICMD_OPCODE_MASK, ICMD_CONDITION_MASK): Removed.

* src/vm/jit/allocator/simplereg.c (allocate_scratch_registers):
Removed ICMD_OPCODE_MASK.

* src/vm/jit/show.c (show_icmd): Commented conditional stuff, maybe I
need it again someday.

* src/vm/jit/x86_64/emit.c (emit_store): Likewise.
(emit_cmovxx): Likewise.
* src/vm/jit/codegen-common.c (codegen_reg_of_var): Likewise.

17 years ago* src/vm/jit/x86_64/md.c [ENABLE_THREADS] (threads/native/threads.h):
twisti [Wed, 28 Jun 2006 15:39:22 +0000 (15:39 +0000)]
* src/vm/jit/x86_64/md.c [ENABLE_THREADS] (threads/native/threads.h):
Added.
(md_signal_handler_sigusr2): New function.
(thread_restartcriticalsection): Code cleanup.

17 years ago* src/scripts/.cvsignore: Removed cacao, jarsigner, javac and keytool.
twisti [Wed, 28 Jun 2006 08:24:35 +0000 (08:24 +0000)]
* src/scripts/.cvsignore: Removed cacao, jarsigner, javac and keytool.
* src/scripts: Updated svn:ignore.

* src/scripts/Makefile.am (bin_SCRIPTS): Removed jarsigner and
keytool, there are now wrappers in GNU Classpath.

* src/scripts/javac.in: Removed.
* src/scripts/jarsigner.in: Likewise.
* src/scripts/cacao.in: Likewise.
* src/scripts/keytool.in: Likewise.

* configure.ac (AC_CONFIG_FILES): Removed src/scripts/jarsigner and
src/scripts/keytool.

17 years ago* src/vm/string.c (javastring_toutf): Check for NULL and return
twisti [Fri, 23 Jun 2006 12:07:26 +0000 (12:07 +0000)]
* src/vm/string.c (javastring_toutf): Check for NULL and return
utf_null.
(literalstring_u2): Replaced list_addfirst with list_add_first.

* src/vm/builtin.h (BUILTIN_MONITOR_ENTER, BUILTIN_MONITOR_EXIT):
Defined.

* src/vm/jit/powerpc/codegen.c (codegen): Don't use
BUILTIN_staticmonitorenter, use JITDATA_HAS_FLAG_VERBOSECALL instead
of opt_verbosecall.
(createnativestub): Likewise.

* src/vm/jit/code.c: Smaller changes.

* src/vm/jit/code.h (codeinfo): Added optlevel.

* src/vm/jit/Makefile.am (libjit_la_SOURCES): Added recompile.[ch].
* src/vm/jit/recompile.c: New file.
* src/vm/jit/recompile.h: Likewise.

* src/vm/jit/show.c (new_show_method, show_method)
(new_show_basicblock, show_basicblock): Use
JITDATA_HAS_FLAG_SHOWDISASSEMBLE instead of opt_showdisassemble.

* src/vm/jit/profile/profile.c (vm/jit/jit.h): Added.
(list_method_entry): Moved to src/vm/jit/recompile.h.
(profile_thread): First real implementation.
(profile_start_thread): Better code.
(profile_printstats): Use codeinfo frequencies.

* src/vm/jit/jit.c (jit_compile): Set jd->flags properly. Moved
codeinfo memory freeing before dump_release because we need jd, which
is allocated on dump memory.
(jit_recompile): New function.
(jit_compile_intern): Use jd->flags.

* src/vm/jit/codegen-common.c (codegen_createnativestub): Set
jd->flags.

* src/vm/jit/jit.h (JITDATA_FLAG_PARSE, JITDATA_FLAG_VERIFY)
(JITDATA_FLAG_SHOWINTERMEDIATE, JITDATA_FLAG_SHOWDISASSEMBLE)
(JITDATA_FLAG_VERBOSECALL): Added.
(JITDATA_HAS_FLAG_PARSE, JITDATA_HAS_FLAG_VERIFY)
(JITDATA_HAS_FLAG_IFCONV, JITDATA_HAS_FLAG_SHOWINTERMEDIATE)
(JITDATA_HAS_FLAG_SHOWDISASSEMBLE, JITDATA_HAS_FLAG_VERBOSECALL):
Likewise.
(jit_recompile): Likewise.

* src/vm/vm.c (vm/jit/recompile.h): Added.
(vm_create): Call recompile_init and recompile_start_thread.

* src/toolbox/list.h (config.h, vm/types.h, vm/global.h): Added.
(list): Added lock.
(list_init): Renamed to list_create.
(list_addfirst): Renamed to list_add_first.
(list_addlast): Renamed to list_add_last.
(list_add_last_unsynced): New function.

* src/toolbox/list.c (mm/memory.h, threads/native/threads.h)
(vm/builtin.h): Added.
(list_init): Renamed to list_create.
(list_addfirst): Renamed to list_add_first and made synchronized.
(list_addlast): Likewise.
(list_add_last_unsynced): Likewise.
(list_add_before): Made synchronized.
(list_remove): Likewise.
(list_first): Likewise.
(list_last): Likewise.
(list_next): Likewise.
(list_prev): Likewise.

* src/vm/suck.c (suck_init): Replaced list_init with list_create.
(suck_add): Replaced list_addlast with list_add_last.

* src/vm/loader.c (load_constantpool): Replaced list_addfirst with
list_add_first.
(load_newly_created_array): Likewise.

* src/vm/properties.c (properties_init): Replaced list_init with
list_create.
(properties_add): Use list_add_last_unsynced, as this is required
during bootstrapping.

* src/threads/native/threads.h (THREAD_FLAG_JAVA)
(THREAD_FLAG_INTERNAL): Added.
(threadobject): Added flags.

* src/threads/native/threads.c (threads_init): Flag main thread as
Java thread (required for profiling sampling).
(threads_startup_thread): Flag threads as Java or internal thread.

17 years ago* src/vm/linker.c (vm/vm.h): Added.
twisti [Fri, 23 Jun 2006 09:23:02 +0000 (09:23 +0000)]
* src/vm/linker.c (vm/vm.h): Added.

17 years ago* src/vm/utf8.c, src/vm/utf8.h (utf_null): Added.
twisti [Thu, 22 Jun 2006 18:48:45 +0000 (18:48 +0000)]
* src/vm/utf8.c, src/vm/utf8.h (utf_null): Added.

17 years ago* src/vm/utf8.c (utf8_init): Compile fix with ENABLE_STATISTICS.
twisti [Thu, 22 Jun 2006 14:39:10 +0000 (14:39 +0000)]
* src/vm/utf8.c (utf8_init): Compile fix with ENABLE_STATISTICS.

17 years ago* configure.ac: Added support for compiling on sparc64
ajordan [Wed, 21 Jun 2006 16:29:29 +0000 (16:29 +0000)]
* configure.ac: Added support for compiling on sparc64

* src/vm/jit/Makefile.am: Added sparc64 subdirectory

* src/vm/jit/sparc64/*: Added files for the sparc64 JIT (which won't compile yet)

17 years ago* src/vm/jit/mips/linux/.cvsignore: Added TAGS.
twisti [Wed, 21 Jun 2006 08:30:37 +0000 (08:30 +0000)]
* src/vm/jit/mips/linux/.cvsignore: Added TAGS.

17 years ago* src/vm/jit/mips/codegen.c (codegen): Use codeinfo instead of
twisti [Tue, 20 Jun 2006 15:50:58 +0000 (15:50 +0000)]
* src/vm/jit/mips/codegen.c (codegen): Use codeinfo instead of
methodinfo.
(createcompilerstub): Likewise.
(createnativestub): Likewise.

* src/vm/jit/mips/asmpart.S (asm_vm_call_method): Likewise.

17 years ago* src/vm/jit/alpha/codegen.c (codegen): Use codeinfo instead of
twisti [Tue, 20 Jun 2006 11:55:40 +0000 (11:55 +0000)]
* src/vm/jit/alpha/codegen.c (codegen): Use codeinfo instead of
methodinfo.
(createcompilerstub): Likewise.
(createnativestub): Likewise.

* src/vm/jit/alpha/asmpart.S (asm_vm_call_method): Likewise.

17 years ago* src/vm/jit/x86_64/codegen.c (codegen): Use codeinfo instead of
twisti [Tue, 20 Jun 2006 09:10:05 +0000 (09:10 +0000)]
* src/vm/jit/x86_64/codegen.c (codegen): Use codeinfo instead of
methodinfo.
(createcompilerstub): Likewise.
(createnativestub): Likewise.

* src/vm/jit/x86_64/asmpart.S (asm_vm_call_method): Likewise.

17 years ago* src/vm/jit/i386/codegen.c (codegen): Use codeinfo instead of
twisti [Mon, 19 Jun 2006 22:53:53 +0000 (22:53 +0000)]
* src/vm/jit/i386/codegen.c (codegen): Use codeinfo instead of
methodinfo.
(createcompilerstub): Likewise.
(createnativestub): Likewise.

* src/vm/jit/i386/asmpart.S (asm_vm_call_method): Likewise.

17 years ago* src/threads/native/threads.h (threadobject): Added pc.
twisti [Mon, 19 Jun 2006 22:23:44 +0000 (22:23 +0000)]
* src/threads/native/threads.h (threadobject): Added pc.

17 years ago* src/vm/jit/methodheader.h (MethodPointer): Removed.
twisti [Mon, 19 Jun 2006 22:22:34 +0000 (22:22 +0000)]
* src/vm/jit/methodheader.h (MethodPointer): Removed.
(CodeinfoPointer): Added.

* src/vm/method.c (method_vftbl_lookup): Use CodeinfoPointer.

* src/vm/jit/powerpc/codegen.c (codegen): Use codeinfo instead of
methodinfo.
(createcompilerstub): Likewise.
(createnativestub): Likewise.

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

* src/vm/jit/stacktrace.c (stacktrace_create_stackframeinfo):
Likewise.
(stacktrace_create_native_stackframeinfo): Likewise.
(stacktrace_add_method): Likewise.
(stacktrace_create): Likewise.

* src/vm/exceptions.c (exceptions_handle_exception): Likewise.

* src/vm/jit/codegen-common.c (codegen_findmethod): Define for all
architectures. Removed assert, we have to check that somewhere else.
(codegen_finish): Add the method for all architectures.

* src/vm/jit/codegen-common.h (methodtree_element): Likewise.

* src/vm/jit/profile/profile.c (profile_thread): First implementation.
* src/vm/jit/profile/profile.h (vm/global.h): Added.

* src/vm/signal.c (signal_init): Install SIGUSR2 for profiling.
* src/vm/signallocal.h (md_signal_handler_sigusr2): Added.
* src/vm/jit/powerpc/linux/md-os.c (md_signal_handler_sigusr2): New
method.

* src/vm/vm.c (vm_create): Call profile_start_thread only with
opt_prof.

* src/cacaoh/headers.c (exceptions_throw_nosuchmethoderror): Added.

17 years ago* src/vm/class.c (class_resolveinterfacemethod_intern): Smaller
twisti [Mon, 19 Jun 2006 21:39:46 +0000 (21:39 +0000)]
* src/vm/class.c (class_resolveinterfacemethod_intern): Smaller
changes.
(class_resolveclassmethod): Likewise.

17 years ago* src/vm/linker.c (link_class_inter): Smaller changes.
twisti [Mon, 19 Jun 2006 21:04:37 +0000 (21:04 +0000)]
* src/vm/linker.c (link_class_inter): Smaller changes.
(linker_addinterface): Likewise, added some comments about checks we
should do.

17 years ago* src/vm/jit/powerpc/patcher.c (assert.h): Added.
twisti [Mon, 19 Jun 2006 21:00:05 +0000 (21:00 +0000)]
* src/vm/jit/powerpc/patcher.c (assert.h): Added.
(patcher_invokeinterface): Added XXX comments.

17 years ago* configure.ac (profiling): Disable by default.
twisti [Mon, 19 Jun 2006 20:51:43 +0000 (20:51 +0000)]
* configure.ac (profiling): Disable by default.

17 years ago* src/native/jni.c (AttachCurrentThread): Removed dummy
twisti [Mon, 19 Jun 2006 12:36:24 +0000 (12:36 +0000)]
* src/native/jni.c (AttachCurrentThread): Removed dummy
implementation.
(GetEnv): Use switch instead of if's.

17 years ago* src/native/native.c (native_resolve_function): fix/add to my last
motse [Wed, 14 Jun 2006 18:55:35 +0000 (18:55 +0000)]
* src/native/native.c (native_resolve_function): fix/add to my last
incomplete commit.

17 years ago* src/vm/loader.c (load_class_from_classloader): Add call to jvmti
motse [Wed, 14 Jun 2006 18:36:22 +0000 (18:36 +0000)]
* src/vm/loader.c (load_class_from_classloader): Add call to jvmti
Class Load and Prepare event.

* src/native/jni.c (RegisterNatives): Add comment for calling jvmti
Native Method Bind event.

* src/native/vm/VMClassLoader.c (defineClass): Add call to jvmti
Class File Load Hook event.

* src/native/vm/VMObject.c (wait): Add call to jvmti Monitor Wait
and Waited event.

* src/native/native.c (native_resolve_function): Add call to jvmti
Native Method Bind event.

* src/native/jvmti/cacaodbg.c (jvmti_ClassFileLoadHook): new function
to supprt event.
(jvmti_ClassLoadPrepare): idem
(jvmti_MonitorContendedEntering): idem
(jvmti_MonitorWaiting): idem
(jvmti_ThreadStartEnd): idem
(jvmti_NativeMethodBind): idem

* src/native/jvmti/cacaodbg.h: Add function headers for
jvmti_ClassFileLoadHook, jvmti_ClassLoadPrepare,
jvmti_MonitorContendedEntering, jvmti_MonitorWaiting,
jvmti_ThreadStartEnd, jvmti_NativeMethodBind.

* src/native/jvmti/jvmti.c (execute_callback): Add support for Class
File Load Hook event.
(GetOwnedMonitorInfo): Adapt lock record iteration to new
data structure.
(GetCurrentContendedMonitor): idem

* src/threads/native/lock.c (lock_monitor_enter): Add call to jvmti
Monitor Contended Enter and Entered event

* src/threads/native/threads.c (threads_startup_thread): replace
breakpoint by direct call to jvmti Thread Start/End event

* src/cacaoh/headers.c add dummy functions jvmti_ThreadStartEnd,
jvmti_ClassLoadPrepare and jvmti_MonitorContendedEntering

17 years ago* src/lib/vm/reference/java/lang/VMThread.java: Updated and removed
twisti [Tue, 13 Jun 2006 10:41:05 +0000 (10:41 +0000)]
* src/lib/vm/reference/java/lang/VMThread.java: Updated and removed
our old thread variables.
* src/native/include/java_lang_VMThread.h: Regenerated.

17 years ago* src/vm/jit/stack.c (new_stack_analyze): Fixed warnings about
edwin [Mon, 12 Jun 2006 21:34:04 +0000 (21:34 +0000)]
* src/vm/jit/stack.c (new_stack_analyze): Fixed warnings about
directive in macro argument.

17 years ago* src/vm/jit/show.c (new_show_basicblock): Fixed warnings.
edwin [Mon, 12 Jun 2006 21:27:33 +0000 (21:27 +0000)]
* src/vm/jit/show.c (new_show_basicblock): Fixed warnings.
(new_show_stackvar): Likewise.

17 years ago* src/vm/jit/stack.c (new_stack_analyse): Set dst field for IINC.
edwin [Mon, 12 Jun 2006 21:14:29 +0000 (21:14 +0000)]
* src/vm/jit/stack.c (new_stack_analyse): Set dst field for IINC.

* src/vm/jit/show.c (new_show_method): Use jitdata.new_rd.
Only show locals and interfaces if available.
(new_show_basicblock): Changed basicblock output format.
(new_show_stackvar): Copied&pasted full stackvar printing.
(new_show_icmd): Show some more ICMD operands.

* src/vm/jit/allocator/simplereg.c (new_reg_mark_copy): Fixed
bug for the case nthrough != 0.

17 years ago* src/vm/jit/allocator/simplereg.h, src/vm/jit/allocator/simplereg.c
edwin [Mon, 12 Jun 2006 18:50:13 +0000 (18:50 +0000)]
* src/vm/jit/allocator/simplereg.h, src/vm/jit/allocator/simplereg.c
(new_regalloc): New function for new instruction format.
(new_allocate_scratch_registers): Likewise.

* src/vm/jit/show.c (new_show_stackvar): Show allocated register
for stage SHOW_REGS and above.

* src/vm/jit/jit.h (jitdata): Added field new_rd for testing the
new simplereg allocator.

17 years ago* src/vm/jit/stack.c (new_stack_analyse): Fixed new stack analysis
edwin [Mon, 12 Jun 2006 14:23:28 +0000 (14:23 +0000)]
* src/vm/jit/stack.c (new_stack_analyse): Fixed new stack analysis
for ICMD_JSR.

* src/vm/jit/show.c (new_show_icmd): Show operands of new instruction
format.
(new_show_basicblock): Removed obsolete stack display.

17 years ago* src/vm/jit/stack.c (IF_INTRP): New macro.
edwin [Sat, 10 Jun 2006 14:53:54 +0000 (14:53 +0000)]
* src/vm/jit/stack.c (IF_INTRP): New macro.
(IF_JIT): New macro.
(STATISTICS_STACKDEPTH_DISTRIBUTION): New macro.
(new_stack_analyse): New function. Implemented stack analysis for
new instruction format. (Not used, yet.)

* src/vm/jit/stack.h (NEWSTACK): Enclosed in do { } while(0).

* src/vm/jit/show.h, src/vm/jit/show.c (new_show_method): New function.
(new_show_basicblock): New function.
(new_show_icmd): New function.

* src/vm/jit/parse.c (new_fillextable): New function.
(parse): Parsing of JSR changed. Fixed bptr->icount setting.

* src/vm/jit/jit.h (new_instruction): New field s3.jsrtarget.
New field dst.dupslots.

17 years ago* tests/regression/codepatching/test.java (aastoreconst): Fixed skip
twisti [Thu, 8 Jun 2006 07:26:29 +0000 (07:26 +0000)]
* tests/regression/codepatching/test.java (aastoreconst): Fixed skip
case.

17 years ago* src/vm/suck.c (suck_add_from_property): Always set namelist to NULL
twisti [Wed, 7 Jun 2006 12:51:50 +0000 (12:51 +0000)]
* src/vm/suck.c (suck_add_from_property): Always set namelist to NULL
before scandir.

17 years ago* src/vm/global.h (bool): Changed to `unsigned int', as the MIPS Pro
twisti [Wed, 7 Jun 2006 12:19:27 +0000 (12:19 +0000)]
* src/vm/global.h (bool): Changed to `unsigned int', as the MIPS Pro
compiler complains about signed bit fields. And I think that warning
is really ok.

* src/vm/suck.c (scandir_filter): Changed the signature define, as
only linux seems to use const.

17 years ago* src/vm/suck.c (suck_add_from_property): Check for scandir return
twisti [Wed, 7 Jun 2006 12:10:17 +0000 (12:10 +0000)]
* src/vm/suck.c (suck_add_from_property): Check for scandir return
value in error case, as on some systems, like Linux, it returns NULL.

17 years agosrc/native/vm/VMVirtualMachine.c (unregisterEvent): print error message
motse [Tue, 6 Jun 2006 21:13:41 +0000 (21:13 +0000)]
src/native/vm/VMVirtualMachine.c (unregisterEvent): print error message

src/native/jvmti/cacaodbg.c (jvmti_cacao_debug_init): set  variable jvmti

src/native/jvmti/VMjdwp.c: add jmethodID and jclass cache variables. Add new callback functions to jvmti_jdwp_EventCallbacks
(ThreadStart/ThreadEnd/ClassPrepare/Breakpoint): add ThreadStart/ThreadEnd event callbackes implementation who notify jdwp.
(Exception/MethodEntry): dummy implementation. There are no jdwp exeception/MethodEntry events in gnu classpath yet.
(setup_jdwp_thread): use cache variables.
FINDCLASSWITHEXCEPTION/GETMIDWITHEXCEPTION: helper macros to ease jni findclass and getmethodid.
(fillidcache): new function that fills valid jmethodIDs and jclasses in the cache variables.
(VMInit): add call to fillidcache.
(Agent_OnLoad): do not enable all jvmti callbacks anymore. Only enable needed VMInit callback. The other callbacks will be enable with VMVirtualMachine.registerEvent by need.

src/native/jvmti.c (dofireEvent): check if a valid event callback is available before executing it.
(SetEventNotificationMode): ThreadStart/End event are no more implemented as breakpoints but have direct function calls to dofireEvent.
(SuspendThread/ResumeThread/getcacaostacktrace): sketch for further implementation of this function. Final threads_suspend* functions are not yet available.
(GetArgumentsSize):  new implementation using parsed descriptors.
(GetMethodLocation): add checks for JVMTI_ERROR_NATIVE_METHOD (Samuel Vinson). And return -1 as return values for this dummy implementation.
(GetJLocationFormat): JLocationFormat probably will be JVMTI_JLOCATION_OTHER

src/native/jvmti/VMjdwp.h: add jdwpthread which stores the thread object for the jdwp listening thread.

src/threads/native/threads.h: remove jvmti_get_threads_breakpoints beacause ThreadStart/End events are implemented as direct function calls by now.

src/threads/native/threads.c (threads_startup_thread): replace ThreadStart/End event implementation.
(jvmti_get_threads_breakpoints): removed.

src/cacaoh/headers.c (jvmti_fireEvent): added dummy implementation to enable linking of cacaoh.

17 years ago* tests/regression/extest.java: Get the maximum heap size and use it
twisti [Tue, 6 Jun 2006 18:51:08 +0000 (18:51 +0000)]
* tests/regression/extest.java: Get the maximum heap size and use it
for OOM checks.
* tests/regression/extest.2output: Updated.

17 years ago* src/vm/jit/alpha/arch.h (SUPPORT_LONG_DIV_POW2)
twisti [Tue, 6 Jun 2006 18:05:16 +0000 (18:05 +0000)]
* src/vm/jit/alpha/arch.h (SUPPORT_LONG_DIV_POW2)
(SUPPORT_LONG_REM_POW2): Added, as we probably support these two
instructions while the architecture does not support long division.
* src/vm/jit/i386/arch.h: Likewise.
* src/vm/jit/mips/arch.h: Likewise.
* src/vm/jit/powerpc/arch.h: Likewise.
* src/vm/jit/x86_64/arch.h: Likewise.

* src/vm/jit/stack.c (stack_analyse): Use SUPPORT_LONG_DIV_POW2 and
SUPPORT_LONG_REM_POW2 instead of SUPPORT_LONG_DIV.

17 years ago* doc/handbook/arm.tex: Added.
michi [Tue, 6 Jun 2006 14:32:01 +0000 (14:32 +0000)]
* doc/handbook/arm.tex: Added.
* doc/handbook/arm-double-memory.png: Image describing doubles in memory.
* doc/handbook/cacao.tex, doc/handbook/Makefile.am: Added arm.tex.

17 years ago* tests/regression/Makefile.am (JAVAFLAGS): Use flat vm classes and
twisti [Tue, 6 Jun 2006 13:13:46 +0000 (13:13 +0000)]
* tests/regression/Makefile.am (JAVAFLAGS): Use flat vm classes and
CLASSPATH_GLIBJ_ZIP.
* tests/regression/codepatching/Makefile.am: Likewise.
* tests/regression/native/Makefile.am: Likewise.

17 years ago* .externalToolBuilders/CacaoConfigure.launch: Updated to new
twisti [Tue, 6 Jun 2006 12:17:18 +0000 (12:17 +0000)]
* .externalToolBuilders/CacaoConfigure.launch: Updated to new
configure options.

17 years ago* configure.ac (VM_ZIP_STRING): Removed.
twisti [Tue, 6 Jun 2006 11:22:56 +0000 (11:22 +0000)]
* configure.ac (VM_ZIP_STRING): Removed.
(--with-vm-zip): Added.
(--with-classpath-glibj-zip): Added.
(--with-flat-classpath): Removed.

* contrib/setenvinstalled.in (BOOTCLASSPATH): Use hardcoded vm.zip and
@CLASSPATH_GLIBJ_ZIP@.
* contrib/setenvsource.in: Likewise.

* src/vm/global.h (CACAO_VM_ZIP_PATH): Removed.
(CLASSPATH_GLIBJ_ZIP_PATH): Likewise.
* src/vm/vm.c (CACAO_VM_ZIP_PATH): Replaced with CACAO_VM_ZIP.
(CLASSPATH_GLIBJ_ZIP_PATH): Replaced with CLASSPATH_GLIBJ_ZIP.
* src/cacaoh/cacaoh.c: Likewise.

* src/lib/Makefile.am (GLIBJ_ZIP): Removed and replaced with
CLASSPATH_GLIBJ_ZIP.
* src/native/include/Makefile.am (VM_ZIP): Removed and replaced with
flat classes in builddir.
(GLIBJ_ZIP): Removed and replaced with CLASSPATH_GLIBJ_ZIP.
* src/native/Makefile.am: Likewise.

17 years ago* src/vm/jit/stack.h (NEW_CHECKOVERFLOW): New macro.
edwin [Thu, 1 Jun 2006 22:53:52 +0000 (22:53 +0000)]
* src/vm/jit/stack.h (NEW_CHECKOVERFLOW): New macro.

17 years ago* src/vm/jit/parse.c (new_parse): Use temporary fields in jitdata,
edwin [Thu, 1 Jun 2006 22:52:44 +0000 (22:52 +0000)]
* src/vm/jit/parse.c (new_parse): Use temporary fields in jitdata,
instead of methodinfo fields. Check exceptions for MONITORENTER/EXIT.
Cleaned up.

17 years ago* src/vm/jit/parse.h (new_block_insert): New macro.
edwin [Thu, 1 Jun 2006 22:49:31 +0000 (22:49 +0000)]
* src/vm/jit/parse.h (new_block_insert): New macro.

17 years ago* src/vm/jit/jit.h (jitdata): Added temporary fields for development
edwin [Thu, 1 Jun 2006 22:46:54 +0000 (22:46 +0000)]
* src/vm/jit/jit.h (jitdata): Added temporary fields for development
of new instruction format.
(NEW_INSTRUCTION_GET_METHODDESC): New macro.

17 years ago* src/vm/resolve.c (new_resolve_field_lazy): New method. This will
edwin [Thu, 1 Jun 2006 16:00:18 +0000 (16:00 +0000)]
* src/vm/resolve.c (new_resolve_field_lazy): New method. This will
become the resolve_field_lazy for the new instruction format.
(new_resolve_method_lazy): New method. This will
become the resolve_method_lazy for the new instruction format.
(new_create_unresolved_field): New method. This will
become the create_unresolved_field for the new instruction format.
(new_create_unresolved_method): New method. This will
become the create_unresolved_method for the new instruction format.

* src/vm/jit/parse.c (new_parse): Further work for new format.

* src/vm/jit/jit.h (NEW_INSTRUCTION_GET_FIELDREF): New macro.
(NEW_INSTRUCTION_GET_METHODREF): New macro.

17 years ago* src/vm/jit/jit.c (jcommandsize): Reformatted prettily. Use comments
edwin [Thu, 1 Jun 2006 15:09:24 +0000 (15:09 +0000)]
* src/vm/jit/jit.c (jcommandsize): Reformatted prettily. Use comments
instead of duplicated #defines.

17 years ago* src/vm/jit/jit.h (ICMD_CHECKNULL_POP): New ICMD.
edwin [Thu, 1 Jun 2006 14:36:38 +0000 (14:36 +0000)]
* src/vm/jit/jit.h (ICMD_CHECKNULL_POP): New ICMD.
* src/vm/jit/jit.c (ICMD_CHECKNULL_POP): Likewise.

* src/vm/jit/parse.c (new_parse): Further work on parsing for new
instruction format. Zero flags where necessary. Clarify policy of
at most one instruction per byte of original bytecode. Use the new
ICMD_CHECKNULL_POP for MONITORENTER/EXIT without threads.

17 years ago* src/vm/jit/parse.h: Reworked and documented macros for new
edwin [Thu, 1 Jun 2006 13:00:33 +0000 (13:00 +0000)]
* src/vm/jit/parse.h: Reworked and documented macros for new
instruction set.

17 years ago* src/vm/jit/jit.h: Whitespace cleanup and comments.
edwin [Wed, 31 May 2006 23:18:30 +0000 (23:18 +0000)]
* src/vm/jit/jit.h: Whitespace cleanup and comments.

17 years ago* src/vm/jit/parse.c (parse): Removed unnecessary variable `s4ptr`.
edwin [Wed, 31 May 2006 23:03:35 +0000 (23:03 +0000)]
* src/vm/jit/parse.c (parse): Removed unnecessary variable `s4ptr`.

17 years ago* src/vm/jit/parse.c (new_parse): Implement LOOKUPSWITCH and
edwin [Wed, 31 May 2006 22:56:17 +0000 (22:56 +0000)]
* src/vm/jit/parse.c (new_parse): Implement LOOKUPSWITCH and
TABLESWITCH for the new instruction format.

* src/vm/jit/jit.h (branch_target_t): New union.
(lookup_target_t): New struct.
(s3_operand_t): lookupdefault is now a branch_target_t.
(dst_operand_t): Changed some field names and types.

17 years ago* src/native/jvmti/Makefile.am (INCLUDES): Renamed to AM_CPPFLAGS.
twisti [Wed, 31 May 2006 22:07:13 +0000 (22:07 +0000)]
* src/native/jvmti/Makefile.am (INCLUDES): Renamed to AM_CPPFLAGS.
(LIBS): Added, required for darwin.
(libjdwp_la_SOURCES): Removed trailing \.

17 years ago* src/vm/jit/ifconv/ifconv.c (show.h): Include this instead of
edwin [Wed, 31 May 2006 21:31:29 +0000 (21:31 +0000)]
* src/vm/jit/ifconv/ifconv.c (show.h): Include this instead of
stack.h.
* src/vm/jit/verify/typecheck.c (show.h): Likewise.
* src/vm/jit/inline/inline.c (show.h): Include.
* src/vm/jit/jit.c (show.h): Include.

17 years ago* src/vm/jit/show.c (show_init): Do not define this function for
edwin [Wed, 31 May 2006 21:10:40 +0000 (21:10 +0000)]
* src/vm/jit/show.c (show_init): Do not define this function for
NDEBUG.