libc-symbols.h: remove unused macros

Message ID 20220623183124.1419226-1-maskray@google.com
State Under Review
Delegated to: Adhemerval Zanella Netto
Headers
Series libc-symbols.h: remove unused macros |

Checks

Context Check Description
dj/TryBot-apply_patch success Patch applied to master at the time it was sent
dj/TryBot-32bit success Build for i686

Commit Message

Fangrui Song June 23, 2022, 6:31 p.m. UTC
  Beside weak_hidden_alias/declare_symbol_alias/hidden_data_ver, many
*_hidden_* macros are removed.  If there is a rare need to use one, one
may write something like `#if IS_IN (libm)\nhidden_def (...)\n#endif`
instead.
---
 include/libc-symbols.h | 168 -----------------------------------------
 1 file changed, 168 deletions(-)
  

Comments

Adhemerval Zanella July 4, 2022, 5:41 p.m. UTC | #1
> On 23 Jun 2022, at 15:31, Fangrui Song via Libc-alpha <libc-alpha@sourceware.org> wrote:
> 
> Beside weak_hidden_alias/declare_symbol_alias/hidden_data_ver, many
> *_hidden_* macros are removed.  If there is a rare need to use one, one
> may write something like `#if IS_IN (libm)\nhidden_def (...)\n#endif`
> instead.

LGTM, thanks.

Reviewed-by: Adhemerval Zanella  <adhemerval.zanella@linaro.org>

> ---
> include/libc-symbols.h | 168 -----------------------------------------
> 1 file changed, 168 deletions(-)
> 
> diff --git a/include/libc-symbols.h b/include/libc-symbols.h
> index 4bb3d8c7ba..091a992ec1 100644
> --- a/include/libc-symbols.h
> +++ b/include/libc-symbols.h
> @@ -155,14 +155,6 @@
>   extern __typeof (name) aliasname __attribute__ ((weak, alias (#name))) \
>     __attribute_copy__ (name);
> 
> -/* Same as WEAK_ALIAS, but mark symbol as hidden.  */
> -# define weak_hidden_alias(name, aliasname) \
> -  _weak_hidden_alias (name, aliasname)
> -# define _weak_hidden_alias(name, aliasname) \
> -  extern __typeof (name) aliasname \
> -    __attribute__ ((weak, alias (#name), __visibility__ ("hidden"))) \
> -    __attribute_copy__ (name);
> -
> /* Declare SYMBOL as weak undefined symbol (resolved to 0 if not defined).  */
> # define weak_extern(symbol) _weak_extern (weak symbol)
> # define _weak_extern(expr) _Pragma (#expr)
> @@ -332,14 +324,6 @@ for linking")
>    .type C_SYMBOL_NAME (symbol), %object ASM_LINE_SEP \
>    .size C_SYMBOL_NAME (symbol), s_size ASM_LINE_SEP
> #else /* Not __ASSEMBLER__.  */
> -# define declare_symbol_alias(symbol, original, type, size) \
> -  declare_symbol_alias_1 (symbol, original, type, size)
> -# define declare_symbol_alias_1(symbol, original, type, size) \
> -   asm (".globl " __SYMBOL_PREFIX #symbol \
> -	"\n\t" declare_symbol_alias_1_alias (symbol, original) \
> -	"\n\t.type " __SYMBOL_PREFIX #symbol ", " \
> -	"%" #type \
> -	"\n\t.size " __SYMBOL_PREFIX #symbol ", " #size);
> # ifdef HAVE_ASM_SET_DIRECTIVE
> #  define declare_symbol_alias_1_alias(symbol, original) \
>      ".set " __SYMBOL_PREFIX #symbol ", " __SYMBOL_PREFIX #original
> @@ -552,7 +536,6 @@ for linking")
>     __attribute__((alias (__hidden_asmname (#local))))	\
>     __attribute_copy__ (name)
> #  define hidden_ver(local, name)	__hidden_ver1(local, __GI_##name, name);
> -#  define hidden_data_ver(local, name)	hidden_ver(local, name)
> #  define hidden_def(name)		__hidden_ver1(__GI_##name, name, name);
> #  define hidden_data_def(name)		hidden_def(name)
> #  define hidden_tls_def(name)				\
> @@ -586,7 +569,6 @@ for linking")
> #  define hidden_data_def(name)	strong_data_alias (name, __GI_##name)
> #  define hidden_tls_def(name)	hidden_data_def (name)
> #  define hidden_data_weak(name)	hidden_data_def (name)
> -#  define hidden_data_ver(local, name) strong_data_alias (local, __GI_##name)
> #  define HIDDEN_JUMPTARGET(name) __GI_##name
> # endif
> #else
> @@ -615,7 +597,6 @@ for linking")
> # define hidden_data_weak(name)
> # define hidden_data_def(name)
> # define hidden_tls_def(name)
> -# define hidden_data_ver(local, name)
> # define hidden_nolink(name, lib, version)
> #endif
> 
> @@ -629,7 +610,6 @@ for linking")
> # define libc_hidden_data_def(name) hidden_data_def (name)
> # define libc_hidden_tls_def(name) hidden_tls_def (name)
> # define libc_hidden_data_weak(name) hidden_data_weak (name)
> -# define libc_hidden_data_ver(local, name) hidden_data_ver (local, name)
> #else
> # define libc_hidden_proto(name, attrs...)
> # define libc_hidden_tls_proto(name, attrs...)
> @@ -639,228 +619,83 @@ for linking")
> # define libc_hidden_data_def(name)
> # define libc_hidden_tls_def(name)
> # define libc_hidden_data_weak(name)
> -# define libc_hidden_data_ver(local, name)
> #endif
> 
> #if IS_IN (rtld)
> # define rtld_hidden_proto(name, attrs...) hidden_proto (name, ##attrs)
> -# define rtld_hidden_tls_proto(name, attrs...) hidden_tls_proto (name, ##attrs)
> # define rtld_hidden_def(name) hidden_def (name)
> # define rtld_hidden_weak(name) hidden_weak (name)
> -# define rtld_hidden_ver(local, name) hidden_ver (local, name)
> # define rtld_hidden_data_def(name) hidden_data_def (name)
> -# define rtld_hidden_tls_def(name) hidden_tls_def (name)
> -# define rtld_hidden_data_weak(name) hidden_data_weak (name)
> -# define rtld_hidden_data_ver(local, name) hidden_data_ver (local, name)
> #else
> # define rtld_hidden_proto(name, attrs...)
> -# define rtld_hidden_tls_proto(name, attrs...)
> # define rtld_hidden_def(name)
> # define rtld_hidden_weak(name)
> -# define rtld_hidden_ver(local, name)
> # define rtld_hidden_data_def(name)
> -# define rtld_hidden_tls_def(name)
> -# define rtld_hidden_data_weak(name)
> -# define rtld_hidden_data_ver(local, name)
> #endif
> 
> #if IS_IN (libm)
> # define libm_hidden_proto(name, attrs...) hidden_proto (name, ##attrs)
> -# define libm_hidden_tls_proto(name, attrs...) hidden_tls_proto (name, ##attrs)
> # define libm_hidden_def(name) hidden_def (name)
> # define libm_hidden_weak(name) hidden_weak (name)
> # define libm_hidden_ver(local, name) hidden_ver (local, name)
> -# define libm_hidden_data_def(name) hidden_data_def (name)
> -# define libm_hidden_tls_def(name) hidden_tls_def (name)
> -# define libm_hidden_data_weak(name) hidden_data_weak (name)
> -# define libm_hidden_data_ver(local, name) hidden_data_ver (local, name)
> #else
> # define libm_hidden_proto(name, attrs...)
> -# define libm_hidden_tls_proto(name, attrs...)
> # define libm_hidden_def(name)
> # define libm_hidden_weak(name)
> # define libm_hidden_ver(local, name)
> -# define libm_hidden_data_def(name)
> -# define libm_hidden_tls_def(name)
> -# define libm_hidden_data_weak(name)
> -# define libm_hidden_data_ver(local, name)
> #endif
> 
> #if IS_IN (libmvec)
> -# define libmvec_hidden_proto(name, attrs...) hidden_proto (name, ##attrs)
> -# define libmvec_hidden_tls_proto(name, attrs...) hidden_tls_proto (name, ##attrs)
> # define libmvec_hidden_def(name) hidden_def (name)
> -# define libmvec_hidden_weak(name) hidden_weak (name)
> -# define libmvec_hidden_ver(local, name) hidden_ver (local, name)
> -# define libmvec_hidden_data_def(name) hidden_data_def (name)
> -# define libmvec_hidden_tls_def(name) hidden_tls_def (name)
> -# define libmvec_hidden_data_weak(name) hidden_data_weak (name)
> -# define libmvec_hidden_data_ver(local, name) hidden_data_ver (local, name)
> #else
> -# define libmvec_hidden_proto(name, attrs...)
> -# define libmvec_hidden_tls_proto(name, attrs...)
> # define libmvec_hidden_def(name)
> -# define libmvec_hidden_weak(name)
> -# define libmvec_hidden_ver(local, name)
> -# define libmvec_hidden_data_def(name)
> -# define libmvec_hidden_tls_def(name)
> -# define libmvec_hidden_data_weak(name)
> -# define libmvec_hidden_data_ver(local, name)
> #endif
> 
> #if IS_IN (libresolv)
> # define libresolv_hidden_proto(name, attrs...) hidden_proto (name, ##attrs)
> -# define libresolv_hidden_tls_proto(name, attrs...) \
> -  hidden_tls_proto (name, ##attrs)
> # define libresolv_hidden_def(name) hidden_def (name)
> -# define libresolv_hidden_weak(name) hidden_weak (name)
> -# define libresolv_hidden_ver(local, name) hidden_ver (local, name)
> # define libresolv_hidden_data_def(name) hidden_data_def (name)
> -# define libresolv_hidden_tls_def(name) hidden_tls_def (name)
> -# define libresolv_hidden_data_weak(name) hidden_data_weak (name)
> -# define libresolv_hidden_data_ver(local, name) hidden_data_ver (local, name)
> #else
> # define libresolv_hidden_proto(name, attrs...)
> -# define libresolv_hidden_tls_proto(name, attrs...)
> # define libresolv_hidden_def(name)
> -# define libresolv_hidden_weak(name)
> -# define libresolv_hidden_ver(local, name)
> # define libresolv_hidden_data_def(name)
> -# define libresolv_hidden_tls_def(name)
> -# define libresolv_hidden_data_weak(name)
> -# define libresolv_hidden_data_ver(local, name)
> #endif
> 
> #if IS_IN (libpthread)
> # define libpthread_hidden_proto(name, attrs...) hidden_proto (name, ##attrs)
> -# define libpthread_hidden_tls_proto(name, attrs...) \
> -  hidden_tls_proto (name, ##attrs)
> # define libpthread_hidden_def(name) hidden_def (name)
> -# define libpthread_hidden_weak(name) hidden_weak (name)
> -# define libpthread_hidden_ver(local, name) hidden_ver (local, name)
> -# define libpthread_hidden_data_def(name) hidden_data_def (name)
> -# define libpthread_hidden_tls_def(name) hidden_tls_def (name)
> -# define libpthread_hidden_data_weak(name) hidden_data_weak (name)
> -# define libpthread_hidden_data_ver(local, name) hidden_data_ver (local, name)
> #else
> # define libpthread_hidden_proto(name, attrs...)
> -# define libpthread_hidden_tls_proto(name, attrs...)
> # define libpthread_hidden_def(name)
> -# define libpthread_hidden_weak(name)
> -# define libpthread_hidden_ver(local, name)
> -# define libpthread_hidden_data_def(name)
> -# define libpthread_hidden_tls_def(name)
> -# define libpthread_hidden_data_weak(name)
> -# define libpthread_hidden_data_ver(local, name)
> #endif
> 
> #if IS_IN (librt)
> # define librt_hidden_proto(name, attrs...) hidden_proto (name, ##attrs)
> -# define librt_hidden_tls_proto(name, attrs...) \
> -  hidden_tls_proto (name, ##attrs)
> -# define librt_hidden_def(name) hidden_def (name)
> -# define librt_hidden_weak(name) hidden_weak (name)
> # define librt_hidden_ver(local, name) hidden_ver (local, name)
> -# define librt_hidden_data_def(name) hidden_data_def (name)
> -# define librt_hidden_tls_def(name) hidden_tls_def (name)
> -# define librt_hidden_data_weak(name) hidden_data_weak (name)
> -# define librt_hidden_data_ver(local, name) hidden_data_ver (local, name)
> #else
> # define librt_hidden_proto(name, attrs...)
> -# define librt_hidden_tls_proto(name, attrs...)
> -# define librt_hidden_def(name)
> -# define librt_hidden_weak(name)
> # define librt_hidden_ver(local, name)
> -# define librt_hidden_data_def(name)
> -# define librt_hidden_tls_def(name)
> -# define librt_hidden_data_weak(name)
> -# define librt_hidden_data_ver(local, name)
> -#endif
> -
> -#if IS_IN (libdl)
> -# define libdl_hidden_proto(name, attrs...) hidden_proto (name, ##attrs)
> -# define libdl_hidden_tls_proto(name, attrs...) \
> -  hidden_tls_proto (name, ##attrs)
> -# define libdl_hidden_def(name) hidden_def (name)
> -# define libdl_hidden_weak(name) hidden_weak (name)
> -# define libdl_hidden_ver(local, name) hidden_ver (local, name)
> -# define libdl_hidden_data_def(name) hidden_data_def (name)
> -# define libdl_hidden_tls_def(name) hidden_tls_def (name)
> -# define libdl_hidden_data_weak(name) hidden_data_weak (name)
> -# define libdl_hidden_data_ver(local, name) hidden_data_ver (local, name)
> -#else
> -# define libdl_hidden_proto(name, attrs...)
> -# define libdl_hidden_tls_proto(name, attrs...)
> -# define libdl_hidden_def(name)
> -# define libdl_hidden_weak(name)
> -# define libdl_hidden_ver(local, name)
> -# define libdl_hidden_data_def(name)
> -# define libdl_hidden_tls_def(name)
> -# define libdl_hidden_data_weak(name)
> -# define libdl_hidden_data_ver(local, name)
> #endif
> 
> #if IS_IN (libnsl)
> # define libnsl_hidden_proto(name, attrs...) hidden_proto (name, ##attrs)
> -# define libnsl_hidden_tls_proto(name, attrs...) \
> -  hidden_tls_proto (name, ##attrs)
> # define libnsl_hidden_nolink_def(name, version) hidden_nolink (name, libnsl, version)
> -# define libnsl_hidden_weak(name) hidden_weak (name)
> -# define libnsl_hidden_ver(local, name) hidden_ver (local, name)
> -# define libnsl_hidden_data_def(name) hidden_data_def (name)
> -# define libnsl_hidden_tls_def(name) hidden_tls_def (name)
> -# define libnsl_hidden_data_weak(name) hidden_data_weak (name)
> -# define libnsl_hidden_data_ver(local, name) hidden_data_ver (local, name)
> #else
> # define libnsl_hidden_proto(name, attrs...)
> -# define libnsl_hidden_tls_proto(name, attrs...)
> -# define libnsl_hidden_weak(name)
> -# define libnsl_hidden_ver(local, name)
> -# define libnsl_hidden_data_def(name)
> -# define libnsl_hidden_tls_def(name)
> -# define libnsl_hidden_data_weak(name)
> -# define libnsl_hidden_data_ver(local, name)
> #endif
> 
> #define libc_hidden_builtin_proto(name, attrs...) libc_hidden_proto (name, ##attrs)
> #define libc_hidden_builtin_def(name) libc_hidden_def (name)
> -#define libc_hidden_builtin_weak(name) libc_hidden_weak (name)
> -#define libc_hidden_builtin_ver(local, name) libc_hidden_ver (local, name)
> 
> #define libc_hidden_ldbl_proto(name, attrs...) libc_hidden_proto (name, ##attrs)
> #ifdef __ASSEMBLER__
> # define HIDDEN_BUILTIN_JUMPTARGET(name) HIDDEN_JUMPTARGET(name)
> #endif
> 
> -#if IS_IN (libutil)
> -# define libutil_hidden_proto(name, attrs...) hidden_proto (name, ##attrs)
> -# define libutil_hidden_tls_proto(name, attrs...) \
> -  hidden_tls_proto (name, ##attrs)
> -# define libutil_hidden_def(name) hidden_def (name)
> -# define libutil_hidden_weak(name) hidden_weak (name)
> -# define libutil_hidden_ver(local, name) hidden_ver (local, name)
> -# define libutil_hidden_data_def(name) hidden_data_def (name)
> -# define libutil_hidden_tls_def(name) hidden_tls_def (name)
> -# define libutil_hidden_data_weak(name) hidden_data_weak (name)
> -# define libutil_hidden_data_ver(local, name) hidden_data_ver (local, name)
> -#else
> -# define libutil_hidden_proto(name, attrs...)
> -# define libutil_hidden_tls_proto(name, attrs...)
> -# define libutil_hidden_def(name)
> -# define libutil_hidden_weak(name)
> -# define libutil_hidden_ver(local, name)
> -# define libutil_hidden_data_def(name)
> -# define libutil_hidden_tls_def(name)
> -# define libutil_hidden_data_weak(name)
> -# define libutil_hidden_data_ver(local, name)
> -#endif
> -
> #if IS_IN (libanl)
> # define libanl_hidden_proto(name, attrs...) hidden_proto (name, ##attrs)
> -# define libanl_hidden_def(name) hidden_def (name)
> #else
> # define libanl_hidden_proto(name, attrs...)
> -# define libanl_hidden_def(name)
> #endif
> 
> /* Get some dirty hacks.  */
> @@ -871,11 +706,8 @@ for linking")
> #ifndef __ASSEMBLER__
> # define attribute_compat_text_section \
>     __attribute__ ((section (".text.compat")))
> -# define attribute_compat_data_section \
> -    __attribute__ ((section (".data.compat")))
> #else
> # define compat_text_section .section ".text.compat", "ax";
> -# define compat_data_section .section ".data.compat", "aw";
> #endif
> 
> /* Helper / base  macros for indirect function symbols.  */
> -- 
> 2.37.0.rc0.161.g10f37bed90-goog
>
  

Patch

diff --git a/include/libc-symbols.h b/include/libc-symbols.h
index 4bb3d8c7ba..091a992ec1 100644
--- a/include/libc-symbols.h
+++ b/include/libc-symbols.h
@@ -155,14 +155,6 @@ 
   extern __typeof (name) aliasname __attribute__ ((weak, alias (#name))) \
     __attribute_copy__ (name);
 
-/* Same as WEAK_ALIAS, but mark symbol as hidden.  */
-# define weak_hidden_alias(name, aliasname) \
-  _weak_hidden_alias (name, aliasname)
-# define _weak_hidden_alias(name, aliasname) \
-  extern __typeof (name) aliasname \
-    __attribute__ ((weak, alias (#name), __visibility__ ("hidden"))) \
-    __attribute_copy__ (name);
-
 /* Declare SYMBOL as weak undefined symbol (resolved to 0 if not defined).  */
 # define weak_extern(symbol) _weak_extern (weak symbol)
 # define _weak_extern(expr) _Pragma (#expr)
@@ -332,14 +324,6 @@  for linking")
    .type C_SYMBOL_NAME (symbol), %object ASM_LINE_SEP \
    .size C_SYMBOL_NAME (symbol), s_size ASM_LINE_SEP
 #else /* Not __ASSEMBLER__.  */
-# define declare_symbol_alias(symbol, original, type, size) \
-  declare_symbol_alias_1 (symbol, original, type, size)
-# define declare_symbol_alias_1(symbol, original, type, size) \
-   asm (".globl " __SYMBOL_PREFIX #symbol \
-	"\n\t" declare_symbol_alias_1_alias (symbol, original) \
-	"\n\t.type " __SYMBOL_PREFIX #symbol ", " \
-	"%" #type \
-	"\n\t.size " __SYMBOL_PREFIX #symbol ", " #size);
 # ifdef HAVE_ASM_SET_DIRECTIVE
 #  define declare_symbol_alias_1_alias(symbol, original) \
      ".set " __SYMBOL_PREFIX #symbol ", " __SYMBOL_PREFIX #original
@@ -552,7 +536,6 @@  for linking")
     __attribute__((alias (__hidden_asmname (#local))))	\
     __attribute_copy__ (name)
 #  define hidden_ver(local, name)	__hidden_ver1(local, __GI_##name, name);
-#  define hidden_data_ver(local, name)	hidden_ver(local, name)
 #  define hidden_def(name)		__hidden_ver1(__GI_##name, name, name);
 #  define hidden_data_def(name)		hidden_def(name)
 #  define hidden_tls_def(name)				\
@@ -586,7 +569,6 @@  for linking")
 #  define hidden_data_def(name)	strong_data_alias (name, __GI_##name)
 #  define hidden_tls_def(name)	hidden_data_def (name)
 #  define hidden_data_weak(name)	hidden_data_def (name)
-#  define hidden_data_ver(local, name) strong_data_alias (local, __GI_##name)
 #  define HIDDEN_JUMPTARGET(name) __GI_##name
 # endif
 #else
@@ -615,7 +597,6 @@  for linking")
 # define hidden_data_weak(name)
 # define hidden_data_def(name)
 # define hidden_tls_def(name)
-# define hidden_data_ver(local, name)
 # define hidden_nolink(name, lib, version)
 #endif
 
@@ -629,7 +610,6 @@  for linking")
 # define libc_hidden_data_def(name) hidden_data_def (name)
 # define libc_hidden_tls_def(name) hidden_tls_def (name)
 # define libc_hidden_data_weak(name) hidden_data_weak (name)
-# define libc_hidden_data_ver(local, name) hidden_data_ver (local, name)
 #else
 # define libc_hidden_proto(name, attrs...)
 # define libc_hidden_tls_proto(name, attrs...)
@@ -639,228 +619,83 @@  for linking")
 # define libc_hidden_data_def(name)
 # define libc_hidden_tls_def(name)
 # define libc_hidden_data_weak(name)
-# define libc_hidden_data_ver(local, name)
 #endif
 
 #if IS_IN (rtld)
 # define rtld_hidden_proto(name, attrs...) hidden_proto (name, ##attrs)
-# define rtld_hidden_tls_proto(name, attrs...) hidden_tls_proto (name, ##attrs)
 # define rtld_hidden_def(name) hidden_def (name)
 # define rtld_hidden_weak(name) hidden_weak (name)
-# define rtld_hidden_ver(local, name) hidden_ver (local, name)
 # define rtld_hidden_data_def(name) hidden_data_def (name)
-# define rtld_hidden_tls_def(name) hidden_tls_def (name)
-# define rtld_hidden_data_weak(name) hidden_data_weak (name)
-# define rtld_hidden_data_ver(local, name) hidden_data_ver (local, name)
 #else
 # define rtld_hidden_proto(name, attrs...)
-# define rtld_hidden_tls_proto(name, attrs...)
 # define rtld_hidden_def(name)
 # define rtld_hidden_weak(name)
-# define rtld_hidden_ver(local, name)
 # define rtld_hidden_data_def(name)
-# define rtld_hidden_tls_def(name)
-# define rtld_hidden_data_weak(name)
-# define rtld_hidden_data_ver(local, name)
 #endif
 
 #if IS_IN (libm)
 # define libm_hidden_proto(name, attrs...) hidden_proto (name, ##attrs)
-# define libm_hidden_tls_proto(name, attrs...) hidden_tls_proto (name, ##attrs)
 # define libm_hidden_def(name) hidden_def (name)
 # define libm_hidden_weak(name) hidden_weak (name)
 # define libm_hidden_ver(local, name) hidden_ver (local, name)
-# define libm_hidden_data_def(name) hidden_data_def (name)
-# define libm_hidden_tls_def(name) hidden_tls_def (name)
-# define libm_hidden_data_weak(name) hidden_data_weak (name)
-# define libm_hidden_data_ver(local, name) hidden_data_ver (local, name)
 #else
 # define libm_hidden_proto(name, attrs...)
-# define libm_hidden_tls_proto(name, attrs...)
 # define libm_hidden_def(name)
 # define libm_hidden_weak(name)
 # define libm_hidden_ver(local, name)
-# define libm_hidden_data_def(name)
-# define libm_hidden_tls_def(name)
-# define libm_hidden_data_weak(name)
-# define libm_hidden_data_ver(local, name)
 #endif
 
 #if IS_IN (libmvec)
-# define libmvec_hidden_proto(name, attrs...) hidden_proto (name, ##attrs)
-# define libmvec_hidden_tls_proto(name, attrs...) hidden_tls_proto (name, ##attrs)
 # define libmvec_hidden_def(name) hidden_def (name)
-# define libmvec_hidden_weak(name) hidden_weak (name)
-# define libmvec_hidden_ver(local, name) hidden_ver (local, name)
-# define libmvec_hidden_data_def(name) hidden_data_def (name)
-# define libmvec_hidden_tls_def(name) hidden_tls_def (name)
-# define libmvec_hidden_data_weak(name) hidden_data_weak (name)
-# define libmvec_hidden_data_ver(local, name) hidden_data_ver (local, name)
 #else
-# define libmvec_hidden_proto(name, attrs...)
-# define libmvec_hidden_tls_proto(name, attrs...)
 # define libmvec_hidden_def(name)
-# define libmvec_hidden_weak(name)
-# define libmvec_hidden_ver(local, name)
-# define libmvec_hidden_data_def(name)
-# define libmvec_hidden_tls_def(name)
-# define libmvec_hidden_data_weak(name)
-# define libmvec_hidden_data_ver(local, name)
 #endif
 
 #if IS_IN (libresolv)
 # define libresolv_hidden_proto(name, attrs...) hidden_proto (name, ##attrs)
-# define libresolv_hidden_tls_proto(name, attrs...) \
-  hidden_tls_proto (name, ##attrs)
 # define libresolv_hidden_def(name) hidden_def (name)
-# define libresolv_hidden_weak(name) hidden_weak (name)
-# define libresolv_hidden_ver(local, name) hidden_ver (local, name)
 # define libresolv_hidden_data_def(name) hidden_data_def (name)
-# define libresolv_hidden_tls_def(name) hidden_tls_def (name)
-# define libresolv_hidden_data_weak(name) hidden_data_weak (name)
-# define libresolv_hidden_data_ver(local, name) hidden_data_ver (local, name)
 #else
 # define libresolv_hidden_proto(name, attrs...)
-# define libresolv_hidden_tls_proto(name, attrs...)
 # define libresolv_hidden_def(name)
-# define libresolv_hidden_weak(name)
-# define libresolv_hidden_ver(local, name)
 # define libresolv_hidden_data_def(name)
-# define libresolv_hidden_tls_def(name)
-# define libresolv_hidden_data_weak(name)
-# define libresolv_hidden_data_ver(local, name)
 #endif
 
 #if IS_IN (libpthread)
 # define libpthread_hidden_proto(name, attrs...) hidden_proto (name, ##attrs)
-# define libpthread_hidden_tls_proto(name, attrs...) \
-  hidden_tls_proto (name, ##attrs)
 # define libpthread_hidden_def(name) hidden_def (name)
-# define libpthread_hidden_weak(name) hidden_weak (name)
-# define libpthread_hidden_ver(local, name) hidden_ver (local, name)
-# define libpthread_hidden_data_def(name) hidden_data_def (name)
-# define libpthread_hidden_tls_def(name) hidden_tls_def (name)
-# define libpthread_hidden_data_weak(name) hidden_data_weak (name)
-# define libpthread_hidden_data_ver(local, name) hidden_data_ver (local, name)
 #else
 # define libpthread_hidden_proto(name, attrs...)
-# define libpthread_hidden_tls_proto(name, attrs...)
 # define libpthread_hidden_def(name)
-# define libpthread_hidden_weak(name)
-# define libpthread_hidden_ver(local, name)
-# define libpthread_hidden_data_def(name)
-# define libpthread_hidden_tls_def(name)
-# define libpthread_hidden_data_weak(name)
-# define libpthread_hidden_data_ver(local, name)
 #endif
 
 #if IS_IN (librt)
 # define librt_hidden_proto(name, attrs...) hidden_proto (name, ##attrs)
-# define librt_hidden_tls_proto(name, attrs...) \
-  hidden_tls_proto (name, ##attrs)
-# define librt_hidden_def(name) hidden_def (name)
-# define librt_hidden_weak(name) hidden_weak (name)
 # define librt_hidden_ver(local, name) hidden_ver (local, name)
-# define librt_hidden_data_def(name) hidden_data_def (name)
-# define librt_hidden_tls_def(name) hidden_tls_def (name)
-# define librt_hidden_data_weak(name) hidden_data_weak (name)
-# define librt_hidden_data_ver(local, name) hidden_data_ver (local, name)
 #else
 # define librt_hidden_proto(name, attrs...)
-# define librt_hidden_tls_proto(name, attrs...)
-# define librt_hidden_def(name)
-# define librt_hidden_weak(name)
 # define librt_hidden_ver(local, name)
-# define librt_hidden_data_def(name)
-# define librt_hidden_tls_def(name)
-# define librt_hidden_data_weak(name)
-# define librt_hidden_data_ver(local, name)
-#endif
-
-#if IS_IN (libdl)
-# define libdl_hidden_proto(name, attrs...) hidden_proto (name, ##attrs)
-# define libdl_hidden_tls_proto(name, attrs...) \
-  hidden_tls_proto (name, ##attrs)
-# define libdl_hidden_def(name) hidden_def (name)
-# define libdl_hidden_weak(name) hidden_weak (name)
-# define libdl_hidden_ver(local, name) hidden_ver (local, name)
-# define libdl_hidden_data_def(name) hidden_data_def (name)
-# define libdl_hidden_tls_def(name) hidden_tls_def (name)
-# define libdl_hidden_data_weak(name) hidden_data_weak (name)
-# define libdl_hidden_data_ver(local, name) hidden_data_ver (local, name)
-#else
-# define libdl_hidden_proto(name, attrs...)
-# define libdl_hidden_tls_proto(name, attrs...)
-# define libdl_hidden_def(name)
-# define libdl_hidden_weak(name)
-# define libdl_hidden_ver(local, name)
-# define libdl_hidden_data_def(name)
-# define libdl_hidden_tls_def(name)
-# define libdl_hidden_data_weak(name)
-# define libdl_hidden_data_ver(local, name)
 #endif
 
 #if IS_IN (libnsl)
 # define libnsl_hidden_proto(name, attrs...) hidden_proto (name, ##attrs)
-# define libnsl_hidden_tls_proto(name, attrs...) \
-  hidden_tls_proto (name, ##attrs)
 # define libnsl_hidden_nolink_def(name, version) hidden_nolink (name, libnsl, version)
-# define libnsl_hidden_weak(name) hidden_weak (name)
-# define libnsl_hidden_ver(local, name) hidden_ver (local, name)
-# define libnsl_hidden_data_def(name) hidden_data_def (name)
-# define libnsl_hidden_tls_def(name) hidden_tls_def (name)
-# define libnsl_hidden_data_weak(name) hidden_data_weak (name)
-# define libnsl_hidden_data_ver(local, name) hidden_data_ver (local, name)
 #else
 # define libnsl_hidden_proto(name, attrs...)
-# define libnsl_hidden_tls_proto(name, attrs...)
-# define libnsl_hidden_weak(name)
-# define libnsl_hidden_ver(local, name)
-# define libnsl_hidden_data_def(name)
-# define libnsl_hidden_tls_def(name)
-# define libnsl_hidden_data_weak(name)
-# define libnsl_hidden_data_ver(local, name)
 #endif
 
 #define libc_hidden_builtin_proto(name, attrs...) libc_hidden_proto (name, ##attrs)
 #define libc_hidden_builtin_def(name) libc_hidden_def (name)
-#define libc_hidden_builtin_weak(name) libc_hidden_weak (name)
-#define libc_hidden_builtin_ver(local, name) libc_hidden_ver (local, name)
 
 #define libc_hidden_ldbl_proto(name, attrs...) libc_hidden_proto (name, ##attrs)
 #ifdef __ASSEMBLER__
 # define HIDDEN_BUILTIN_JUMPTARGET(name) HIDDEN_JUMPTARGET(name)
 #endif
 
-#if IS_IN (libutil)
-# define libutil_hidden_proto(name, attrs...) hidden_proto (name, ##attrs)
-# define libutil_hidden_tls_proto(name, attrs...) \
-  hidden_tls_proto (name, ##attrs)
-# define libutil_hidden_def(name) hidden_def (name)
-# define libutil_hidden_weak(name) hidden_weak (name)
-# define libutil_hidden_ver(local, name) hidden_ver (local, name)
-# define libutil_hidden_data_def(name) hidden_data_def (name)
-# define libutil_hidden_tls_def(name) hidden_tls_def (name)
-# define libutil_hidden_data_weak(name) hidden_data_weak (name)
-# define libutil_hidden_data_ver(local, name) hidden_data_ver (local, name)
-#else
-# define libutil_hidden_proto(name, attrs...)
-# define libutil_hidden_tls_proto(name, attrs...)
-# define libutil_hidden_def(name)
-# define libutil_hidden_weak(name)
-# define libutil_hidden_ver(local, name)
-# define libutil_hidden_data_def(name)
-# define libutil_hidden_tls_def(name)
-# define libutil_hidden_data_weak(name)
-# define libutil_hidden_data_ver(local, name)
-#endif
-
 #if IS_IN (libanl)
 # define libanl_hidden_proto(name, attrs...) hidden_proto (name, ##attrs)
-# define libanl_hidden_def(name) hidden_def (name)
 #else
 # define libanl_hidden_proto(name, attrs...)
-# define libanl_hidden_def(name)
 #endif
 
 /* Get some dirty hacks.  */
@@ -871,11 +706,8 @@  for linking")
 #ifndef __ASSEMBLER__
 # define attribute_compat_text_section \
     __attribute__ ((section (".text.compat")))
-# define attribute_compat_data_section \
-    __attribute__ ((section (".data.compat")))
 #else
 # define compat_text_section .section ".text.compat", "ax";
-# define compat_data_section .section ".data.compat", "aw";
 #endif
 
 /* Helper / base  macros for indirect function symbols.  */