From patchwork Thu Jun 23 18:31:24 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Fangrui Song X-Patchwork-Id: 55340 X-Patchwork-Delegate: azanella@linux.vnet.ibm.com Return-Path: X-Original-To: patchwork@sourceware.org Delivered-To: patchwork@sourceware.org Received: from server2.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id 79D11385625F for ; Thu, 23 Jun 2022 18:34:46 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 79D11385625F DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=sourceware.org; s=default; t=1656009286; bh=UN0Y/zHURm/GqlG4fDmOBxB/v0sbLuK9rP8KD1LE+fI=; h=Date:Subject:To:List-Id:List-Unsubscribe:List-Archive:List-Post: List-Help:List-Subscribe:From:Reply-To:From; b=oU0BlcncC/CjFZEJlyxv9sT+hfh+60YmyBGodOb0c97R5xLO3U9phEky+nCaT4JqI YRWNQK/lAPeflGNOfQGhkGA2qHDfrTYk90RX4oeP86QLRWgoIhDUTdKxdC3NNBAeiZ qkIitWgrkeGcwmrPIs2EPkv82Cj5mTSfM2kEhSSs= X-Original-To: libc-alpha@sourceware.org Delivered-To: libc-alpha@sourceware.org Received: from mail-yb1-xb4a.google.com (mail-yb1-xb4a.google.com [IPv6:2607:f8b0:4864:20::b4a]) by sourceware.org (Postfix) with ESMTPS id 78469385626A for ; Thu, 23 Jun 2022 18:32:00 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org 78469385626A Received: by mail-yb1-xb4a.google.com with SMTP id b11-20020a5b008b000000b00624ea481d55so193729ybp.19 for ; Thu, 23 Jun 2022 11:32:00 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:date:message-id:mime-version:subject:from:to:cc; bh=UN0Y/zHURm/GqlG4fDmOBxB/v0sbLuK9rP8KD1LE+fI=; b=LlCw8Fg6ojvd3MmJfZJHdjsKBSIgq/QMR/kylT7SOkp+zgMqdr641UaXMwN59sIBy2 urNDgrRJi2PG+I9S/Fv1QJEGsuUCkE6jg3rz91MupWmvZQ3yuCrx60vS5NDPVqdOlX1Q Fs4+UQdUyauK/XL65lHt0vXtv+RKrSArRbTgU2dzzYkbQTUwdrxOntrlY9J2FxOBtJjU kIlejHrtyrCb+bQ5Z6BjIOhrq+2JectiYVTGuVMhmS9kI65FOd+Ef1Y7nWVcapPDPmFu wvBf4d1aJQb75zwC2oZAvR8kJk2jXlmXXCww+SRSRtaugxGKd7mmUI+iMbWrYP6GCnbM m7+g== X-Gm-Message-State: AJIora8zau2bAvy6B99HU933glZyoRT1JqPn4wfoOmMSDqtRizHNcSdc IVjuxVfAtBPd1vE8Jj9TJVHsr9kkKE2hPKMYzWGULtS8jcCDMOHz8Aikb0fiTWN1Mvt1+qj/BFL 0oBsEVdB3xlf9PEYZ/q/7hGkr/rO1WJziyvqo6jld/NjNGj8j3mXid0XlwG5Q966QYoLj X-Google-Smtp-Source: AGRyM1slosZYLoBHKejrEN7tuHPHDKHjpD8YHXmzfZ9eCGHKK4pOFfjZFo4dioGnVOBK4hFSpASSdC3XYWja X-Received: from maskray1.svl.corp.google.com ([2620:15c:2ce:200:7eb6:9fa:5199:e1da]) (user=maskray job=sendgmr) by 2002:a25:4e04:0:b0:664:8e03:e6a with SMTP id c4-20020a254e04000000b006648e030e6amr11440962ybb.471.1656009119880; Thu, 23 Jun 2022 11:31:59 -0700 (PDT) Date: Thu, 23 Jun 2022 11:31:24 -0700 Message-Id: <20220623183124.1419226-1-maskray@google.com> Mime-Version: 1.0 Subject: [PATCH] libc-symbols.h: remove unused macros To: libc-alpha@sourceware.org X-Spam-Status: No, score=-19.0 required=5.0 tests=BAYES_00, DKIMWL_WL_MED, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, GIT_PATCH_0, KAM_STOCKGEN, RCVD_IN_DNSWL_NONE, SPF_HELO_NONE, SPF_PASS, TXREP, T_FILL_THIS_FORM_SHORT, T_SCC_BODY_TEXT_LINE, USER_IN_DEF_DKIM_WL autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org X-BeenThere: libc-alpha@sourceware.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Libc-alpha mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-Patchwork-Original-From: Fangrui Song via Libc-alpha From: Fangrui Song Reply-To: Fangrui Song Errors-To: libc-alpha-bounces+patchwork=sourceware.org@sourceware.org Sender: "Libc-alpha" 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. Reviewed-by: Adhemerval Zanella --- 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. */