mirror of
https://gcc.gnu.org/git/gcc.git
synced 2024-12-04 01:04:26 +08:00
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
This commit is contained in:
parent
ea6431202d
commit
f0913ab8d6
@ -1,3 +1,11 @@
|
|||||||
|
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>
|
2006-04-28 Bryce McKinlay <mckinlay@redhat.com>
|
||||||
|
|
||||||
* link.cc (_Jv_Linker::resolve_pool_entry): Don't pass vtable_index
|
* 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.
|
// Ignore pointers that do not point to the start of an object.
|
||||||
GC_all_interior_pointers = 0;
|
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.
|
// Tell the collector to ask us before scanning DSOs.
|
||||||
GC_register_has_static_roots_callback (_Jv_GC_has_static_roots);
|
GC_register_has_static_roots_callback (_Jv_GC_has_static_roots);
|
||||||
#endif
|
#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
|
// We keep a store of the filenames of DSOs that need to be
|
||||||
// conservatively scanned by the garbage collector. During collection
|
// conservatively scanned by the garbage collector. During collection
|
||||||
@ -661,7 +661,7 @@ _Jv_GC_has_static_roots (const char *filename, void *, size_t)
|
|||||||
void
|
void
|
||||||
_Jv_RegisterLibForGc (const void *p __attribute__ ((__unused__)))
|
_Jv_RegisterLibForGc (const void *p __attribute__ ((__unused__)))
|
||||||
{
|
{
|
||||||
#ifdef HAVE_DLFCN_H
|
#if defined (HAVE_DLFCN_H) && defined (HAVE_DLADDR)
|
||||||
Dl_info info;
|
Dl_info info;
|
||||||
|
|
||||||
if (dladdr (const_cast<void *>(p), &info) != 0)
|
if (dladdr (const_cast<void *>(p), &info) != 0)
|
||||||
|
Loading…
Reference in New Issue
Block a user