summary refs log tree commit diff
path: root/sysdeps/generic/unwind-dw2-fde.c
diff options
context:
space:
mode:
Diffstat (limited to 'sysdeps/generic/unwind-dw2-fde.c')
-rw-r--r--sysdeps/generic/unwind-dw2-fde.c22
1 files changed, 16 insertions, 6 deletions
diff --git a/sysdeps/generic/unwind-dw2-fde.c b/sysdeps/generic/unwind-dw2-fde.c
index 3d1931868f..6c51c6f730 100644
--- a/sysdeps/generic/unwind-dw2-fde.c
+++ b/sysdeps/generic/unwind-dw2-fde.c
@@ -68,6 +68,13 @@ __libc_lock_define_initialized (static, object_mutex)
 #define __gthread_mutex_lock(m) __libc_lock_lock (*(m))
 #define __gthread_mutex_unlock(m) __libc_lock_unlock (*(m))
 
+void __register_frame_info_bases_internal (void *begin, struct object *ob,
+					   void *tbase, void *dbase);
+void __register_frame_info_table_bases_internal (void *begin,
+						 struct object *ob,
+						 void *tbase, void *dbase);
+void *__deregister_frame_info_bases_internal (void *begin);
+
 #else
 
 #ifdef __GTHREAD_MUTEX_INIT
@@ -120,11 +127,12 @@ __register_frame_info_bases (void *begin, struct object *ob,
 
   __gthread_mutex_unlock (&object_mutex);
 }
+INTDEF(__register_frame_info_bases)
 
 void
 __register_frame_info (void *begin, struct object *ob)
 {
-  __register_frame_info_bases (begin, ob, 0, 0);
+  INTUSE(__register_frame_info_bases) (begin, ob, 0, 0);
 }
 
 void
@@ -137,7 +145,7 @@ __register_frame (void *begin)
     return;
 
   ob = (struct object *) malloc (sizeof (struct object));
-  __register_frame_info (begin, ob);
+  INTUSE(__register_frame_info_bases) (begin, ob, 0, 0);
 }
 
 /* Similar, but BEGIN is actually a pointer to a table of unwind entries
@@ -164,18 +172,19 @@ __register_frame_info_table_bases (void *begin, struct object *ob,
 
   __gthread_mutex_unlock (&object_mutex);
 }
+INTDEF(__register_frame_info_table_bases)
 
 void
 __register_frame_info_table (void *begin, struct object *ob)
 {
-  __register_frame_info_table_bases (begin, ob, 0, 0);
+  INTUSE(__register_frame_info_table_bases) (begin, ob, 0, 0);
 }
 
 void
 __register_frame_table (void *begin)
 {
   struct object *ob = (struct object *) malloc (sizeof (struct object));
-  __register_frame_info_table (begin, ob);
+  INTUSE(__register_frame_info_table_bases) (begin, ob, 0, 0);
 }
 
 /* Called from crtbegin.o to deregister the unwind info for an object.  */
@@ -239,11 +248,12 @@ __deregister_frame_info_bases (void *begin)
   __gthread_mutex_unlock (&object_mutex);
   return (void *) ob;
 }
+INTDEF(__deregister_frame_info_bases)
 
 void *
 __deregister_frame_info (void *begin)
 {
-  return __deregister_frame_info_bases (begin);
+  return INTUSE(__deregister_frame_info_bases) (begin);
 }
 
 void
@@ -251,7 +261,7 @@ __deregister_frame (void *begin)
 {
   /* If .eh_frame is empty, we haven't registered.  */
   if (*(uword *)begin != 0)
-    free (__deregister_frame_info (begin));
+    free (INTUSE(__deregister_frame_info_bases) (begin));
 }