* src/mm/gc-common.h,
authormichi <none@none>
Mon, 13 Aug 2007 13:50:50 +0000 (13:50 +0000)
committermichi <none@none>
Mon, 13 Aug 2007 13:50:50 +0000 (13:50 +0000)
* src/mm/cacao-gc/gc.h,
* src/mm/cacao-gc/final.h,
* src/mm/cacao-gc/rootset.c,
* src/mm/cacao-gc/rootset.h,
* src/mm/cacao-gc/copy.c,
* src/mm/cacao-gc/heap.c,
* src/mm/cacao-gc/heap.h,
* src/mm/cacao-gc/region.c,
* src/mm/cacao-gc/compact.c,
* src/mm/cacao-gc/region.h,
* src/mm/cacao-gc/gc.c,
* src/mm/cacao-gc/final.c,
* src/mm/cacao-gc/mark.c: Adapted to changes on trunk.

--HG--
branch : exact-gc

15 files changed:
configure.ac
src/mm/cacao-gc/compact.c
src/mm/cacao-gc/copy.c
src/mm/cacao-gc/final.c
src/mm/cacao-gc/final.h
src/mm/cacao-gc/gc.c
src/mm/cacao-gc/gc.h
src/mm/cacao-gc/heap.c
src/mm/cacao-gc/heap.h
src/mm/cacao-gc/mark.c
src/mm/cacao-gc/region.c
src/mm/cacao-gc/region.h
src/mm/cacao-gc/rootset.c
src/mm/cacao-gc/rootset.h
src/mm/gc-common.h

index 169eb6074845e48df69d0750af9b5971fc192788..0b614aaa4f7f84ed6e17ec110970a453e9c2bdd8 100644 (file)
@@ -22,7 +22,7 @@ dnl along with this program; if not, write to the Free Software
 dnl Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
 dnl 02110-1301, USA.
 dnl 
-dnl $Id: configure.ac 8274 2007-08-08 15:58:17Z twisti $
+dnl $Id: configure.ac 8299 2007-08-13 08:41:18Z michi $
 
 dnl Process this file with autoconf to produce a configure script.
 
index 9c8c627842c2f0a548968b8835ac48e06a34f4b1..47dfe2968cde716a03d7e16b255dcba099f2e145 100644 (file)
@@ -48,7 +48,7 @@
 #define GC_THREAD(ref, refptr, start, end) \
        if (POINTS_INTO(ref, start, end)) { \
                GC_ASSERT(GC_IS_MARKED(ref)); \
-               *refptr = (java_objectheader *) ref->vftbl; \
+               *refptr = (java_object_t *) ref->vftbl; \
                ref->vftbl = (struct _vftbl *)  GC_SET_THREAD_BIT(refptr); \
        }
 
@@ -66,8 +66,8 @@
 
 static void compact_thread_rootset(rootset_t *rs, void *start, void *end)
 {
-       java_objectheader  *ref;
-       java_objectheader **refptr;
+       java_object_t  *ref;
+       java_object_t **refptr;
        int i;
 
        GC_LOG2( printf("threading in rootsets\n"); );
@@ -108,10 +108,10 @@ static void compact_thread_rootset(rootset_t *rs, void *start, void *end)
 
 static void compact_thread_classes(void *start, void *end)
 {
-       java_objectheader  *ref;
-       java_objectheader **refptr;
-       classinfo          *c;
-       fieldinfo          *f;
+       java_object_t  *ref;
+       java_object_t **refptr;
+       classinfo      *c;
+       fieldinfo      *f;
        /*hashtable_classloader_entry *cle;*/
        void *sys_start, *sys_end;
        int i;
@@ -158,7 +158,7 @@ static void compact_thread_classes(void *start, void *end)
                                continue;
 
                        /* load the reference */
-                       refptr = (java_objectheader **) &(f->value);
+                       refptr = (java_object_t **) &(f->value);
                        ref = *( refptr );
 
                        GC_LOG2( printf("\tclass-field points to %p\n", (void *) ref); );
@@ -195,10 +195,10 @@ static void compact_thread_classes(void *start, void *end)
 
 *******************************************************************************/
 
-static void compact_thread_references(java_objectheader *o, void *start, void *end)
+static void compact_thread_references(java_object_t *o, void *start, void *end)
 {
-       java_objectheader  *ref;
-       java_objectheader **refptr;
+       java_object_t  *ref;
+       java_object_t **refptr;
 
        GC_LOG2( printf("threading in ");
                        heap_print_object(o); printf("\n"); );
@@ -242,9 +242,9 @@ static void compact_thread_references(java_objectheader *o, void *start, void *e
 
 *******************************************************************************/
 
-static void compact_unthread_references(java_objectheader *o, void *new)
+static void compact_unthread_references(java_object_t *o, void *new)
 {
-       java_objectheader **refptr;
+       java_object_t **refptr;
        ptrint tmp;
 
        GC_LOG2( printf("unthreading in ...\n"); );
@@ -254,20 +254,20 @@ static void compact_unthread_references(java_objectheader *o, void *new)
        GC_ASSERT(GC_IS_THREADED(o->vftbl));
 
        /* walk down the threaded chain */
-       refptr = (java_objectheader **) (ptrint) o->vftbl;
+       refptr = (java_object_t **) (ptrint) o->vftbl;
        while (GC_IS_THREADED(refptr)) {
 
                /* remove the threading bit */
-               refptr = (java_objectheader **) GC_REMOVE_THREAD_BIT(refptr);
+               refptr = (java_object_t **) GC_REMOVE_THREAD_BIT(refptr);
 
                GC_LOG2( printf("\treference at %p\n", (void *) refptr); );
 
                /* update the reference in the chain */
                tmp = (ptrint) *refptr;
-               *refptr = (java_objectheader *) (ptrint) new;
+               *refptr = (java_object_t *) (ptrint) new;
 
                /* skip to the next chain value */
-               refptr = (java_objectheader **) tmp;
+               refptr = (java_object_t **) tmp;
 
        }
 
@@ -330,13 +330,13 @@ static u4 compact_move(u1 *old, u1 *new, u4 size)
        new_size = size;
 
        /* check if we need to attach the hashcode to the object */
-       if (GC_TEST_FLAGS((java_objectheader *) new, HDRFLAG_HASH_TAKEN)) {
+       if (GC_TEST_FLAGS((java_object_t *) new, HDRFLAG_HASH_TAKEN)) {
 
                /* TODO: move this whole bunch to heap_attach_hashcode() */
 
                /* change the flags accordingly */
-               GC_CLEAR_FLAGS((java_objectheader *) new, HDRFLAG_HASH_TAKEN);
-               GC_SET_FLAGS((java_objectheader *) new, HDRFLAG_HASH_ATTACHED);
+               GC_CLEAR_FLAGS((java_object_t *) new, HDRFLAG_HASH_TAKEN);
+               GC_SET_FLAGS((java_object_t *) new, HDRFLAG_HASH_ATTACHED);
 
                /* attach the hashcode at the end of the object */
                new_size += SIZEOF_VOID_P;
@@ -367,7 +367,7 @@ void compact_me(rootset_t *rs, regioninfo_t *region)
 {
        u1 *ptr;
        u1 *ptr_new;
-       java_objectheader *o;
+       java_object_t *o;
        u4 o_size;
        u4 o_size_new;
        u4 used;
@@ -388,7 +388,7 @@ void compact_me(rootset_t *rs, regioninfo_t *region)
         *  - update forward references */
        ptr = region->base; ptr_new = region->base;
        while (ptr < region->ptr) {
-               o = (java_objectheader *) ptr;
+               o = (java_object_t *) ptr;
 
                /* uncollectable items should never be compacted */
                GC_ASSERT(!GC_TEST_FLAGS(o, HDRFLAG_UNCOLLECTABLE));
@@ -436,7 +436,7 @@ void compact_me(rootset_t *rs, regioninfo_t *region)
        used = 0;
        ptr = region->base; ptr_new = region->base;
        while (ptr < region->ptr) {
-               o = (java_objectheader *) ptr;
+               o = (java_object_t *) ptr;
 
                /* if this object is still part of a threaded chain ... */
                if (GC_IS_THREADED(o->vftbl)) {
index e21d69cc25a2aa36647d4805e27aa9dc42e43cf9..924c24b6ed8e34da6f00d46ed880f4c239960b34 100644 (file)
@@ -42,7 +42,7 @@
 
 /* Global Variables ***********************************************************/
 
-static java_objectheader *next;
+static java_object_t *next;
 
 
 static u4 copy_object(u1 *old, u1 *new, u4 size)
@@ -60,7 +60,7 @@ static u4 copy_object(u1 *old, u1 *new, u4 size)
        new_size = size;
 
        /* check if we need to attach the hashcode to the object */
-       if (GC_TEST_FLAGS((java_objectheader *) new, HDRFLAG_HASH_TAKEN)) {
+       if (GC_TEST_FLAGS((java_object_t *) new, HDRFLAG_HASH_TAKEN)) {
 
                GC_LOG( printf("need to attach hash to %p\n", new); );
 
@@ -73,7 +73,7 @@ static u4 copy_object(u1 *old, u1 *new, u4 size)
 #define GC_FORWARD(ref,refptr,start,end) \
        *(refptr) = copy_forward(ref, start, end)
 
-static void *copy_forward(java_objectheader *o, void *src_start, void *src_end)
+static void *copy_forward(java_object_t *o, void *src_start, void *src_end)
 {
        s4 o_size;
 
@@ -91,7 +91,7 @@ static void *copy_forward(java_objectheader *o, void *src_start, void *src_end)
                if (GC_IS_MARKED(o)) {
 
                        GC_LOG2( printf("\tForwarding reference: %p -> ", (void *) o);
-                                       heap_print_object((java_objectheader *) o->vftbl);
+                                       heap_print_object((java_object_t *) o->vftbl);
                                        printf("\n"); );
 
                        /* return the location of an already existing copy */
@@ -134,15 +134,15 @@ static void *copy_forward(java_objectheader *o, void *src_start, void *src_end)
 
 void copy_me(regioninfo_t *src, regioninfo_t *dst, rootset_t *rs)
 {
-       java_objectheader  *scan;
-       /*java_objectheader *next;*/
-       java_objectheader  *ref;
-       java_objectheader **refptr;
+       java_object_t  *scan;
+       /*java_object_t *next;*/
+       java_object_t  *ref;
+       java_object_t **refptr;
        int i;
 
        /* initialize the scan and next pointer */
-       scan = (java_objectheader *) dst->base;
-       next = (java_objectheader *) dst->base;
+       scan = (java_object_t *) dst->base;
+       next = (java_object_t *) dst->base;
 
        GC_LOG( dolog("GC: Copying object from rootset ..."); );
 
index b2da58595d818250c21345cb86343fc681b48b5d..dabcfcf404e3fa5854a5eed5c98b891d227f5895 100644 (file)
@@ -48,7 +48,7 @@ void final_init()
        final_list = list_create(OFFSET(list_final_entry_t, linkage));
 }
 
-void final_register(java_objectheader *o, methodinfo *finalizer)
+void final_register(java_object_t *o, methodinfo *finalizer)
 {
        list_final_entry_t *fe;
 
index b5e47c882c1683c229a4aa6d86c1da09de50efc3..a9c01dd52f38e5c2d90c36700e2ae9fc00995ba1 100644 (file)
@@ -53,7 +53,7 @@ typedef struct list_final_entry_t list_final_entry_t;
 struct list_final_entry_t {
        listnode_t         linkage;
        u4                 type;
-       java_objectheader *o;
+       java_object_t     *o;
        methodinfo        *finalizer;
 };
 
@@ -61,7 +61,7 @@ struct list_final_entry_t {
 /* Prototypes *****************************************************************/
 
 void final_init();
-void final_register(java_objectheader *o, methodinfo *finalizer);
+void final_register(java_object_t *o, methodinfo *finalizer);
 void final_invoke();
 void final_set_all_reclaimable();
 
index 3d1aa8a3068bd9441a08da81a972402f6f0adbe3..749e15e377c958c9996c07edc75497317f44c762 100644 (file)
@@ -58,7 +58,7 @@ bool gc_notify_finalizer;
 list_t *gc_reflist;
 
 #if defined(ENABLE_THREADS)
-java_objectheader *gc_global_lock;
+java_object_t *gc_global_lock;
 #endif
 
 #if !defined(ENABLE_THREADS)
@@ -93,7 +93,7 @@ void gc_init(u4 heapmaxsize, u4 heapstartsize)
 
 #if defined(ENABLE_THREADS)
        /* create global gc lock object */
-       gc_global_lock = NEW(java_objectheader);
+       gc_global_lock = NEW(java_object_t);
        lock_init_object_lock(gc_global_lock);
 #endif
 
@@ -119,7 +119,7 @@ void gc_init(u4 heapmaxsize, u4 heapstartsize)
 
 *******************************************************************************/
 
-void gc_reference_register(java_objectheader **ref)
+void gc_reference_register(java_object_t **ref)
 {
        list_gcref_entry_t *re;
 
@@ -145,7 +145,7 @@ void gc_reference_register(java_objectheader **ref)
 }
 
 
-void gc_reference_unregister(java_objectheader **ref)
+void gc_reference_unregister(java_object_t **ref)
 {
        vm_abort("gc_reference_unregister: IMPLEMENT ME!");
 }
index 2a0e2d6d489dd3c5631e21f12edaacd203f90f57..ee8ac829f614ceddf143cabbe9fc997c525d2236 100644 (file)
@@ -124,8 +124,8 @@ extern list_t *gc_reflist;
 typedef struct list_gcref_entry_t list_gcref_entry_t;
 
 struct list_gcref_entry_t {
-       listnode_t          linkage;
-       java_objectheader **ref;
+       listnode_t      linkage;
+       java_object_t **ref;
 };
 
 
index 3ee5e26f0f8104672cb85a44f6386c5d2b0e4f6e..2b73ccc5c1f9135b224fba07f53a6e5bd8488352 100644 (file)
@@ -54,7 +54,7 @@ regioninfo_t *heap_region_sys;
 regioninfo_t *heap_region_main;
 
 
-void heap_init_objectheader(java_objectheader *o, u4 bytelength)
+void heap_init_objectheader(java_object_t *o, u4 bytelength)
 {
        u4 wordcount;
 
@@ -86,9 +86,9 @@ void heap_init_objectheader(java_objectheader *o, u4 bytelength)
 
 void heap_update_references(rootset_t *rs, regioninfo_t *region, u4 offset)
 {
-       java_objectheader  *o;
-       java_objectheader  *ref;
-       java_objectheader **refptr;
+       java_object_t  *o;
+       java_object_t  *ref;
+       java_object_t **refptr;
        u1* start;
        u1* end;
        int i;
@@ -202,7 +202,7 @@ void heap_increase_size(rootset_t *rs)
 }
 
 
-s4 heap_get_hashcode(java_objectheader *o)
+s4 heap_get_hashcode(java_object_t *o)
 {
        s4 hashcode;
 
@@ -230,13 +230,13 @@ s4 heap_get_hashcode(java_objectheader *o)
 }
 
 
-static java_objectheader *heap_alloc_intern(u4 bytelength, regioninfo_t *region, bool collect)
+static java_object_t *heap_alloc_intern(u4 bytelength, regioninfo_t *region, bool collect)
 {
-       java_objectheader *p;
+       java_object_t *p;
 
        /* only a quick sanity check */
        GC_ASSERT(region);
-       GC_ASSERT(bytelength >= sizeof(java_objectheader));
+       GC_ASSERT(bytelength >= sizeof(java_object_t));
 
        /* align objects in memory */
        bytelength = GC_ALIGN(bytelength, GC_ALIGN_SIZE);
@@ -262,7 +262,7 @@ static java_objectheader *heap_alloc_intern(u4 bytelength, regioninfo_t *region,
        }
 
        /* allocate the object in this region */
-       p = (java_objectheader *) region->ptr;
+       p = (java_object_t *) region->ptr;
        region->ptr += bytelength;
        region->free -= bytelength;
 
@@ -288,7 +288,7 @@ static java_objectheader *heap_alloc_intern(u4 bytelength, regioninfo_t *region,
 
 void *heap_alloc(u4 size, u4 references, methodinfo *finalizer, bool collect)
 {
-       java_objectheader *p;
+       java_object_t *p;
 #if defined(ENABLE_RT_TIMING)
        struct timespec time_start, time_end;
 #endif
@@ -322,7 +322,7 @@ void *heap_alloc(u4 size, u4 references, methodinfo *finalizer, bool collect)
 
 void *heap_alloc_uncollectable(u4 size)
 {
-       java_objectheader *p;
+       java_object_t *p;
 
        /* loader.c does this a lot for classes with fieldscount equal zero */
        if (size == 0)
@@ -362,7 +362,7 @@ void heap_println_usage()
 
 
 #if !defined(NDEBUG)
-void heap_print_object_flags(java_objectheader *o)
+void heap_print_object_flags(java_object_t *o)
 {
        printf("0x%02x [%s%s%s%s]",
                GC_GET_SIZE(o),
@@ -375,7 +375,7 @@ void heap_print_object_flags(java_objectheader *o)
 
 
 #if !defined(NDEBUG)
-void heap_print_object(java_objectheader *o)
+void heap_print_object(java_object_t *o)
 {
        java_arrayheader  *a;
        classinfo         *c;
@@ -453,8 +453,8 @@ void heap_print_object(java_objectheader *o)
 #if !defined(NDEBUG)
 void heap_dump_region(regioninfo_t *region, bool marked_only)
 {
-       java_objectheader *o;
-       u4                 o_size;
+       java_object_t *o;
+       u4             o_size;
 
        /* some basic sanity checks */
        GC_ASSERT(region->base <= region->ptr);
@@ -462,7 +462,7 @@ void heap_dump_region(regioninfo_t *region, bool marked_only)
        printf("Heap-Dump:\n");
 
        /* walk the region in a linear style */
-       o = (java_objectheader *) region->base;
+       o = (java_object_t *) region->base;
        while (o < region->ptr) {
 
                if (!marked_only || GC_IS_MARKED(o)) {
@@ -484,7 +484,7 @@ void heap_dump_region(regioninfo_t *region, bool marked_only)
 #endif
 
 
-s4 get_object_size(java_objectheader *o)
+s4 get_object_size(java_object_t *o)
 {
        java_arrayheader *a;
        classinfo        *c;
index df46c077dce8b705f29303be877add274ba51026..3a7b42436f9967fdf457281d8af8f74fc1d4775b 100644 (file)
@@ -34,7 +34,7 @@
 
 #include "gc.h"
 #include "region.h"
-#include "vmcore/primitive.h" /* needed for ARRAYTYPE_OBJECT */
+#include "vm/primitive.h" /* needed for ARRAYTYPE_OBJECT */
 
 
 #define GC_SIZE_DUMMY 0xff
@@ -54,11 +54,11 @@ extern regioninfo_t *heap_region_sys;
 extern regioninfo_t *heap_region_main;
 
 
-s4 get_object_size(java_objectheader *o);
+s4 get_object_size(java_object_t *o);
 
 #if !defined(NDEBUG)
 void heap_println_usage();
-void heap_print_object(java_objectheader *o);
+void heap_print_object(java_object_t *o);
 void heap_dump_region(regioninfo_t *region, bool marked_only);
 #endif
 
@@ -77,7 +77,7 @@ void heap_dump_region(regioninfo_t *region, bool marked_only);
                        for (i = 0; i < a->header.size; i++) { \
                                \
                                refptr = &( a->data[i] ); \
-                               ref = (java_objectheader *) (a->data[i]); \
+                               ref = (java_object_t *) (a->data[i]); \
                                \
                                code; \
                        } \
@@ -99,7 +99,7 @@ void heap_dump_region(regioninfo_t *region, bool marked_only);
                                if (!IS_ADR_TYPE(f->type) || (f->flags & ACC_STATIC)) \
                                        continue; \
                                \
-                               refptr = (java_objectheader **) ((s1 *) o + f->offset); \
+                               refptr = (java_object_t **) ((s1 *) o + f->offset); \
                                ref = *( refptr ); \
                                \
                                code; \
index 1703d6a4f909c4d4c993a50a5fd28fad37c95ea9..39cc14a6f003e9367642d7e27314fbab28d747d2 100644 (file)
 
 *******************************************************************************/
 
-void mark_recursive(java_objectheader *o)
+void mark_recursive(java_object_t *o)
 {
-       vftbl_t           *t;
-       classinfo         *c;
-       fieldinfo         *f;
-       java_objectarray  *oa;
-       arraydescriptor   *desc;
-       java_objectheader *ref;
+       vftbl_t          *t;
+       classinfo        *c;
+       fieldinfo        *f;
+       java_objectarray *oa;
+       arraydescriptor  *desc;
+       java_object_t    *ref;
        void *start, *end;
        int i;
 
@@ -112,7 +112,7 @@ void mark_recursive(java_objectheader *o)
                for (i = 0; i < oa->header.size; i++) {
 
                        /* load the reference value */
-                       ref = (java_objectheader *) (oa->data[i]);
+                       ref = (java_object_t *) (oa->data[i]);
 
                        /* check for outside or null pointers */
                        if (!POINTS_INTO(ref, start, end))
@@ -142,7 +142,7 @@ void mark_recursive(java_objectheader *o)
                                continue;
 
                        /* load the reference value */
-                       ref = *( (java_objectheader **) ((s1 *) o + f->offset) );
+                       ref = *( (java_object_t **) ((s1 *) o + f->offset) );
 
                        /* check for outside or null pointers */
                        if (!POINTS_INTO(ref, start, end))
@@ -178,9 +178,9 @@ void mark_recursive(java_objectheader *o)
 
 void mark_classes(void *start, void *end)
 {
-       java_objectheader *ref;
-       classinfo         *c;
-       fieldinfo         *f;
+       java_object_t *ref;
+       classinfo     *c;
+       fieldinfo     *f;
        void *sys_start, *sys_end;
        int i;
 
@@ -202,7 +202,7 @@ void mark_classes(void *start, void *end)
                                continue;
 
                        /* load the reference */
-                       ref = (java_objectheader *) (f->value.a);
+                       ref = (java_object_t *) (f->value);
 
                        /* check for outside or null pointers */
                        if (!POINTS_INTO(ref, start, end))
@@ -231,11 +231,11 @@ void mark_classes(void *start, void *end)
 
 void mark_me(rootset_t *rs)
 {
-       java_objectheader *ref;
+       java_object_t      *ref;
 #if defined(GCCONF_FINALIZER)
-       list_final_entry_t       *fe;
+       list_final_entry_t *fe;
 #endif
-       u4                 f_type;
+       u4                  f_type;
        void *start, *end;
        int i;
 
index 28a34c3b981ef28b39e5e08ca8ad671842519f88..318ff33fd7e169a2b6aa98b3e11f2566bc5960bc 100644 (file)
@@ -64,7 +64,7 @@ void *region_create(regioninfo_t *region, u4 size)
 
 #if defined(ENABLE_THREADS)
        /* initiate the header for locking */
-       lock_init_object_lock((java_objectheader *) region);
+       lock_init_object_lock((java_object_t *) region);
 #endif
 
 #if defined(ENABLE_MEMCHECK)
index c850a4f7ab4e7f4b98d470d3f5d90528540f4378..47bfc3334846e2a0d1f21a92c7e348998c552a43 100644 (file)
@@ -45,7 +45,7 @@ typedef struct regioninfo_t regioninfo_t;
 
 struct regioninfo_t {
 #if defined(ENABLE_THREADS)
-       java_objectheader header; /* needed for locking */
+       java_object_t header; /* needed for locking */
 #endif
        u1 *base;     /* pointer to the start of this region */
        u1 *end;      /* pointer to the end of this region */
index d2770704d44a77d5c4e59ed10b3bdf517fbddff1..58cfbbee2a6440f881a9d0ae5a26dc565909803a 100644 (file)
@@ -176,15 +176,15 @@ static rootset_t *rootset_from_classes(rootset_t *rs)
                                continue;
 
                        /* check for outside or null pointers */
-                       if (f->value.a == NULL)
+                       if (f->value->a == NULL)
                                continue;
 
-                       GC_LOG2( printf("Found Static Field Reference: %p\n", (void *) f->value.a);
+                       GC_LOG2( printf("Found Static Field Reference: %p\n", (void *) f->value->a);
                                        printf("\tfrom field: "); field_print(f); printf("\n");
-                                       printf("\tto object : "); heap_print_object(f->value.a); printf("\n"); );
+                                       printf("\tto object : "); heap_print_object(f->value->a); printf("\n"); );
 
                        /* add this static field reference to the root set */
-                       ROOTSET_ADD(&( f->value.a ), true, REFTYPE_CLASSREF);
+                       ROOTSET_ADD(f->value, true, REFTYPE_CLASSREF);
 
                }
 
@@ -268,7 +268,7 @@ static rootset_t *rootset_from_thread(threadobject *thread, rootset_t *rs)
                        GC_LOG2( printf("Found Reference (Java Local): %p\n", (void *) sf->javalocals[i].a); );
 
                        /* add this reference to the root set */
-                       ROOTSET_ADD((java_objectheader **) &( sf->javalocals[i] ), true, REFTYPE_STACK);
+                       ROOTSET_ADD((java_object_t **) &( sf->javalocals[i] ), true, REFTYPE_STACK);
 
                }
 
@@ -281,7 +281,7 @@ static rootset_t *rootset_from_thread(threadobject *thread, rootset_t *rs)
                        GC_LOG2( printf("Found Reference (Java Stack): %p\n", (void *) sf->javastack[i].a); );
 
                        /* add this reference to the root set */
-                       ROOTSET_ADD((java_objectheader **) &( sf->javastack[i] ), true, REFTYPE_STACK);
+                       ROOTSET_ADD((java_object_t **) &( sf->javastack[i] ), true, REFTYPE_STACK);
 
                }
 
@@ -290,7 +290,7 @@ static rootset_t *rootset_from_thread(threadobject *thread, rootset_t *rs)
                        GC_LOG( printf("Found Reference (Sync Slot): %p\n", (void *) sf->syncslots[i].a); );
 
                        /* add this reference to the root set */
-                       ROOTSET_ADD((java_objectheader **) &( sf->syncslots[i] ), true, REFTYPE_STACK);
+                       ROOTSET_ADD((java_object_t **) &( sf->syncslots[i] ), true, REFTYPE_STACK);
 
                }
        }
@@ -399,7 +399,7 @@ static const char* ref_type_names[] = {
 
 void rootset_print(rootset_t *rs)
 {
-       java_objectheader *o;
+       java_object_t *o;
        int i;
 
        /* walk through all rootsets in the chain */
index 9c4bb42a150e0a918f3d292d52309fe40f9cae6d..8f3a031f7105400e967a19717b82eb82217bde4f 100644 (file)
@@ -64,7 +64,7 @@ typedef struct rootset_t rootset_t;
    the reference */
 
 typedef struct rootset_entry_t {
-       java_objectheader **ref;            /* a pointer to the actual reference */
+       java_object_t     **ref;            /* a pointer to the actual reference */
        bool                marks;          /* indicates if a reference marks */
 #if !defined(NDEBUG)
        s4                  type;
index 8a264f46792417f0ac9592983e08f2635c0293ff..7909778794fda85b831cd913796c67a957fd527a 100644 (file)
@@ -22,7 +22,7 @@
    Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
    02110-1301, USA.
 
-   $Id: gc-common.h 7920 2007-05-20 23:02:43Z michi $
+   $Id: gc-common.h 8302 2007-08-13 13:50:50Z michi $
 
 */
 
@@ -47,11 +47,11 @@ void *heap_alloc(u4 size, u4 references, methodinfo *finalizer, bool collect);
 void  heap_free(void *p);
 
 #if defined(ENABLE_GC_CACAO)
-void  heap_init_objectheader(java_objectheader *o, u4 size);
-s4    heap_get_hashcode(java_objectheader *o);
+void  heap_init_objectheader(java_object_t *o, u4 size);
+s4    heap_get_hashcode(java_object_t *o);
 
-void  gc_reference_register(java_objectheader **ref);
-void  gc_reference_unregister(java_objectheader **ref);
+void  gc_reference_register(java_object_t **ref);
+void  gc_reference_unregister(java_object_t **ref);
 #endif
 
 void  gc_call(void);