Merged revisions 8321-8342 via svnmerge from
authormichi <none@none>
Fri, 17 Aug 2007 21:39:32 +0000 (21:39 +0000)
committermichi <none@none>
Fri, 17 Aug 2007 21:39:32 +0000 (21:39 +0000)
commit8766651a7844894218849d88e80758065705c7a6
tree618ceaf26436e06223f964f716ba93f0fb0a623b
parentafd6a571ab96d57b9574b6d719a45a998461cd78
Merged revisions 8321-8342 via svnmerge from
svn+ssh://michi@c1.complang.tuwien.ac.at/ahome/cacao/svn/cacao/trunk

........
  r8322 | twisti | 2007-08-16 17:54:38 +0200 (Thu, 16 Aug 2007) | 16 lines

  * src/vmcore/method.c (method_get_annotations): Always enable the
  method, but return NULL for !ENABLE_ANNOTATIONS. This keeps code
  calling this function simpler.
  (method_get_parameterannotations): Likewise.
  (method_get_annotationdefault): Likewise.

  * src/vmcore/method.h (method_get_annotations): Removed
  ENABLE_ANNOTATIONS.
  (method_get_parameterannotations): Likewise.
  (method_get_annotationdefault): Likewise.

  * src/native/vm/reflect.c (reflect_constructor_new): Always call
  method-annotations functions.
  (reflect_field_new): Likewise.
  (reflect_method_new): Likewise.
........
  r8323 | twisti | 2007-08-16 18:01:05 +0200 (Thu, 16 Aug 2007) | 3 lines

  * src/native/vm/sun/jvm.c (JVM_FindPrimitiveClass): Use TRACEJVMCALLS
  and a better implementation.
........
  r8325 | twisti | 2007-08-16 19:25:47 +0200 (Thu, 16 Aug 2007) | 7 lines

  * src/vmcore/field.c (field_get_annotations): Always enable the
  method, but return NULL for !ENABLE_ANNOTATIONS. This keeps code
  calling this function simpler.

  * src/vmcore/field.h (field_get_annotations): Removed
  ENABLE_ANNOTATIONS.
........
  r8326 | twisti | 2007-08-16 19:45:49 +0200 (Thu, 16 Aug 2007) | 12 lines

  * src/native/vm/gnu/java_lang_reflect_Constructor.c
  (declaredAnnotations): Use byte-array handle. Don't check for this ==
  NULL , this cannot happen.
  (getParameterAnnotations): Likewise.

  * src/native/vm/gnu/java_lang_reflect_Field.c (declaredAnnotations):
  Likewise.

  * src/native/vm/gnu/java_lang_reflect_Method.c (declaredAnnotations):
  Likewise.
  (getParameterAnnotations): Likewise.
........
  r8327 | twisti | 2007-08-16 19:52:48 +0200 (Thu, 16 Aug 2007) | 8 lines

  * src/vm/primitive.c (primitive_type_get_by_wrapperclass): New
  function.
  (primitive_unbox): Changed signature.
  * src/vm/primitive.h: Likewise.

  * src/vm/vm.c (vm_array_from_objectarray): Rewritten to use
  primitive-unbox function.
........
  r8328 | twisti | 2007-08-16 19:56:19 +0200 (Thu, 16 Aug 2007) | 3 lines

  * src/vm/vm.c (vm_array_from_objectarray): Use
  primitive_type_get_by_wrapperclass (typo). Removed debug output.
........
  r8329 | twisti | 2007-08-16 19:57:27 +0200 (Thu, 16 Aug 2007) | 3 lines

  * src/vm/vm.c (XXusage): Commented.  We don't use it anymore but we
  keep it to know which switches still need to be converted.
........
  r8330 | twisti | 2007-08-16 20:15:51 +0200 (Thu, 16 Aug 2007) | 25 lines

  * src/vm/array.c: New file.
  * src/vm/array.h: Likewise.

  * src/vm/Makefile.am (libvm_la_SOURCES): Added array.[ch].

  * src/vm/builtin.c,
  src/vm/string.c,
  src/vm/jit/verify/typecheck-typeinferer.c,
  src/vm/jit/verify/typecheck.c,
  src/vm/jit/verify/typecheck-stackbased.c,
  src/vm/jit/verify/typeinfo.c,
  src/vmcore/linker.c (vm/array.h): Added.

  * src/vm/primitive.h (ARRAYTYPE_*): Moved to vm/array.h

  * src/vmcore/class.c (class_get_componenttype): New function.
  * src/vmcore/class.h: Likewise.

  * src/native/vm/java_lang_Class.c (getComponentType): Removed.
  * src/native/vm/java_lang_Class.h: Likewise.

  * src/native/vm/gnu/java_lang_VMClass.c (getComponentType): Call
  class_get_componenttype.
  * src/native/vm/sun/jvm.c (JVM_GetComponentType): Likewise.
........
  r8331 | panzi | 2007-08-16 21:21:39 +0200 (Thu, 16 Aug 2007) | 16 lines

  * src/native/vm/sun/jvm.c
  (vm/array.h): Added include.
  (vm/global.h): Added include.
  (JVM_FindPrimitiveClass): Parameter name shadowed type utf.
  (JVM_GetComponentType): Missing variable classinfo* c.
  (JVM_GetClassAnnotations): java_bytearray -> java_handle_bytearray_t.
  (JVM_GetFieldAnnotations): java_bytearray -> java_handle_bytearray_t.
  (JVM_GetMethodAnnotations): java_bytearray -> java_handle_bytearray_t.
  (JVM_GetMethodDefaultAnnotationValue): java_bytearray -> java_handle_bytearray_t.
  (JVM_GetMethodParameterAnnotations): java_bytearray -> java_handle_bytearray_t.
  (JVM_GetArrayLength): java_arrayheader -> java_array_t.
  (JVM_GetArrayElement): Updated types, renamed wrong named variable.

  * src/vmcore/linker.h:
  (_vftbl): Fixed formatting of comment.
........
  r8332 | panzi | 2007-08-16 21:29:42 +0200 (Thu, 16 Aug 2007) | 5 lines

  * src/native/vm/sun/jvm.c
  (JVM_GetArrayElement): Used exceptions_new_arrayindexoutofboundsexception
  where exceptions_throw_arrayindexoutofboundsexception should have been used.
........
  r8333 | pm | 2007-08-16 23:46:32 +0200 (Thu, 16 Aug 2007) | 2 lines

  * src/native/vm/sun/jvm.c (JVM_GetProtectionDomain): Return NULL as default.
........
  r8334 | ajordan | 2007-08-17 00:10:43 +0200 (Fri, 17 Aug 2007) | 5 lines

  * src/vm/jit/sparc64/codegen.h: Improved overflow checking.

  * src/vm/jit/sparc64/codegen.c (check_13bit_imm): Likewise.
  (codegen_emit): Fixed ICDM_TABLESWITCH for large negative values.
........
  r8338 | panzi | 2007-08-17 22:03:06 +0200 (Fri, 17 Aug 2007) | 10 lines

  * tests/regression/MinimalClassReflection.output: New file.
  * tests/regression/MinimalClassReflection.java: New file.
  This adds tests for some reflection methods like
  java.lang.Class.isLocal/.isMember/.isAnonymous/.getDeclaringClass etc.

  * tests/regression/Makefile.am
  (SOURCE_FILES): Added MinimalClassReflection.java.
  (EXTRA_DIST): Added MinimalClassReflection.output.
  (OUTPUT_JAVA_TESTS): Added MinimalClassReflection.
........
  r8339 | twisti | 2007-08-17 23:21:51 +0200 (Fri, 17 Aug 2007) | 37 lines

  * src/vm/global.h (ACC_CLASS_MEMBER): New define.
  (ACC_CLASS_ANONYMOUS): Likewise.

  * src/native/vm/java_lang_Class.c
  (_Jv_java_lang_Class_getEnclosingClass): Removed.
  (_Jv_java_lang_Class_getEnclosingMethod_intern): Use
  class_get_enclosingclass.

  * src/native/vm/java_lang_Class.h
  (_Jv_java_lang_Class_getEnclosingClass): Removed.

  * src/native/vm/gnu/java_lang_VMClass.c (stdint.h): Added.
  (vmcore/class.h): Likewise.
  (methods): Enabled isAnonymousClass, isLocalClass and isMemberClass.
  (Java_java_lang_VMClass_getEnclosingClass): Use
  class_get_enclosingclass.
  (isAnonymousClass): Implemented.
  (isLocalClass): Likewise.
  (isMemberClass): Likewise.

  * src/vmcore/class.c (class_load_attributes): Set ACC_CLASS_MEMBER and
  ACC_CLASS_ANONYMOUS flags.
  (class_is_anonymousclass): New function.
  (class_is_localclass): Likewise.
  (class_is_memberclass): Likewise.
  (class_get_declaredclasses): Check if outer is NULL.
  (class_get_declaringclass): Rewritten to use c->declaringclass.
  (class_get_enclosingclass): New function.

  * src/vmcore/class.h (classinfo): Added declaringclass.(
  (class_is_anonymousclass): New function.
  (class_is_localclass): Likewise.
  (class_is_memberclass): Likewise.
  (class_get_enclosingclass): Likewise.

  * NEWS: Added news.
........
  r8340 | twisti | 2007-08-17 23:28:29 +0200 (Fri, 17 Aug 2007) | 2 lines

  * src/native/vm/gnu/java_lang_VMClass.c (getEnclosingClass): Typo.
........
  r8341 | michi | 2007-08-17 23:32:01 +0200 (Fri, 17 Aug 2007) | 21 lines

  * src/native/llni.h (LLNI_classinfo_wrap, LLNI_classinfo_unwrap): Added new
  macros.

  Used above two LLNI macros throughout the codebase:
  * src/native/jni.c
  * src/native/vm/java_lang_ClassLoader.c
  * src/native/vm/cldc1.1/java_lang_Class.c
  * src/native/vm/cldc1.1/java_lang_Object.c
  * src/native/vm/java_lang_Class.c
  * src/native/vm/java_lang_Object.c
  * src/native/vm/gnu/java_lang_VMClassLoader.c
  * src/native/vm/gnu/java_lang_VMClass.c
  * src/native/vm/gnu/sun_reflect_ConstantPool.c
  * src/native/vm/gnu/java_lang_reflect_Method.c
  * src/native/vm/gnu/java_lang_reflect_Field.c
  * src/native/vm/gnu/java_lang_VMThrowable.c
  * src/native/vm/sun_misc_Unsafe.c
  * src/native/vm/sun/jvm.c
  * src/native/vm/reflect.c
  * src/vmcore/loader.c
........

--HG--
branch : exact-gc
46 files changed:
NEWS
src/native/jni.c
src/native/llni.h
src/native/vm/cldc1.1/java_lang_Class.c
src/native/vm/cldc1.1/java_lang_Object.c
src/native/vm/gnu/java_lang_VMClass.c
src/native/vm/gnu/java_lang_VMClassLoader.c
src/native/vm/gnu/java_lang_VMThrowable.c
src/native/vm/gnu/java_lang_reflect_Constructor.c
src/native/vm/gnu/java_lang_reflect_Field.c
src/native/vm/gnu/java_lang_reflect_Method.c
src/native/vm/gnu/sun_reflect_ConstantPool.c
src/native/vm/java_lang_Class.c
src/native/vm/java_lang_Class.h
src/native/vm/java_lang_ClassLoader.c
src/native/vm/java_lang_Object.c
src/native/vm/reflect.c
src/native/vm/sun/jvm.c
src/native/vm/sun_misc_Unsafe.c
src/vm/Makefile.am
src/vm/array.c [new file with mode: 0644]
src/vm/array.h [new file with mode: 0644]
src/vm/builtin.c
src/vm/global.h
src/vm/jit/sparc64/codegen.c
src/vm/jit/sparc64/codegen.h
src/vm/jit/verify/typecheck-stackbased.c
src/vm/jit/verify/typecheck-typeinferer.c
src/vm/jit/verify/typecheck.c
src/vm/jit/verify/typeinfo.c
src/vm/primitive.c
src/vm/primitive.h
src/vm/string.c
src/vm/vm.c
src/vmcore/class.c
src/vmcore/class.h
src/vmcore/field.c
src/vmcore/field.h
src/vmcore/linker.c
src/vmcore/linker.h
src/vmcore/loader.c
src/vmcore/method.c
src/vmcore/method.h
tests/regression/Makefile.am
tests/regression/MinimalClassReflection.java [new file with mode: 0644]
tests/regression/MinimalClassReflection.output [new file with mode: 0644]