Commit f0913ab8 by Roger Sayle Committed by Roger Sayle

boehm.cc (_Jv_InitGC): Check both HAVE_DLFCN_H and HAVE_DLADDR before calling...


	* boehm.cc (_Jv_InitGC): Check both HAVE_DLFCN_H and HAVE_DLADDR
	before calling GC_register_has_static_roots_callback.
	(_Jv_RegisterLibForGc): Likewise, test for both HAVE_DLFCN_H and
	HAVE_DLADDR before calling dladdr.


Co-Authored-By: Andrew Haley <aph@redhat.com>

From-SVN: r113417
parent ea643120
2006-05-01 Roger Sayle <roger@eyesopen.com>
Andrew Haley <aph@redhat.com>
* boehm.cc (_Jv_InitGC): Check both HAVE_DLFCN_H and HAVE_DLADDR
before calling GC_register_has_static_roots_callback.
(_Jv_RegisterLibForGc): Likewise, test for both HAVE_DLFCN_H and
HAVE_DLADDR before calling dladdr.
2006-04-28 Bryce McKinlay <mckinlay@redhat.com>
* link.cc (_Jv_Linker::resolve_pool_entry): Don't pass vtable_index
......
......@@ -486,7 +486,7 @@ _Jv_InitGC (void)
// Ignore pointers that do not point to the start of an object.
GC_all_interior_pointers = 0;
#ifdef HAVE_DLFCN_H
#if defined (HAVE_DLFCN_H) && defined (HAVE_DLADDR)
// Tell the collector to ask us before scanning DSOs.
GC_register_has_static_roots_callback (_Jv_GC_has_static_roots);
#endif
......@@ -581,7 +581,7 @@ _Jv_GCCanReclaimSoftReference (jobject)
#ifdef HAVE_DLFCN_H
#if defined (HAVE_DLFCN_H) && defined (HAVE_DLADDR)
// We keep a store of the filenames of DSOs that need to be
// conservatively scanned by the garbage collector. During collection
......@@ -661,7 +661,7 @@ _Jv_GC_has_static_roots (const char *filename, void *, size_t)
void
_Jv_RegisterLibForGc (const void *p __attribute__ ((__unused__)))
{
#ifdef HAVE_DLFCN_H
#if defined (HAVE_DLFCN_H) && defined (HAVE_DLADDR)
Dl_info info;
if (dladdr (const_cast<void *>(p), &info) != 0)
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment