This is the mail archive of the
libc-alpha@sourceware.org
mailing list for the glibc project.
Don't use INTDEF/INTUSE in unwind-dw2-fde.c (bug 14132)
- From: "Joseph S. Myers" <joseph at codesourcery dot com>
- To: <libc-alpha at sourceware dot org>
- Date: Wed, 22 Oct 2014 23:57:20 +0000
- Subject: Don't use INTDEF/INTUSE in unwind-dw2-fde.c (bug 14132)
- Authentication-results: sourceware.org; auth=none
Continuing the removal of the obsolete INTDEF / INTUSE mechanism, this
patch replaces its use in unwind-dw2-fde.c with hidden_def and
hidden_proto.
Tested for x86. This patch does result in code generation differences
(for some reason GCC decides to partition __register_frame_info_bases
after the patch).
2014-10-22 Joseph Myers <joseph@codesourcery.com>
[BZ #14132]
* sysdeps/generic/unwind-dw2-fde.c
(__register_frame_info_bases_internal): Do not declare.
(__register_frame_info_table_bases_internal): Likewise.
(__deregister_frame_info_bases_internal): Likewise.
(__register_frame_info_bases): Declare and use hidden_proto before
definition. Use hidden_def instead of INTDEF.
(__register_frame_info_table_bases): Likewise.
(__deregister_frame_info_bases): Likewise.
(__register_frame_info): Do not use INTUSE.
(__register_frame): Likewise.
(__register_frame_info_table): Likewise.
(__register_frame_table): Likewise.
(__deregister_frame_info): Likewise.
(__deregister_frame): Likewise.
diff --git a/sysdeps/generic/unwind-dw2-fde.c b/sysdeps/generic/unwind-dw2-fde.c
index ba003a9..5be0816 100644
--- a/sysdeps/generic/unwind-dw2-fde.c
+++ b/sysdeps/generic/unwind-dw2-fde.c
@@ -60,12 +60,15 @@ __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);
+void __register_frame_info_bases (void *begin, struct object *ob,
+ void *tbase, void *dbase);
+hidden_proto (__register_frame_info_bases)
+void __register_frame_info_table_bases (void *begin,
+ struct object *ob,
+ void *tbase, void *dbase);
+hidden_proto (__register_frame_info_table_bases)
+void *__deregister_frame_info_bases (void *begin);
+hidden_proto (__deregister_frame_info_bases)
#else
@@ -122,12 +125,12 @@ __register_frame_info_bases (void *begin, struct object *ob,
__gthread_mutex_unlock (&object_mutex);
}
-INTDEF(__register_frame_info_bases)
+hidden_def (__register_frame_info_bases)
void
__register_frame_info (void *begin, struct object *ob)
{
- INTUSE(__register_frame_info_bases) (begin, ob, 0, 0);
+ __register_frame_info_bases (begin, ob, 0, 0);
}
void
@@ -140,7 +143,7 @@ __register_frame (void *begin)
return;
ob = (struct object *) malloc (sizeof (struct object));
- INTUSE(__register_frame_info_bases) (begin, ob, 0, 0);
+ __register_frame_info_bases (begin, ob, 0, 0);
}
/* Similar, but BEGIN is actually a pointer to a table of unwind entries
@@ -167,19 +170,19 @@ __register_frame_info_table_bases (void *begin, struct object *ob,
__gthread_mutex_unlock (&object_mutex);
}
-INTDEF(__register_frame_info_table_bases)
+hidden_def (__register_frame_info_table_bases)
void
__register_frame_info_table (void *begin, struct object *ob)
{
- INTUSE(__register_frame_info_table_bases) (begin, ob, 0, 0);
+ __register_frame_info_table_bases (begin, ob, 0, 0);
}
void
__register_frame_table (void *begin)
{
struct object *ob = (struct object *) malloc (sizeof (struct object));
- INTUSE(__register_frame_info_table_bases) (begin, ob, 0, 0);
+ __register_frame_info_table_bases (begin, ob, 0, 0);
}
/* Called from crtbegin.o to deregister the unwind info for an object. */
@@ -243,12 +246,12 @@ __deregister_frame_info_bases (void *begin)
__gthread_mutex_unlock (&object_mutex);
return (void *) ob;
}
-INTDEF(__deregister_frame_info_bases)
+hidden_def (__deregister_frame_info_bases)
void *
__deregister_frame_info (void *begin)
{
- return INTUSE(__deregister_frame_info_bases) (begin);
+ return __deregister_frame_info_bases (begin);
}
void
@@ -256,7 +259,7 @@ __deregister_frame (void *begin)
{
/* If .eh_frame is empty, we haven't registered. */
if (*(uword *) begin != 0)
- free (INTUSE(__deregister_frame_info_bases) (begin));
+ free (__deregister_frame_info_bases (begin));
}
--
Joseph S. Myers
joseph@codesourcery.com