From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from esa1.mentor.iphmx.com (esa1.mentor.iphmx.com [68.232.129.153]) by sourceware.org (Postfix) with ESMTPS id 8897B3854801 for ; Thu, 18 Mar 2021 21:37:52 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.3.2 sourceware.org 8897B3854801 Authentication-Results: sourceware.org; dmarc=none (p=none dis=none) header.from=codesourcery.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=joseph_myers@mentor.com IronPort-SDR: xwwxs5nYzW9XJpsm+NdR0RwR0homSkti3wb/aph95rWlWzpTsdTMgxCae+gkrzJydAdVgVnid+ PgBnTRtjbrc5kXrI3WkVv76NAtmLUKy65Yye6WJUBpDcSIhSHA0/iSMSq2rIdlcSvna5rKJxFa kt13oV5bD+ilrCYysv6M6/b5LcEhWH0SIh/9vYP1pd6f41hNWsGl9kBCJwXBMKR3ho1apdFkKS jWG3S3fdlFz90HhBCFQM8EPbOITbhmvPfEVKEAc3khnoTSh7Aaje3d3X/lSkeW8fLXU8CbMLvf 9kU= X-IronPort-AV: E=Sophos;i="5.81,259,1610438400"; d="scan'208";a="61610317" Received: from orw-gwy-01-in.mentorg.com ([192.94.38.165]) by esa1.mentor.iphmx.com with ESMTP; 18 Mar 2021 13:37:50 -0800 IronPort-SDR: yEIJmkqya0TgMrF6sGlmAHM+bR5ICPxWFRc1NWinDOz29xCmPMRiCfG+zrXXYrZGjBnfPgxdAC MXyamWVhgQHPQ8s7CkTTmQU0ktKEEolI1y2yBzasqZtDiVCAYx3R1Na3FTV8C880QlVzbjZ2+W 1AW6UTow26blbWYQyHUE81shMl1dQYM4fxMjB3Rzm39yFaTGYv93Fe25N93sJn1U5gznKRczdM pVuwdN1+qn1dprn9vkAfJapambvt8vtquMJDUjXOnC8puUSk3r1EXgvRMjnTKu8VzAO0yoIcHt ebU= Date: Thu, 18 Mar 2021 21:37:46 +0000 From: Joseph Myers X-X-Sender: jsm28@digraph.polyomino.org.uk To: Florian Weimer CC: Subject: Re: [RFC 2/2] Fold compat_symbol_unique functionality into compat_symbol In-Reply-To: <965a0d7e0c28a5a0ce292a2b0bd39f2ba31d1a84.1616095061.git.fweimer@redhat.com> Message-ID: References: <965a0d7e0c28a5a0ce292a2b0bd39f2ba31d1a84.1616095061.git.fweimer@redhat.com> User-Agent: Alpine 2.22 (DEB 394 2020-01-19) MIME-Version: 1.0 Content-Type: text/plain; charset="US-ASCII" X-Originating-IP: [137.202.0.90] X-ClientProxiedBy: svr-ies-mbx-02.mgc.mentorg.com (139.181.222.2) To svr-ies-mbx-01.mgc.mentorg.com (139.181.222.1) X-Spam-Status: No, score=-3128.6 required=5.0 tests=BAYES_00, GIT_PATCH_0, HEADER_FROM_DIFFERENT_DOMAINS, KAM_DMARC_STATUS, SPF_HELO_PASS, SPF_PASS, TXREP autolearn=ham autolearn_force=no version=3.4.2 X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) 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-List-Received-Date: Thu, 18 Mar 2021 21:37:56 -0000 On Thu, 18 Mar 2021, Florian Weimer via Libc-alpha wrote: > This eliminates the need for intermediate aliases for defining > multiple symbol versions, for both compat_symbol and > versioned_symbol. Some binutils versions do not suport multiple > versions per symbol on some targets, so aliases are automatically > introduced, similar to what compat_symbol_unique did. To reduce > symbol table sizes, a configure check is added to avoid these > aliases if they are not needed. totalorder / totalordermag implementations also use something similar to compat_symbol_unique (but predating it) to create aliases and should probably also be changed not to do so, whether in this patch or a followup. (Finding all the other places using aliases without __COUNTER__ for symbol version definitions may be harder.) > diff --git a/configure.ac b/configure.ac > index 16b15b6f90..5b3440511b 100644 > --- a/configure.ac > +++ b/configure.ac > @@ -1673,6 +1673,27 @@ elif test "$libc_cv_ehdr_start" = broken; then > AC_MSG_WARN([linker is broken -- you should upgrade]) > fi > > +AC_CACHE_CHECK(whether the assembler requires one version per symbol, > + libc_cv_symver_needs_alias, [dnl I think either the configure test, or the code using it, should have a comment saying when the binutils issue was fixed, so it's easy to tell when the test and conditionals are obsolete and can be removed. It's binutils bug 23840, so referencing that bug in the comment and saying it's fixed in binutils 2.35 seems appropriate. -- Joseph S. Myers joseph@codesourcery.com