cygming-crtbegin.c (__register_frame_info): Make weak.
authorKai Tietz <ktietz@redhat.com>
Wed, 8 May 2013 18:33:52 +0000 (20:33 +0200)
committerKai Tietz <ktietz@gcc.gnu.org>
Wed, 8 May 2013 18:33:52 +0000 (20:33 +0200)
* config/i386/cygming-crtbegin.c (__register_frame_info): Make weak.
(__deregister_frame_info): Likewise.

From-SVN: r198719

libgcc/ChangeLog
libgcc/config/i386/cygming-crtbegin.c

index c874a84..a04c4ff 100644 (file)
@@ -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
index 6a513cb..c341787 100644 (file)
@@ -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