diff options
author | hboehm <hboehm@138bc75d-0d04-0410-961f-82ee72b054a4> | 2004-08-28 00:45:56 +0000 |
---|---|---|
committer | hboehm <hboehm@138bc75d-0d04-0410-961f-82ee72b054a4> | 2004-08-28 00:45:56 +0000 |
commit | 0a53b20c990bb9b0afd292d0c9fa2eb205dd1549 (patch) | |
tree | 3ffbf3d3e391be4b78a46bc6acfcb0fbb12af641 /libjava/include | |
parent | 83488a15eb0da6e008cbe431087635239c52f222 (diff) | |
download | gcc-0a53b20c990bb9b0afd292d0c9fa2eb205dd1549.tar.gz |
* configure.ac: Handle --enable-gc-debug.
* configure: Regenerate.
* include/config.h.in (LIBGCJ_GC_DEBUG): Add.
* boehm.cc: Include gc_mark.h, javaxfc.h, but no GC private files.
Rearrange include file order.
(GC_DEBUG): Set if LIBGCJ_GC_DEBUG is set.
(GC_finalize_all, GC_debug_generic_malloc): Don't declare.
(disable_gc_mutex): Delete along with all references.
(_Jv_MarkObj, _Jv_MarkArray): Use public types,
adjust for debug header size.
(_Jv_AllocObj, _Jv_allocPtrFreeObj): Define out of line for
debug case.
(_Jv_AllocArray): Declare min_heap_addr only if needed.
(gcj_describe_type_fn): New.
(_Jv_InitGC): Use GC_new_free_list, GC_new_proc, and GC_new_kind.
Register gcj_describe_type_fn.
* include/boehm-gc.h:
(_Jv_AllocObj, _Jv_allocPtrFreeObj):
Don't define, but declare, for debug case.
* java/lang/natObject.cc:
(GC_DEBUG): Define if LIBGCJ_GC_DEBUG is set.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@86686 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'libjava/include')
-rw-r--r-- | libjava/include/boehm-gc.h | 12 | ||||
-rw-r--r-- | libjava/include/config.h.in | 3 |
2 files changed, 15 insertions, 0 deletions
diff --git a/libjava/include/boehm-gc.h b/libjava/include/boehm-gc.h index 4e0065f5bb2..fa2623b37e1 100644 --- a/libjava/include/boehm-gc.h +++ b/libjava/include/boehm-gc.h @@ -35,6 +35,8 @@ extern "C" void * GC_local_gcj_malloc(size_t, void *); extern "C" void * GC_local_malloc_atomic(size_t); #endif +#ifndef LIBGCJ_GC_DEBUG + inline void * _Jv_AllocObj (jsize size, jclass klass) { @@ -67,6 +69,16 @@ _Jv_AllocPtrFreeObj (jsize size, jclass klass) return obj; } +#else /* LIBGCJ_GC_DEBUG */ + +void * +_Jv_AllocObj (jsize size, jclass klass); + +void * +_Jv_AllocPtrFreeObj (jsize size, jclass klass); + +#endif /* LIBGCJ_GC_DEBUG */ + // _Jv_AllocBytes (jsize size) should go here, too. But clients don't // usually include this header. diff --git a/libjava/include/config.h.in b/libjava/include/config.h.in index bb52dbcba36..0429517ac1e 100644 --- a/libjava/include/config.h.in +++ b/libjava/include/config.h.in @@ -366,6 +366,9 @@ /* Indicate that linker is not able to 8-byte align static data */ #undef JV_LINKER_CANNOT_8BYTE_ALIGN_STATICS +/* Define if we want to use debug calls into the garbage collector. */ +#undef LIBGCJ_GC_DEBUG + /* Define if using POSIX threads on Linux. */ #undef LINUX_THREADS |