From patchwork Wed Sep 13 10:47:33 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Szabolcs Nagy X-Patchwork-Id: 22864 Received: (qmail 4613 invoked by alias); 13 Sep 2017 10:47:46 -0000 Mailing-List: contact libc-alpha-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Unsubscribe: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: libc-alpha-owner@sourceware.org Delivered-To: mailing list libc-alpha@sourceware.org Received: (qmail 2443 invoked by uid 89); 13 Sep 2017 10:47:44 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-24.6 required=5.0 tests=AWL, BAYES_00, GIT_PATCH_0, GIT_PATCH_1, GIT_PATCH_2, GIT_PATCH_3, RCVD_IN_DNSWL_NONE, SPF_HELO_PASS, SPF_PASS autolearn=ham version=3.3.2 spammy=1489, 4298 X-HELO: EUR01-VE1-obe.outbound.protection.outlook.com Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=Szabolcs.Nagy@arm.com; Message-ID: <59B90CC5.6000703@arm.com> Date: Wed, 13 Sep 2017 11:47:33 +0100 From: Szabolcs Nagy User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:31.0) Gecko/20100101 Thunderbird/31.8.0 MIME-Version: 1.0 To: GNU C Library CC: nd@arm.com Subject: [PATCH 3/4] New expf and exp2f version without SVID compat wrapper References: <59B90BDF.7000503@arm.com> In-Reply-To: <59B90BDF.7000503@arm.com> X-ClientProxiedBy: DB6P18901CA0002.EURP189.PROD.OUTLOOK.COM (2603:10a6:4:16::12) To HE1PR0802MB2489.eurprd08.prod.outlook.com (2603:10a6:3:d8::23) X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 255fb493-5c17-435d-e68c-08d4fa94d91e X-MS-Office365-Filtering-HT: Tenant X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(300000500095)(300135000095)(300000501095)(300135300095)(300000502095)(300135100095)(22001)(2017030254152)(48565401081)(300000503095)(300135400095)(49563074)(201703131423075)(201703031133081)(201702281549075)(300000504095)(300135200095)(300000505095)(300135600095)(300000506095)(300135500095); SRVR:HE1PR0802MB2489; X-Microsoft-Exchange-Diagnostics: 1; HE1PR0802MB2489; 3:FIiMy5yENKjCPeosSe0bDa2aGtfeXdk4KhnsydyTyLaeSiMyzUz2RIMoIbvV5FIQFSoLixre/hrQWVcQuHzd4qfr+YpNrO5YfVsJ3G6hwcNVaq7dLi7Jmnj3D0WoV7C3XZdJ+h81tCd2tkFdArpFoek2Y83Hv+aPOINnjgf4Hgrfnf8m9iZC3T93rxbiMcsFDxjmI57WFz6INP2Kmvqe1j1os78soVm0E9tzuj6abz2sb1E/yNYk+jfKZt5Pw92S; 25:ONBAQLyXZ3rx0CqFWC5FJC5yCzzaNHVzSK6Hi5QjQhb46RDP1d2G2Gi8b7qJaLQf2ZCn/lMsenDd6r3oV1VGTI+hDe16xrNICUtnto2saaHsabOEDa0tt3EMvo9H+QBwBwTwXUoDbuE8My0BYU/603Exqjvli0dt3XJTXW1p7D6kjUnzplxurl04dfPrwE+he1Jrj0nroT2JxmVCfoQ3Z1SqM/8RpeIPRnUe2Glc2QBUOSmmp4EFmyZPvYYJhDBv9ta76VkA976V5u15CHSCrBAgDXXnD3BkPkhrjj9XVnuRTeBWENsZ2jphFlaCVhTKJFDlVxhYpAQw8obshpgjCg==; 31:tJ+aeQCyDpeDww/l+LMnTLemSDmCA/ZuZFhsoTQWhF0TLWSFWw+Y2EtY342bjJVpF7Ob0kgG3K4Pbq5MLGED+tu57btIcSVIujUybRtpHVNiUvNqtIwl7wFsLMOFO7nmmDgDow/9Myh41nwKFx0fTIA/JJELAhV6sDdiO+CqTxv8bsuqoYs4/Ybqg+iMylU4eVBPSSvlyA7BbAtP1DZKR3FzYpCvNT6oCUPhsJMwOyo= X-MS-TrafficTypeDiagnostic: HE1PR0802MB2489: NoDisclaimer: True X-Microsoft-Exchange-Diagnostics: 1; HE1PR0802MB2489; 20:HplHZdEEOAhr3KuWRMkKyoCTh8/c3XqVBPvoGMi2C/bs3oHlu7AQn88ljRqJPFrcXQ5zsLOsfOH2sZFqGHuzorddNu9v0y41LjwG3UcZYaX3zJXnaZz5eEq6Xjv0cre4LxN4NFeEeJnJ7s+8urcpsZPi9+LwHmcecptCUVtyCo0=; 4:0TV1OLYSfu59m7WR/5U+2nbjv1osCbcPvdRplC68+RXAdvEl6eS4ph5PvSsHPuQfEuoHvOElSNdnpnIYpKBzvbNERWnF+dRkpvHdwm3C0Clo5fVb515vFHqYiNALbVIQ6Ho+DJhvqtcthEQ2WgTLItoJCXsymaafK80jPGwZ+toOzOinNYtwtUjMJ7ghYyr+Glv++XJydcYMpm64xtXN0xD4GnwXSkaYeI9ubotMH20FQV1MyeaxaDnvdQGjncNpk8gDiz3sywvMDtAh+3ZLxF0cZ7dzufoxg36Rk+Sgsc4= X-Exchange-Antispam-Report-Test: UriScan:(180628864354917); X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(100000700101)(100105000095)(100000701101)(100105300095)(100000702101)(100105100095)(102415395)(6040450)(2401047)(5005006)(8121501046)(93006095)(93001095)(100000703101)(100105400095)(3002001)(10201501046)(6055026)(6041248)(20161123560025)(20161123564025)(20161123562025)(201703131423075)(201702281528075)(201703061421075)(201703061406153)(20161123555025)(20161123558100)(6072148)(201708071742011)(100000704101)(100105200095)(100000705101)(100105500095); SRVR:HE1PR0802MB2489; BCL:0; PCL:0; RULEID:(100000800101)(100110000095)(100000801101)(100110300095)(100000802101)(100110100095)(100000803101)(100110400095)(100000804101)(100110200095)(100000805101)(100110500095); SRVR:HE1PR0802MB2489; X-Forefront-PRVS: 042957ACD7 X-Forefront-Antispam-Report: SFV:NSPM; SFS:(10009020)(7370300001)(4630300001)(6049001)(6009001)(39860400002)(376002)(366002)(346002)(199003)(189002)(377424004)(81156014)(5890100001)(72206003)(8676002)(84326002)(7736002)(25786009)(101416001)(81166006)(33656002)(305945005)(83506001)(478600001)(87266999)(65816999)(59896002)(2906002)(5660300001)(50986999)(76176999)(54356999)(4610100001)(106356001)(105586002)(270700001)(568964002)(4001350100001)(97736004)(68736007)(36756003)(2476003)(6916009)(2950100002)(3846002)(6666003)(6116002)(80316001)(4326008)(53936002)(316002)(16526017)(66066001)(7350300001)(77096006)(16576012)(189998001)(65806001)(86362001)(6486002)(65956001)(64126003)(110136004); DIR:OUT; SFP:1101; SCL:1; SRVR:HE1PR0802MB2489; H:[10.2.206.69]; FPR:; SPF:None; PTR:InfoNoRecords; A:1; MX:1; LANG:en; Received-SPF: None (protection.outlook.com: arm.com does not designate permitted sender hosts) X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; HE1PR0802MB2489; 23:5jfcJLx+IKnAuOIX6jMx3GiTEpHeRjL5/gXjKQT?= =?us-ascii?Q?OXOFkkCr+gv5AdAuK39NWTOSh2+kzu5hKXjH7RGcq6A668jVYregeRBMFdcq?= =?us-ascii?Q?ghMpY/nZyph6fJXFNF9VH0xsh2tAdqT0HQ8pKxSAzuFm9hgUd194L1kltKn7?= =?us-ascii?Q?PfTvqBORJthG6G8dxaxvt9ZUE+JUbBmDvV514fkgipQcyYdJrVnyN/yT5p8f?= =?us-ascii?Q?IAoUhqLzp8aC4VpTO/fDkRrzrgKdwt4Jws7qpa4zMbQfPbyeFN+73j/Nzx4H?= =?us-ascii?Q?yogx3xTdn/zgVo8vdZjAeElVOcKqyewlxmCIRdN3MLiKl4Ybno/lqGCAtL8c?= =?us-ascii?Q?MQ9qxlDcsX6kBuQ6H5P0qVqUQqVLun1e8L3KmP4bqhzYc3lnHvDui9A4xWDs?= =?us-ascii?Q?2Fd9OG7EMyjFSiDVRjSC6/KTFeHOSRYziUaX6nYHkDF4VB851S1Jhp0MYomN?= =?us-ascii?Q?1Z4Ru3dZDSfg+zMQ6BWE3HBddT8wk3iR3dxBYJnM5oeoR/ad0IJDMIXI+rxu?= =?us-ascii?Q?2mzXSIH2Knt+AvoJeMbWB38qzmgrmIGa4zOF7AMkT7IdBcjFwmrd9XxORUhv?= =?us-ascii?Q?q9CNM4EI2os3+zlyFj8gw9yXoKV3OyJONH6wxL+AAIvJi60yF1sPOfsdolOD?= =?us-ascii?Q?ofLQ55UxvRWm1gwcxOTuCc6Kg1qO+SF7oqW0XcCG9Vp00lCL/nJ+zniOMISh?= =?us-ascii?Q?uZyFMJlaTnCJqmStZpZZGUwnp3DexpvDVHDXPAKXIVkJxdtXgfQA2dSChqlm?= =?us-ascii?Q?CoCvNC5SOGW7X4CVy9XqTrZrGZPMmuRIe8JlW8U3noNosWms0tcIfqKgain4?= =?us-ascii?Q?HLRJrl04L3eOTUZVfVqnAZsWC/I+TiW+GATuj+A1cIw2oE5t8rolZrJN1GIx?= =?us-ascii?Q?h6WcAZqEUkZwLndjocLfPh5jiBgDUcFIKbzw5Bj+73VfcdaQ9vqTKWmnegzE?= =?us-ascii?Q?XWwOepboIq8gHW4NuOgeNFP3ihHDYSsaRz7hFulunyGHuJsZ51cZT94D4EOI?= =?us-ascii?Q?ystV3eNCIsd9hNqkTYbSy0lZa6EPBMbgiewdzFaP4xEkqFHCUWxTPgcC/Tqe?= =?us-ascii?Q?Qfap8qc8KyMFHusZ0Bi5d3B+XMafgTjn6KWsk2iSOd40Z+rMfHNymG3y27NR?= =?us-ascii?Q?fQpfq+tbLNa2IjBi1OiK3i9Asrdc+P11btj9aMHiV9sV0vTYBcbdJHSlVWYB?= =?us-ascii?Q?omtHkHqMXeKDhOd20ZyeyJvNurV4tGJQWc3lrqve2ioFwoks3hLCcfMMGAod?= =?us-ascii?Q?8jGSNKxDFbKPrFeKNicbTVRWnZZTTyOrwG+aQNhaCLZhwkxQysfdJVfYsaTv?= =?us-ascii?Q?iWVhA4AQ4onhGRXSigaEkxpMnvVN79vmUaWsyjs/DX+CmhZrGCEGfYpAJpyB?= =?us-ascii?Q?xH8RlyMoBWdwTShyMOrowYBPI+zDFnpOyX/7lpSh15EM3fnb8NF79I37rOSJ?= =?us-ascii?Q?s4J1H+d6/D93F9K8KUlop2pEZJshLXywjjmGKOJUKcXW+4BP8tT9PdxFoUfW?= =?us-ascii?Q?Oj6oU0ysW11psnA=3D=3D?= X-Microsoft-Exchange-Diagnostics: 1; HE1PR0802MB2489; 6:cQFdumVwBqv4nK6LZdN88sDPKMtag/eQSepyLmd6EmYQvXOFS7N7MXTicNXIOBpuShadhGAtKD2UDAY6DL6Q2NjpJ01PZQYIHycgIxX8h1/le14HD6CR7GmbJDl/yBpqYRUnokg3Euv7L4RgBTJ5/qiQYIEo6/6Mur9kkJNb1Lo4a5zgsyKTfLXV2/2KLLuZ9YZQ2X2m3FrmFqs+zpRajrpwkqZqZutCZK0gheAsQYHM7Uj0HJVUqXJmFlygBLhSkJgxNkCtQ54m8ni49VBuuUZ39GuJjtHXGZBy9W7q58eZYneB0TYolaRddokrNISwwj4D7CjNNPgxa56/+OfGyg==; 5:MqtCwd0hjsdVvUD7X0sZINwa+ftQ1aNVyycM9cDkxCOITlyZJFe0XfFKZPPOXbpeb7F0j0/GuYkKFzIxwPhNUtegOxd93plpdD1jucv1tpSK5vTwSxJEKXmmgVa59sHou07acs9coopdrcRzmsR2zA==; 24:9wQ/mvV0o8GNqYzjO/wtYzMQI0mzs25aeYi9bSnpfLHHdlrDe6hn6BljQDiMpGNMV8h66399SEae2U+mf2U2055YF2kX6VzajTVpq0n9gQ4=; 7:yQM1rC0iyGEhP//uXUcw30c6P6A3W3zP1qAMDjFjvQJwTjmYm59EZP5OkUCWPHnp7r4i2NslNn7nDldUNSxVyoctzcMLscUr5v0CU6Tc/VsIGmVBMwHdvkgGelGcuDFi5vrqkpjsJHfRwId5AaYfFaXWFIliqTwm/kynRjQI3NSOs10L4uyCDyt1WyIVxsdHJy86jT82Ygi0CSH63zV9i2z8Dckr9+CK6KW+0r6wjM8= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 13 Sep 2017 10:47:36.7273 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-Transport-CrossTenantHeadersStamped: HE1PR0802MB2489 This patch changes the expf and exp2f error handling semantics to only set errno accoring to POSIX rules. New symbol version is introduced at GLIBC_2.27. The old wrappers are kept for compat symbols (with GLIBC_2_0 version and unchanged error semantics). Internal calls to __expf now get the new error semantics, this seems to only affect sysdeps/i386/fpu/s_expm1f.S where the errno-only behaviour should be correct. All linux libm abilists are updated (even ones where i could not build a working toolchain). 2017-09-13 Szabolcs Nagy * math/Versions (expf): New libm symbol at GLIBC_2.27. (exp2f): Likewise. * math/w_exp2f.c: New file. * math/w_expf.c: New file. * math/w_exp2f_compat.c (__exp2f_compat): For compat symbol only. * math/w_expf_compat.c (__expf_compat): Likewise. * sysdeps/unix/sysv/linux/aarch64/libm.abilist: Update. * sysdeps/unix/sysv/linux/alpha/libm.abilist: Likewise. * sysdeps/unix/sysv/linux/arm/libm.abilist: Likewise. * sysdeps/unix/sysv/linux/hppa/libm.abilist: Likewise. * sysdeps/unix/sysv/linux/i386/libm.abilist: Likewise. * sysdeps/unix/sysv/linux/ia64/libm.abilist: Likewise. * sysdeps/unix/sysv/linux/m68k/coldfire/libm.abilist: Likewise. * sysdeps/unix/sysv/linux/m68k/m680x0/libm.abilist: Likewise. * sysdeps/unix/sysv/linux/microblaze/libm.abilist: Likewise. * sysdeps/unix/sysv/linux/mips/mips32/libm.abilist: Likewise. * sysdeps/unix/sysv/linux/mips/mips64/libm.abilist: Likewise. * sysdeps/unix/sysv/linux/nios2/libm.abilist: Likewise. * sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libm.abilist: Likewise. * sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libm.abilist: Likewise. * sysdeps/unix/sysv/linux/powerpc/powerpc64/libm-le.abilist: Likewise. * sysdeps/unix/sysv/linux/powerpc/powerpc64/libm.abilist: Likewise. * sysdeps/unix/sysv/linux/s390/s390-32/libm.abilist: Likewise. * sysdeps/unix/sysv/linux/s390/s390-64/libm.abilist: Likewise. * sysdeps/unix/sysv/linux/sh/libm.abilist: Likewise. * sysdeps/unix/sysv/linux/sparc/sparc32/libm.abilist: Likewise. * sysdeps/unix/sysv/linux/sparc/sparc64/libm.abilist: Likewise. * sysdeps/unix/sysv/linux/tile/tilegx/tilegx32/libm.abilist: Likewise. * sysdeps/unix/sysv/linux/tile/tilegx/tilegx64/libm.abilist: Likewise. * sysdeps/unix/sysv/linux/tile/tilepro/libm.abilist: Likewise. * sysdeps/unix/sysv/linux/x86_64/64/libm.abilist: Likewise. * sysdeps/unix/sysv/linux/x86_64/x32/libm.abilist: Likewise. From f108f9ef952e9b46f89da762794b7220d34fa927 Mon Sep 17 00:00:00 2001 From: Szabolcs Nagy Date: Tue, 12 Sep 2017 12:20:50 +0100 Subject: [PATCH 3/4] errno-only --- math/Versions | 3 +++ math/w_exp2f.c | 7 +++++++ math/w_exp2f_compat.c | 6 +++--- math/w_expf.c | 7 +++++++ math/w_expf_compat.c | 7 +++---- sysdeps/unix/sysv/linux/aarch64/libm.abilist | 3 +++ sysdeps/unix/sysv/linux/alpha/libm.abilist | 3 +++ sysdeps/unix/sysv/linux/arm/libm.abilist | 3 +++ sysdeps/unix/sysv/linux/hppa/libm.abilist | 3 +++ sysdeps/unix/sysv/linux/i386/libm.abilist | 3 +++ sysdeps/unix/sysv/linux/ia64/libm.abilist | 3 +++ sysdeps/unix/sysv/linux/m68k/coldfire/libm.abilist | 3 +++ sysdeps/unix/sysv/linux/m68k/m680x0/libm.abilist | 3 +++ sysdeps/unix/sysv/linux/microblaze/libm.abilist | 3 +++ sysdeps/unix/sysv/linux/mips/mips32/libm.abilist | 3 +++ sysdeps/unix/sysv/linux/mips/mips64/libm.abilist | 3 +++ sysdeps/unix/sysv/linux/nios2/libm.abilist | 3 +++ sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libm.abilist | 3 +++ sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libm.abilist | 3 +++ sysdeps/unix/sysv/linux/powerpc/powerpc64/libm-le.abilist | 3 +++ sysdeps/unix/sysv/linux/powerpc/powerpc64/libm.abilist | 3 +++ sysdeps/unix/sysv/linux/s390/s390-32/libm.abilist | 3 +++ sysdeps/unix/sysv/linux/s390/s390-64/libm.abilist | 3 +++ sysdeps/unix/sysv/linux/sh/libm.abilist | 3 +++ sysdeps/unix/sysv/linux/sparc/sparc32/libm.abilist | 3 +++ sysdeps/unix/sysv/linux/sparc/sparc64/libm.abilist | 3 +++ sysdeps/unix/sysv/linux/tile/tilegx/tilegx32/libm.abilist | 3 +++ sysdeps/unix/sysv/linux/tile/tilegx/tilegx64/libm.abilist | 3 +++ sysdeps/unix/sysv/linux/tile/tilepro/libm.abilist | 3 +++ sysdeps/unix/sysv/linux/x86_64/64/libm.abilist | 3 +++ sysdeps/unix/sysv/linux/x86_64/x32/libm.abilist | 3 +++ 31 files changed, 101 insertions(+), 7 deletions(-) create mode 100644 math/w_exp2f.c create mode 100644 math/w_expf.c diff --git a/math/Versions b/math/Versions index e409de0681..380f6a2a1a 100644 --- a/math/Versions +++ b/math/Versions @@ -229,4 +229,7 @@ libm { fromfp; fromfpf; fromfpl; ufromfp; ufromfpf; ufromfpl; fromfpx; fromfpxf; fromfpxl; ufromfpx; ufromfpxf; ufromfpxl; } + GLIBC_2.27 { + expf; exp2f; + } } diff --git a/math/w_exp2f.c b/math/w_exp2f.c new file mode 100644 index 0000000000..948d745dab --- /dev/null +++ b/math/w_exp2f.c @@ -0,0 +1,7 @@ +#include +#undef __USE_WRAPPER_TEMPLATE +#define __USE_WRAPPER_TEMPLATE 1 +#undef declare_mgen_alias +#define declare_mgen_alias(a, b) +#include +versioned_symbol (libm, __exp2f, exp2f, GLIBC_2_27); diff --git a/math/w_exp2f_compat.c b/math/w_exp2f_compat.c index b058daed30..6ab6f6c6de 100644 --- a/math/w_exp2f_compat.c +++ b/math/w_exp2f_compat.c @@ -6,9 +6,9 @@ #include #include -#if LIBM_SVID_COMPAT +#if LIBM_SVID_COMPAT && SHLIB_COMPAT (libm, GLIBC_2_1, GLIBC_2_27) float -__exp2f (float x) +__exp2f_compat (float x) { float z = __ieee754_exp2f (x); if (__builtin_expect (!isfinite (z) || z == 0, 0) @@ -18,5 +18,5 @@ __exp2f (float x) return z; } -weak_alias (__exp2f, exp2f) +compat_symbol (libm, __exp2f_compat, exp2f, GLIBC_2_1); #endif diff --git a/math/w_expf.c b/math/w_expf.c new file mode 100644 index 0000000000..6d5f03c5f9 --- /dev/null +++ b/math/w_expf.c @@ -0,0 +1,7 @@ +#include +#undef __USE_WRAPPER_TEMPLATE +#define __USE_WRAPPER_TEMPLATE 1 +#undef declare_mgen_alias +#define declare_mgen_alias(a, b) +#include +versioned_symbol (libm, __expf, expf, GLIBC_2_27); diff --git a/math/w_expf_compat.c b/math/w_expf_compat.c index a38ff4082d..2512498bb3 100644 --- a/math/w_expf_compat.c +++ b/math/w_expf_compat.c @@ -20,10 +20,10 @@ #include #include -#if LIBM_SVID_COMPAT +#if LIBM_SVID_COMPAT && SHLIB_COMPAT (libm, GLIBC_2_0, GLIBC_2_27) /* wrapper expf */ float -__expf (float x) +__expf_compat (float x) { float z = __ieee754_expf (x); if (__builtin_expect (!isfinite (z) || z == 0, 0) @@ -32,6 +32,5 @@ __expf (float x) return z; } -hidden_def (__expf) -weak_alias (__expf, expf) +compat_symbol (libm, __expf_compat, expf, GLIBC_2_0); #endif diff --git a/sysdeps/unix/sysv/linux/aarch64/libm.abilist b/sysdeps/unix/sysv/linux/aarch64/libm.abilist index 6266864ea7..10102eeaff 100644 --- a/sysdeps/unix/sysv/linux/aarch64/libm.abilist +++ b/sysdeps/unix/sysv/linux/aarch64/libm.abilist @@ -460,3 +460,6 @@ GLIBC_2.25 ufromfpl F GLIBC_2.25 ufromfpx F GLIBC_2.25 ufromfpxf F GLIBC_2.25 ufromfpxl F +GLIBC_2.27 GLIBC_2.27 A +GLIBC_2.27 exp2f F +GLIBC_2.27 expf F diff --git a/sysdeps/unix/sysv/linux/alpha/libm.abilist b/sysdeps/unix/sysv/linux/alpha/libm.abilist index 0dc44afd77..e09a115aa9 100644 --- a/sysdeps/unix/sysv/linux/alpha/libm.abilist +++ b/sysdeps/unix/sysv/linux/alpha/libm.abilist @@ -470,6 +470,9 @@ GLIBC_2.25 ufromfpl F GLIBC_2.25 ufromfpx F GLIBC_2.25 ufromfpxf F GLIBC_2.25 ufromfpxl F +GLIBC_2.27 GLIBC_2.27 A +GLIBC_2.27 exp2f F +GLIBC_2.27 expf F GLIBC_2.3.4 GLIBC_2.3.4 A GLIBC_2.3.4 __c1_cabsf F GLIBC_2.3.4 __c1_cacosf F diff --git a/sysdeps/unix/sysv/linux/arm/libm.abilist b/sysdeps/unix/sysv/linux/arm/libm.abilist index d0c33d2a11..8095876449 100644 --- a/sysdeps/unix/sysv/linux/arm/libm.abilist +++ b/sysdeps/unix/sysv/linux/arm/libm.abilist @@ -117,6 +117,9 @@ GLIBC_2.25 ufromfpl F GLIBC_2.25 ufromfpx F GLIBC_2.25 ufromfpxf F GLIBC_2.25 ufromfpxl F +GLIBC_2.27 GLIBC_2.27 A +GLIBC_2.27 exp2f F +GLIBC_2.27 expf F GLIBC_2.4 GLIBC_2.4 A GLIBC_2.4 _LIB_VERSION D 0x4 GLIBC_2.4 __clog10 F diff --git a/sysdeps/unix/sysv/linux/hppa/libm.abilist b/sysdeps/unix/sysv/linux/hppa/libm.abilist index 80fd4ada99..19d40ef50d 100644 --- a/sysdeps/unix/sysv/linux/hppa/libm.abilist +++ b/sysdeps/unix/sysv/linux/hppa/libm.abilist @@ -429,5 +429,8 @@ GLIBC_2.25 ufromfpl F GLIBC_2.25 ufromfpx F GLIBC_2.25 ufromfpxf F GLIBC_2.25 ufromfpxl F +GLIBC_2.27 GLIBC_2.27 A +GLIBC_2.27 exp2f F +GLIBC_2.27 expf F GLIBC_2.4 GLIBC_2.4 A GLIBC_2.4 exp2l F diff --git a/sysdeps/unix/sysv/linux/i386/libm.abilist b/sysdeps/unix/sysv/linux/i386/libm.abilist index 2aef7e5aed..791fba28e5 100644 --- a/sysdeps/unix/sysv/linux/i386/libm.abilist +++ b/sysdeps/unix/sysv/linux/i386/libm.abilist @@ -611,4 +611,7 @@ GLIBC_2.26 ufromfpxf128 F GLIBC_2.26 y0f128 F GLIBC_2.26 y1f128 F GLIBC_2.26 ynf128 F +GLIBC_2.27 GLIBC_2.27 A +GLIBC_2.27 exp2f F +GLIBC_2.27 expf F GLIBC_2.4 GLIBC_2.4 A diff --git a/sysdeps/unix/sysv/linux/ia64/libm.abilist b/sysdeps/unix/sysv/linux/ia64/libm.abilist index f165eb3957..65a0fbe56a 100644 --- a/sysdeps/unix/sysv/linux/ia64/libm.abilist +++ b/sysdeps/unix/sysv/linux/ia64/libm.abilist @@ -540,4 +540,7 @@ GLIBC_2.26 ufromfpxf128 F GLIBC_2.26 y0f128 F GLIBC_2.26 y1f128 F GLIBC_2.26 ynf128 F +GLIBC_2.27 GLIBC_2.27 A +GLIBC_2.27 exp2f F +GLIBC_2.27 expf F GLIBC_2.4 GLIBC_2.4 A diff --git a/sysdeps/unix/sysv/linux/m68k/coldfire/libm.abilist b/sysdeps/unix/sysv/linux/m68k/coldfire/libm.abilist index d0c33d2a11..8095876449 100644 --- a/sysdeps/unix/sysv/linux/m68k/coldfire/libm.abilist +++ b/sysdeps/unix/sysv/linux/m68k/coldfire/libm.abilist @@ -117,6 +117,9 @@ GLIBC_2.25 ufromfpl F GLIBC_2.25 ufromfpx F GLIBC_2.25 ufromfpxf F GLIBC_2.25 ufromfpxl F +GLIBC_2.27 GLIBC_2.27 A +GLIBC_2.27 exp2f F +GLIBC_2.27 expf F GLIBC_2.4 GLIBC_2.4 A GLIBC_2.4 _LIB_VERSION D 0x4 GLIBC_2.4 __clog10 F diff --git a/sysdeps/unix/sysv/linux/m68k/m680x0/libm.abilist b/sysdeps/unix/sysv/linux/m68k/m680x0/libm.abilist index f3de018cd9..5e692dda7b 100644 --- a/sysdeps/unix/sysv/linux/m68k/m680x0/libm.abilist +++ b/sysdeps/unix/sysv/linux/m68k/m680x0/libm.abilist @@ -471,4 +471,7 @@ GLIBC_2.25 ufromfpl F GLIBC_2.25 ufromfpx F GLIBC_2.25 ufromfpxf F GLIBC_2.25 ufromfpxl F +GLIBC_2.27 GLIBC_2.27 A +GLIBC_2.27 exp2f F +GLIBC_2.27 expf F GLIBC_2.4 GLIBC_2.4 A diff --git a/sysdeps/unix/sysv/linux/microblaze/libm.abilist b/sysdeps/unix/sysv/linux/microblaze/libm.abilist index bb872f292a..65f1d5b451 100644 --- a/sysdeps/unix/sysv/linux/microblaze/libm.abilist +++ b/sysdeps/unix/sysv/linux/microblaze/libm.abilist @@ -428,3 +428,6 @@ GLIBC_2.25 ufromfpl F GLIBC_2.25 ufromfpx F GLIBC_2.25 ufromfpxf F GLIBC_2.25 ufromfpxl F +GLIBC_2.27 GLIBC_2.27 A +GLIBC_2.27 exp2f F +GLIBC_2.27 expf F diff --git a/sysdeps/unix/sysv/linux/mips/mips32/libm.abilist b/sysdeps/unix/sysv/linux/mips/mips32/libm.abilist index 000c011495..c32ea5b96a 100644 --- a/sysdeps/unix/sysv/linux/mips/mips32/libm.abilist +++ b/sysdeps/unix/sysv/linux/mips/mips32/libm.abilist @@ -430,6 +430,9 @@ GLIBC_2.25 ufromfpl F GLIBC_2.25 ufromfpx F GLIBC_2.25 ufromfpxf F GLIBC_2.25 ufromfpxl F +GLIBC_2.27 GLIBC_2.27 A +GLIBC_2.27 exp2f F +GLIBC_2.27 expf F GLIBC_2.4 GLIBC_2.4 A GLIBC_2.4 exp2l F _gp_disp _gp_disp A diff --git a/sysdeps/unix/sysv/linux/mips/mips64/libm.abilist b/sysdeps/unix/sysv/linux/mips/mips64/libm.abilist index b9599fee34..18b2aa2404 100644 --- a/sysdeps/unix/sysv/linux/mips/mips64/libm.abilist +++ b/sysdeps/unix/sysv/linux/mips/mips64/libm.abilist @@ -462,4 +462,7 @@ GLIBC_2.25 ufromfpl F GLIBC_2.25 ufromfpx F GLIBC_2.25 ufromfpxf F GLIBC_2.25 ufromfpxl F +GLIBC_2.27 GLIBC_2.27 A +GLIBC_2.27 exp2f F +GLIBC_2.27 expf F GLIBC_2.4 GLIBC_2.4 A diff --git a/sysdeps/unix/sysv/linux/nios2/libm.abilist b/sysdeps/unix/sysv/linux/nios2/libm.abilist index c858ed5907..e492a68e9d 100644 --- a/sysdeps/unix/sysv/linux/nios2/libm.abilist +++ b/sysdeps/unix/sysv/linux/nios2/libm.abilist @@ -428,3 +428,6 @@ GLIBC_2.25 ufromfpl F GLIBC_2.25 ufromfpx F GLIBC_2.25 ufromfpxf F GLIBC_2.25 ufromfpxl F +GLIBC_2.27 GLIBC_2.27 A +GLIBC_2.27 exp2f F +GLIBC_2.27 expf F diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libm.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libm.abilist index 13ea493ac8..ad8f0372f4 100644 --- a/sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libm.abilist +++ b/sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libm.abilist @@ -473,6 +473,9 @@ GLIBC_2.25 ufromfpl F GLIBC_2.25 ufromfpx F GLIBC_2.25 ufromfpxf F GLIBC_2.25 ufromfpxl F +GLIBC_2.27 GLIBC_2.27 A +GLIBC_2.27 exp2f F +GLIBC_2.27 expf F GLIBC_2.4 GLIBC_2.4 A GLIBC_2.4 __clog10l F GLIBC_2.4 __finitel F diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libm.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libm.abilist index ff6dc7a361..9c26b5b809 100644 --- a/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libm.abilist +++ b/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libm.abilist @@ -472,6 +472,9 @@ GLIBC_2.25 ufromfpl F GLIBC_2.25 ufromfpx F GLIBC_2.25 ufromfpxf F GLIBC_2.25 ufromfpxl F +GLIBC_2.27 GLIBC_2.27 A +GLIBC_2.27 exp2f F +GLIBC_2.27 expf F GLIBC_2.4 GLIBC_2.4 A GLIBC_2.4 __clog10l F GLIBC_2.4 __finitel F diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc64/libm-le.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc64/libm-le.abilist index d79cb99325..8e36699f28 100644 --- a/sysdeps/unix/sysv/linux/powerpc/powerpc64/libm-le.abilist +++ b/sysdeps/unix/sysv/linux/powerpc/powerpc64/libm-le.abilist @@ -605,3 +605,6 @@ GLIBC_2.26 ufromfpxf128 F GLIBC_2.26 y0f128 F GLIBC_2.26 y1f128 F GLIBC_2.26 ynf128 F +GLIBC_2.27 GLIBC_2.27 A +GLIBC_2.27 exp2f F +GLIBC_2.27 expf F diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc64/libm.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc64/libm.abilist index afd381791a..9ca0c3ccfc 100644 --- a/sysdeps/unix/sysv/linux/powerpc/powerpc64/libm.abilist +++ b/sysdeps/unix/sysv/linux/powerpc/powerpc64/libm.abilist @@ -148,6 +148,9 @@ GLIBC_2.25 ufromfpl F GLIBC_2.25 ufromfpx F GLIBC_2.25 ufromfpxf F GLIBC_2.25 ufromfpxl F +GLIBC_2.27 GLIBC_2.27 A +GLIBC_2.27 exp2f F +GLIBC_2.27 expf F GLIBC_2.3 GLIBC_2.3 A GLIBC_2.3 _LIB_VERSION D 0x4 GLIBC_2.3 __clog10 F diff --git a/sysdeps/unix/sysv/linux/s390/s390-32/libm.abilist b/sysdeps/unix/sysv/linux/s390/s390-32/libm.abilist index 604dff18d4..8a79f0137f 100644 --- a/sysdeps/unix/sysv/linux/s390/s390-32/libm.abilist +++ b/sysdeps/unix/sysv/linux/s390/s390-32/libm.abilist @@ -460,6 +460,9 @@ GLIBC_2.25 ufromfpl F GLIBC_2.25 ufromfpx F GLIBC_2.25 ufromfpxf F GLIBC_2.25 ufromfpxl F +GLIBC_2.27 GLIBC_2.27 A +GLIBC_2.27 exp2f F +GLIBC_2.27 expf F GLIBC_2.4 GLIBC_2.4 A GLIBC_2.4 __clog10l F GLIBC_2.4 __finitel F diff --git a/sysdeps/unix/sysv/linux/s390/s390-64/libm.abilist b/sysdeps/unix/sysv/linux/s390/s390-64/libm.abilist index b56701e350..df81853618 100644 --- a/sysdeps/unix/sysv/linux/s390/s390-64/libm.abilist +++ b/sysdeps/unix/sysv/linux/s390/s390-64/libm.abilist @@ -458,6 +458,9 @@ GLIBC_2.25 ufromfpl F GLIBC_2.25 ufromfpx F GLIBC_2.25 ufromfpxf F GLIBC_2.25 ufromfpxl F +GLIBC_2.27 GLIBC_2.27 A +GLIBC_2.27 exp2f F +GLIBC_2.27 expf F GLIBC_2.4 GLIBC_2.4 A GLIBC_2.4 __clog10l F GLIBC_2.4 __finitel F diff --git a/sysdeps/unix/sysv/linux/sh/libm.abilist b/sysdeps/unix/sysv/linux/sh/libm.abilist index 6b24852b68..6b6a42dc9c 100644 --- a/sysdeps/unix/sysv/linux/sh/libm.abilist +++ b/sysdeps/unix/sysv/linux/sh/libm.abilist @@ -429,5 +429,8 @@ GLIBC_2.25 ufromfpl F GLIBC_2.25 ufromfpx F GLIBC_2.25 ufromfpxf F GLIBC_2.25 ufromfpxl F +GLIBC_2.27 GLIBC_2.27 A +GLIBC_2.27 exp2f F +GLIBC_2.27 expf F GLIBC_2.4 GLIBC_2.4 A GLIBC_2.4 exp2l F diff --git a/sysdeps/unix/sysv/linux/sparc/sparc32/libm.abilist b/sysdeps/unix/sysv/linux/sparc/sparc32/libm.abilist index 61042ba147..24d67d22e1 100644 --- a/sysdeps/unix/sysv/linux/sparc/sparc32/libm.abilist +++ b/sysdeps/unix/sysv/linux/sparc/sparc32/libm.abilist @@ -464,6 +464,9 @@ GLIBC_2.25 ufromfpl F GLIBC_2.25 ufromfpx F GLIBC_2.25 ufromfpxf F GLIBC_2.25 ufromfpxl F +GLIBC_2.27 GLIBC_2.27 A +GLIBC_2.27 exp2f F +GLIBC_2.27 expf F GLIBC_2.4 GLIBC_2.4 A GLIBC_2.4 __clog10l F GLIBC_2.4 __finitel F diff --git a/sysdeps/unix/sysv/linux/sparc/sparc64/libm.abilist b/sysdeps/unix/sysv/linux/sparc/sparc64/libm.abilist index d071835880..2fdccc0de3 100644 --- a/sysdeps/unix/sysv/linux/sparc/sparc64/libm.abilist +++ b/sysdeps/unix/sysv/linux/sparc/sparc64/libm.abilist @@ -461,4 +461,7 @@ GLIBC_2.25 ufromfpl F GLIBC_2.25 ufromfpx F GLIBC_2.25 ufromfpxf F GLIBC_2.25 ufromfpxl F +GLIBC_2.27 GLIBC_2.27 A +GLIBC_2.27 exp2f F +GLIBC_2.27 expf F GLIBC_2.4 GLIBC_2.4 A diff --git a/sysdeps/unix/sysv/linux/tile/tilegx/tilegx32/libm.abilist b/sysdeps/unix/sysv/linux/tile/tilegx/tilegx32/libm.abilist index 0059c27fa2..98bc348f91 100644 --- a/sysdeps/unix/sysv/linux/tile/tilegx/tilegx32/libm.abilist +++ b/sysdeps/unix/sysv/linux/tile/tilegx/tilegx32/libm.abilist @@ -429,3 +429,6 @@ GLIBC_2.25 ufromfpl F GLIBC_2.25 ufromfpx F GLIBC_2.25 ufromfpxf F GLIBC_2.25 ufromfpxl F +GLIBC_2.27 GLIBC_2.27 A +GLIBC_2.27 exp2f F +GLIBC_2.27 expf F diff --git a/sysdeps/unix/sysv/linux/tile/tilegx/tilegx64/libm.abilist b/sysdeps/unix/sysv/linux/tile/tilegx/tilegx64/libm.abilist index 0059c27fa2..98bc348f91 100644 --- a/sysdeps/unix/sysv/linux/tile/tilegx/tilegx64/libm.abilist +++ b/sysdeps/unix/sysv/linux/tile/tilegx/tilegx64/libm.abilist @@ -429,3 +429,6 @@ GLIBC_2.25 ufromfpl F GLIBC_2.25 ufromfpx F GLIBC_2.25 ufromfpxf F GLIBC_2.25 ufromfpxl F +GLIBC_2.27 GLIBC_2.27 A +GLIBC_2.27 exp2f F +GLIBC_2.27 expf F diff --git a/sysdeps/unix/sysv/linux/tile/tilepro/libm.abilist b/sysdeps/unix/sysv/linux/tile/tilepro/libm.abilist index 0059c27fa2..98bc348f91 100644 --- a/sysdeps/unix/sysv/linux/tile/tilepro/libm.abilist +++ b/sysdeps/unix/sysv/linux/tile/tilepro/libm.abilist @@ -429,3 +429,6 @@ GLIBC_2.25 ufromfpl F GLIBC_2.25 ufromfpx F GLIBC_2.25 ufromfpxf F GLIBC_2.25 ufromfpxl F +GLIBC_2.27 GLIBC_2.27 A +GLIBC_2.27 exp2f F +GLIBC_2.27 expf F diff --git a/sysdeps/unix/sysv/linux/x86_64/64/libm.abilist b/sysdeps/unix/sysv/linux/x86_64/64/libm.abilist index 44473c2cbe..e6fd3fe3df 100644 --- a/sysdeps/unix/sysv/linux/x86_64/64/libm.abilist +++ b/sysdeps/unix/sysv/linux/x86_64/64/libm.abilist @@ -600,4 +600,7 @@ GLIBC_2.26 ufromfpxf128 F GLIBC_2.26 y0f128 F GLIBC_2.26 y1f128 F GLIBC_2.26 ynf128 F +GLIBC_2.27 GLIBC_2.27 A +GLIBC_2.27 exp2f F +GLIBC_2.27 expf F GLIBC_2.4 GLIBC_2.4 A diff --git a/sysdeps/unix/sysv/linux/x86_64/x32/libm.abilist b/sysdeps/unix/sysv/linux/x86_64/x32/libm.abilist index cc19a73112..afa7b98697 100644 --- a/sysdeps/unix/sysv/linux/x86_64/x32/libm.abilist +++ b/sysdeps/unix/sysv/linux/x86_64/x32/libm.abilist @@ -599,3 +599,6 @@ GLIBC_2.26 ufromfpxf128 F GLIBC_2.26 y0f128 F GLIBC_2.26 y1f128 F GLIBC_2.26 ynf128 F +GLIBC_2.27 GLIBC_2.27 A +GLIBC_2.27 exp2f F +GLIBC_2.27 expf F -- 2.11.0