diff options
author | Kai Tietz <ktietz@redhat.com> | 2013-05-08 20:33:52 +0200 |
---|---|---|
committer | Kai Tietz <ktietz@gcc.gnu.org> | 2013-05-08 20:33:52 +0200 |
commit | 492a80292b049552c5f54d22e9edac40f8802bd5 (patch) | |
tree | fc68494313c0c9070db620e20ca6896315464e59 | |
parent | 0b013847f8eb2bf2b6a32fc08f489110cf1353f8 (diff) | |
download | gcc-492a80292b049552c5f54d22e9edac40f8802bd5.zip gcc-492a80292b049552c5f54d22e9edac40f8802bd5.tar.gz gcc-492a80292b049552c5f54d22e9edac40f8802bd5.tar.bz2 |
cygming-crtbegin.c (__register_frame_info): Make weak.
* config/i386/cygming-crtbegin.c (__register_frame_info): Make weak.
(__deregister_frame_info): Likewise.
From-SVN: r198719
-rw-r--r-- | libgcc/ChangeLog | 5 | ||||
-rw-r--r-- | libgcc/config/i386/cygming-crtbegin.c | 30 |
2 files changed, 31 insertions, 4 deletions
diff --git a/libgcc/ChangeLog b/libgcc/ChangeLog index c874a84..a04c4ff 100644 --- a/libgcc/ChangeLog +++ b/libgcc/ChangeLog @@ -1,3 +1,8 @@ +2013-05-08 Kai Tietz <ktietz@redhat.com> + + * config/i386/cygming-crtbegin.c (__register_frame_info): Make weak. + (__deregister_frame_info): Likewise. + 2013-05-06 Thomas Schwinge <thomas@codesourcery.com> * fp-bit.c (unpack_d, pack_d): Properly preserve and restore a diff --git a/libgcc/config/i386/cygming-crtbegin.c b/libgcc/config/i386/cygming-crtbegin.c index 6a513cb..c341787 100644 --- a/libgcc/config/i386/cygming-crtbegin.c +++ b/libgcc/config/i386/cygming-crtbegin.c @@ -46,14 +46,36 @@ see the files COPYING3 and COPYING.RUNTIME respectively. If not, see #define LIBGCJ_SONAME "libgcj_s.dll" #endif - +#if DWARF2_UNWIND_INFO /* Make the declarations weak. This is critical for _Jv_RegisterClasses because it lives in libgcj.a */ -extern void __register_frame_info (const void *, struct object *) +extern void __register_frame_info (__attribute__((unused)) const void *, + __attribute__((unused)) struct object *) TARGET_ATTRIBUTE_WEAK; -extern void *__deregister_frame_info (const void *) +extern void *__deregister_frame_info (__attribute__((unused)) const void *) TARGET_ATTRIBUTE_WEAK; -extern void _Jv_RegisterClasses (const void *) TARGET_ATTRIBUTE_WEAK; +TARGET_ATTRIBUTE_WEAK void +__register_frame_info (__attribute__((unused)) const void *p, + __attribute__((unused)) struct object *o) +{ +} + +TARGET_ATTRIBUTE_WEAK void * +__deregister_frame_info (__attribute__((unused)) const void *p) +{ + return (void*) 0; +} +#endif /* DWARF2_UNWIND_INFO */ + +#if TARGET_USE_JCR_SECTION +extern void _Jv_RegisterClasses (__attribute__((unused)) const void *) + TARGET_ATTRIBUTE_WEAK; + +TARGET_ATTRIBUTE_WEAK void +_Jv_RegisterClasses (__attribute__((unused)) const void *p) +{ +} +#endif /* TARGET_USE_JCR_SECTION */ #if defined(HAVE_LD_RO_RW_SECTION_MIXING) # define EH_FRAME_SECTION_CONST const |