diff options
author | Tom Tromey <tromey@cygnus.com> | 1999-11-02 00:12:10 +0000 |
---|---|---|
committer | Tom Tromey <tromey@gcc.gnu.org> | 1999-11-02 00:12:10 +0000 |
commit | e40217a763572e59dc870abfee044b762cdd6740 (patch) | |
tree | 5af320ca89be31cc40ce1c2bd128991ee310abce | |
parent | 3d43c0742f8f99e615eca4d3e19b503665bf377e (diff) | |
download | gcc-e40217a763572e59dc870abfee044b762cdd6740.zip gcc-e40217a763572e59dc870abfee044b762cdd6740.tar.gz gcc-e40217a763572e59dc870abfee044b762cdd6740.tar.bz2 |
boehm.cc (_Jv_InitGC): Set GC_java_finalization.
* boehm.cc (_Jv_InitGC): Set GC_java_finalization.
(sum_blocks): Removed.
(_Jv_GCFreeMemory): Use GC_get_free_bytes.
From-SVN: r30335
-rw-r--r-- | libjava/ChangeLog | 6 | ||||
-rw-r--r-- | libjava/boehm.cc | 22 |
2 files changed, 9 insertions, 19 deletions
diff --git a/libjava/ChangeLog b/libjava/ChangeLog index fb71da3..cad8360 100644 --- a/libjava/ChangeLog +++ b/libjava/ChangeLog @@ -1,3 +1,9 @@ +1999-11-01 Tom Tromey <tromey@cygnus.com> + + * boehm.cc (_Jv_InitGC): Set GC_java_finalization. + (sum_blocks): Removed. + (_Jv_GCFreeMemory): Use GC_get_free_bytes. + 1999-11-01 Bryce McKinlay <bryce@albatross.co.nz> * java/io/PrintStream (PrintStream): Fix illegal usage of "this" diff --git a/libjava/boehm.cc b/libjava/boehm.cc index fb11a11..39fc9af 100644 --- a/libjava/boehm.cc +++ b/libjava/boehm.cc @@ -368,28 +368,10 @@ _Jv_GCTotalMemory (void) return GC_get_heap_size (); } -/* Sum size of each hblk. */ -static void -sum_blocks (struct hblk *h, word arg) -{ - long *sump = (long *) arg; - /* This evil computation is from boehm-gc/checksums.c. */ - hdr *hhdr = HDR (h); - int bytes = WORDS_TO_BYTES (hhdr->hb_sz); - bytes += HDR_BYTES + HBLKSIZE - 1; - bytes &= ~ (HBLKSIZE - 1); - *sump += bytes; -} - -/* This turns out to be expensive to implement. For now, we don't - care. We could make it less expensive, perhaps, but that would - require some changes to the collector. */ long _Jv_GCFreeMemory (void) { - long sum = 0; - GC_apply_to_all_blocks (sum_blocks, &sum); - return sum; + return GC_get_free_bytes (); } void @@ -423,6 +405,8 @@ _Jv_InitGC (void) } initialized = 1; + GC_java_finalization = 1; + // Set up state for marking and allocation of Java objects. obj_free_list = (ptr_t *) GC_generic_malloc_inner ((MAXOBJSZ + 1) * sizeof (ptr_t), |