From patchwork Thu Dec 19 20:13:05 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Adhemerval Zanella X-Patchwork-Id: 852050 Delivered-To: patch@linaro.org Received: by 2002:a5d:4888:0:b0:385:e875:8a9e with SMTP id g8csp1696736wrq; Thu, 19 Dec 2024 12:21:17 -0800 (PST) X-Forwarded-Encrypted: i=3; AJvYcCV6eFkRSfRGavdm8jU0wkyZgAO/RphdJD2u7EovgFC1euX5BwfgTzFjlZyOegQ3x4DUhrykBQ==@linaro.org X-Google-Smtp-Source: AGHT+IEI0612y5s6zXjOlCCW8EyEvVl6oWkuWwTthGVWeHh7oaP/HIkZy9PHARSb9UEDV5CCh6N/ X-Received: by 2002:a05:6214:1307:b0:6d8:a4fd:d253 with SMTP id 6a1803df08f44-6dd2334b59cmr5421006d6.21.1734639677127; Thu, 19 Dec 2024 12:21:17 -0800 (PST) ARC-Seal: i=2; a=rsa-sha256; t=1734639677; cv=pass; d=google.com; s=arc-20240605; b=gPmUZdpJ+j2zL7JYINAx3gqXjVsjLPFyZoSmKuEVum7MTeo9qWPJDA+giopZEDuG4R 2kxXbCgoGrubFDAYxtLFWTp32+Hh4yHMj4xHN9uMtOpCcF+4sbuX98IzGr5sIkOi+oYU FF01xai/n8puwAd1sDovqlAAuNAr+Lp48DugN4igg3XLcp5y5ePBD5hczuphDbwEm1g4 9NWXN5593xyRJPAtOXvmpxH9CKg8YL+WWrWKiMYd3y1kVZ8X7eorFfPGV8OC+AoXGm9S d69SkZcgWGI02alQEdJOi4PqGwi26qhTAJ2KzB3K/0P/hR7rJt/CiuJ4h7Es3RvmFPvh kVbQ== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20240605; h=errors-to:list-subscribe:list-help:list-post:list-archive :list-unsubscribe:list-id:precedence:content-transfer-encoding :mime-version:references:in-reply-to:message-id:date:subject:cc:to :from:dkim-signature:arc-filter:dmarc-filter:delivered-to; bh=dj0HUjakhG2cD7s3EyQm9CZPOeQ/Q20OqZ9NTdeHz7k=; fh=c0s3Uezv7Rag51rMi6q2BcriyJCPC/LMNTAVHmiKG0w=; b=kbrPrlpYGS8uWqStaRTbxR7zXW+aiyNt7o9hwsouUWfjQX/BhjQOS9cLMEdLH27c4Q bWvuUi0gL8uvYWSOxhn+g8oovuB8lPhGAwQNE4pienzoeRDMjgEXKkjtMy1jU71YJaDl ZjHLS94bJfUwnmS5Iq9ZuL5kUNjrjHi1XxepT9QPcac+62cdBIYDM8/pyYINRDe1aJ/9 q87Cmona6l+/LALd+BBFPndF0n7HUm5tcpdntJy60fcU1TykvgWUeDJx/v1dbRV/CrcR XzGr+EV4v8e+KFfob8DtvHkx7Qt5zr5ur312d/3nhNY47qs0L4hL6OEU+nQUfjJ6qpjO faQg==; dara=google.com ARC-Authentication-Results: i=2; mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=GcY3fxMr; arc=pass (i=1); spf=pass (google.com: domain of libc-alpha-bounces~patch=linaro.org@sourceware.org designates 8.43.85.97 as permitted sender) smtp.mailfrom="libc-alpha-bounces~patch=linaro.org@sourceware.org"; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org Return-Path: Received: from server2.sourceware.org (server2.sourceware.org. [8.43.85.97]) by mx.google.com with ESMTPS id 6a1803df08f44-6dd18101e28si22670446d6.41.2024.12.19.12.21.16 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 19 Dec 2024 12:21:17 -0800 (PST) Received-SPF: pass (google.com: domain of libc-alpha-bounces~patch=linaro.org@sourceware.org designates 8.43.85.97 as permitted sender) client-ip=8.43.85.97; Authentication-Results: mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=GcY3fxMr; arc=pass (i=1); spf=pass (google.com: domain of libc-alpha-bounces~patch=linaro.org@sourceware.org designates 8.43.85.97 as permitted sender) smtp.mailfrom="libc-alpha-bounces~patch=linaro.org@sourceware.org"; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: from server2.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id BC7253858CDA for ; Thu, 19 Dec 2024 20:21:16 +0000 (GMT) X-Original-To: libc-alpha@sourceware.org Delivered-To: libc-alpha@sourceware.org Received: from mail-pl1-x635.google.com (mail-pl1-x635.google.com [IPv6:2607:f8b0:4864:20::635]) by sourceware.org (Postfix) with ESMTPS id 8EBCF3858D21 for ; Thu, 19 Dec 2024 20:20:12 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 8EBCF3858D21 Authentication-Results: sourceware.org; dmarc=pass (p=none dis=none) header.from=linaro.org Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=linaro.org ARC-Filter: OpenARC Filter v1.0.0 sourceware.org 8EBCF3858D21 Authentication-Results: server2.sourceware.org; arc=none smtp.remote-ip=2607:f8b0:4864:20::635 ARC-Seal: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1734639612; cv=none; b=SWaXO/9pTIGoJGuTF7gpxR+znO8BE4/WTR7qDRSyVbopLD8qQM3mbrzNvQs5sAJSyoHqe+1wTH7xU9FK0ULqb5n695ZTbuLDevxREfxFqpbjVVfZb956j8/GtykYVqaFsuiI1008oDQFVHiUBpyeignd14QDz+F+QUfa5jfrqOs= ARC-Message-Signature: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1734639612; c=relaxed/simple; bh=8slRXVfu5u2AgbRtUP0Q86xaze9dzBlH8OqdIg4I1T4=; h=DKIM-Signature:From:To:Subject:Date:Message-ID:MIME-Version; b=LrXb4EUhJaR5RiF5dMzfV/I1lqkPkTz67l/hdE+XbXJEIyjWaY/SfJDLS0xaAq88zEA23fGwZvAF1k7wO9CASS1vZ+gwTSUSnEQR4V00MuGag2WTfRxwtlYOkISWgpwMo5oeR0erLEnNBSH5v5sGZTDkO2UV2SGRq9QoSHthyhw= ARC-Authentication-Results: i=1; server2.sourceware.org Received: by mail-pl1-x635.google.com with SMTP id d9443c01a7336-2166022c5caso10586225ad.2 for ; Thu, 19 Dec 2024 12:20:12 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1734639611; x=1735244411; darn=sourceware.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=dj0HUjakhG2cD7s3EyQm9CZPOeQ/Q20OqZ9NTdeHz7k=; b=GcY3fxMr/C3Alq41t90J6Aqs3pz4uujM7DDKnoSgFk7jj2nJGAZVmlCm5YoHwkVisv v3F2N6QS4dHZtc7chbQA9Vyw4xLQJif4snJ8tyRUBN130i2W7jEwuXaYdNYyhSsuVSnu PuYJTlGyv+XT+OUzX+9zCvuLB25bhY3BVAvOrQ7Rs19u7yhFL9NtVSGGassBSp+fK6cP 20vrj7bPriHK30EGOuWwqMHx+rZga5mSuUteOmtvN7esMVcpHPqXrm/ItQgeqquiED3K GVdKsBQ2E/hymKNHrq4O1f3XtsYLDbgBjtlJ2C7hD5ePk1eGMEzwwQXfjNXL5mX3MrXw MQ3Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1734639611; x=1735244411; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=dj0HUjakhG2cD7s3EyQm9CZPOeQ/Q20OqZ9NTdeHz7k=; b=pau5QJCvnpHKmuZJAKyRd2jSn0Jh4DeTJbXnEpBUMYaAKE+E3q4SnHMIvfKvOrgHUj KW2X6Z5heeDr86k6yZX5TRjBYr0cypCAWMrW5QtKv0Km7XIs1toVJqGCoMTSt2Hoh6M+ nObE7eoGAssCyv7pMyEkGxKLQfAPINopUBHNEHoS97rrJysyPcMbwSBy75v4EnuyAwL0 ++kl0s1i/ZvMLO4fLOpRt4E0HR4bYheTrF3I9b3UTr5VuQSIJkDyockmH1IwgZ0DmdJZ MDvyN4WbElI87FUJTwxBVN4TCsVu3GRpw75WAypT3oNnU5Sz2pJIdL708x9qR+yCeTRv mTQQ== X-Gm-Message-State: AOJu0YzaToyX3LLdOTU7BtgGEsrfyIAfidElZUOywL2aBzsVBBG1prOv lJ0LT5tS4Jth1+7Nl2QKvz2b8Nd1r5UhTj1lT3L45VFoPkg+cc5xPrLZ0LX3t+MaGSWZ6Xn+3N9 P X-Gm-Gg: ASbGncth0RkyfX+EEf5svZ+UU/Q8LZR75dhGt2odJoikHCR/iHv1rLAKHOLxzNqVvVd nulIv9Dzo9/UdOc+4Y/m8bx/eeTZUp4KZHkbmOz3rjlJUKaFhF4cH+jrT7k+/aTsFY9gjMi8VjB 3UXOH4Q13HyiHp2wDtzdrfL2k5AutcX4V7MKPwTmxlq6fnoLRdpUHbp7IJnAzJtZ+qNH3Ajs3/F BX3Of08HBV8+hjXSKDjd8bEItGE9ZunVv0FZhOYTAqp7wvhlw1O9Gbz7WJhgjMBqGABqw== X-Received: by 2002:a17:903:2281:b0:216:386e:dbf with SMTP id d9443c01a7336-219e6ea2660mr1405265ad.20.1734639609480; Thu, 19 Dec 2024 12:20:09 -0800 (PST) Received: from mandiga.. ([2804:1b3:a7c3:2d5b:c4ce:4df0:8543:f129]) by smtp.gmail.com with ESMTPSA id d9443c01a7336-219dca02589sm16360645ad.257.2024.12.19.12.20.07 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 19 Dec 2024 12:20:09 -0800 (PST) From: Adhemerval Zanella To: libc-alpha@sourceware.org Cc: DJ Delorie , Joseph Myers , Paul Zimmermann Subject: [PATCH 01/10] benchtests: Add lgammaf_r benchmark Date: Thu, 19 Dec 2024 17:13:05 -0300 Message-ID: <20241219202003.2651277-2-adhemerval.zanella@linaro.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20241219202003.2651277-1-adhemerval.zanella@linaro.org> References: <20241219202003.2651277-1-adhemerval.zanella@linaro.org> MIME-Version: 1.0 X-BeenThere: libc-alpha@sourceware.org X-Mailman-Version: 2.1.30 Precedence: list List-Id: Libc-alpha mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: libc-alpha-bounces~patch=linaro.org@sourceware.org Random inputs in the range [-20.0,20.0]. --- benchtests/Makefile | 1 + benchtests/lgammaf_r-inputs | 1005 +++++++++++++++++++++++++++++++++++ 2 files changed, 1006 insertions(+) create mode 100644 benchtests/lgammaf_r-inputs diff --git a/benchtests/Makefile b/benchtests/Makefile index ce288a81c8..4ab4f9386e 100644 --- a/benchtests/Makefile +++ b/benchtests/Makefile @@ -79,6 +79,7 @@ bench-math := \ j1 \ lgamma \ lgammaf \ + lgammaf_r \ llrint \ llrintf \ log \ diff --git a/benchtests/lgammaf_r-inputs b/benchtests/lgammaf_r-inputs new file mode 100644 index 0000000000..fa4e10ee4d --- /dev/null +++ b/benchtests/lgammaf_r-inputs @@ -0,0 +1,1005 @@ +## args: float: +## ret: float +## includes: math.h +# Random inputs in the range [-20.0,20.0] +## name: workload-random-m20-p20 +-0x1.7eb52p+1 +-0x1.69a06p+3 +-0x1.a042ccp+3 +0x1.7e9dc8p+3 +-0x1.5d8cap+1 +-0x1.1755b4p+4 +0x1.041908p+4 +0x1.075de4p+4 +0x1.4ab608p+3 +0x1.f4b4a8p+3 +0x1.3ff54p+4 +0x1.fdc038p+3 +0x1.56e1p+3 +0x1.9b90e8p+2 +0x1.1b6d8p+0 +0x1.ebe99p+2 +-0x1.32d9f6p+4 +-0x1.077c24p+3 +0x1.98f028p+3 +-0x1.20faf2p+4 +0x1.1363a8p+2 +-0x1.9636p-3 +-0x1.b2ea6ap+3 +0x1.c45a7p+3 +-0x1.f1bd7cp+3 +0x1.18877p+4 +-0x1.c9e64p+0 +0x1.1d1798p+4 +-0x1.0f91dcp+3 +0x1.9e1e5p+2 +-0x1.147684p+3 +-0x1.c2d68p+1 +0x1.6da84p+1 +0x1.90c538p+3 +0x1.83246p+3 +0x1.c7aa6p+3 +0x1.036b18p+2 +0x1.6ccf3p+2 +0x1.2961cp+1 +0x1.e7c7d8p+2 +0x1.f867ep+3 +0x1.b3a65p+1 +0x1.6b55p+1 +-0x1.99d596p+3 +-0x1.95a76cp+3 +-0x1.11793ep+4 +0x1.a2534p+3 +-0x1.f1a64cp+2 +-0x1.dc91b4p+2 +0x1.0f6d04p+3 +-0x1.07058p+1 +-0x1.fedfc6p+3 +-0x1.52c68p-1 +-0x1.6efcp-1 +-0x1.ad3c2p+2 +-0x1.182d2p+0 +0x1.72c268p+2 +0x1.39c078p+2 +-0x1.75d314p+2 +-0x1.3a54c8p+3 +-0x1.9401dp+3 +0x1.f9f848p+2 +-0x1.e4664p+2 +-0x1.f581c4p+2 +0x1.3950e8p+4 +-0x1.19358p+0 +0x1.1f4578p+4 +0x1.3b86p-1 +-0x1.4658bp+1 +-0x1.5a405cp+3 +-0x1.1ba79cp+4 +-0x1.901d4p+0 +0x1.728cep+3 +0x1.3f3e6p+4 +-0x1.cfbbep+3 +-0x1.bb97p+0 +-0x1.5b482p+1 +0x1.1e8bp-2 +-0x1.0ee5aap+4 +-0x1.f752p-2 +0x1.2f51d4p+4 +0x1.259674p+4 +-0x1.1bdf68p+2 +0x1.8c3e18p+3 +-0x1.8102e4p+2 +0x1.8da2a8p+3 +0x1.63d22p+2 +0x1.e1476p+0 +-0x1.74c5ep+1 +0x1.a6118p+3 +-0x1.cd828p+0 +-0x1.337bd6p+4 +0x1.e47aep+2 +-0x1.60d3eep+3 +0x1.065e1cp+3 +0x1.9ab6p-2 +-0x1.2fc746p+4 +0x1.3c28a8p+4 +-0x1.ded2eep+3 +-0x1.d44338p+2 +-0x1.44529cp+3 +0x1.3a3b9p+4 +0x1.c4e34p+0 +0x1.a46d2p+3 +0x1.f90bbp+3 +0x1.36ab2p+4 +0x1.1d5c4p+4 +-0x1.b46ap+2 +-0x1.9a49dp+2 +0x1.ce1468p+3 +0x1.9d6e28p+3 +-0x1.2afb96p+4 +0x1.14c484p+4 +0x1.c8b62p+2 +0x1.0b2fc4p+4 +-0x1.130e1ep+4 +-0x1.07ac9cp+3 +-0x1.a98544p+2 +0x1.c9e418p+3 +0x1.9e3978p+3 +-0x1.8ce2ap+0 +-0x1.070784p+4 +-0x1.fd5a52p+3 +-0x1.a6442p+0 +-0x1.60f7dp+1 +0x1.b47e88p+3 +0x1.de245p+3 +0x1.229394p+3 +0x1.0384c8p+4 +0x1.057fbp+3 +-0x1.fd2bfcp+3 +0x1.ad41fp+3 +0x1.c47a08p+3 +0x1.27e794p+3 +0x1.d44cap+3 +-0x1.92fa8p-2 +-0x1.c413e4p+3 +0x1.3a858p-2 +0x1.210fcp+1 +-0x1.373444p+2 +-0x1.48565p+2 +0x1.f29b5p+3 +-0x1.3af7cp+1 +0x1.a3c87p+1 +-0x1.0f344p-1 +0x1.16744p+4 +0x1.2a06ccp+4 +0x1.23efe4p+4 +-0x1.257758p+4 +0x1.83ff5p+3 +-0x1.089d74p+4 +-0x1.9545ep+0 +-0x1.c682dcp+2 +0x1.17fp+0 +0x1.28db38p+4 +-0x1.600dc6p+3 +0x1.d7f13p+3 +-0x1.c88334p+2 +-0x1.1e2494p+2 +0x1.0346fcp+4 +-0x1.5b582cp+2 +-0x1.fd051p+3 +0x1.a86548p+3 +-0x1.37805ep+4 +-0x1.994474p+3 +0x1.4585ep+2 +0x1.58541p+2 +-0x1.02a9dap+4 +0x1.45ce08p+3 +-0x1.33222p+0 +-0x1.028c1cp+2 +-0x1.0f0e5cp+4 +-0x1.deeacp+2 +-0x1.02de5cp+3 +-0x1.513c6p+1 +-0x1.4af08p-1 +0x1.086f8p+4 +0x1.a2261p+3 +0x1.391728p+4 +0x1.f0f88p+0 +-0x1.968096p+3 +0x1.1611a4p+4 +0x1.c0b57p+3 +-0x1.36ba5p+3 +-0x1.7bacp-5 +-0x1.2ef69ep+4 +-0x1.048fep+2 +0x1.bf8b98p+3 +0x1.325a54p+4 +0x1.206e5p+2 +-0x1.ea23b6p+3 +0x1.3150ecp+3 +-0x1.2063ep+1 +0x1.a0f8dp+3 +0x1.73abcp+0 +0x1.1049cp+0 +-0x1.d3586p+1 +-0x1.27cc18p+2 +0x1.ba6ap-1 +0x1.63ccfp+1 +-0x1.bc6f4p+0 +-0x1.22c0bp+4 +-0x1.18872cp+4 +0x1.6df3dp+1 +0x1.6944c4p+3 +-0x1.ddbf22p+3 +-0x1.7a82cp+0 +-0x1.439ee2p+3 +-0x1.73d2fep+3 +-0x1.211e98p+3 +-0x1.5f885ap+3 +0x1.0f4e08p+3 +0x1.cb8c8p+3 +0x1.d869p+1 +-0x1.4a25bp+3 +0x1.fd608p-2 +0x1.d74f8p-2 +0x1.f4d118p+3 +-0x1.9ae6p+0 +-0x1.072e24p+4 +-0x1.cc707cp+3 +0x1.133c18p+3 +-0x1.90414p+0 +0x1.27941p+1 +0x1.59fb3cp+3 +-0x1.06e858p+2 +-0x1.fcaeap+0 +0x1.eb5dep+1 +-0x1.416c8p+0 +0x1.1c7b6cp+4 +-0x1.2a6e2cp+3 +0x1.2c761cp+4 +0x1.fd71cp+3 +0x1.35e09p+3 +-0x1.acb3a4p+2 +0x1.2e9948p+4 +-0x1.2ee254p+4 +-0x1.a1ea8p-1 +0x1.68304p+0 +0x1.ce08c8p+2 +0x1.d1176p+3 +-0x1.53cd4cp+2 +0x1.342a5p+2 +0x1.c558ap+2 +0x1.9ebf9p+3 +-0x1.9a7f1cp+2 +-0x1.e29dp-3 +-0x1.2ebe4p-1 +-0x1.1ea6b8p+4 +0x1.591968p+3 +0x1.93038p+3 +-0x1.362f32p+3 +0x1.56d2bp+2 +-0x1.6ec0d6p+3 +0x1.ca1f9p+3 +0x1.decdc8p+3 +-0x1.9fdf2p+1 +-0x1.784008p+2 +-0x1.b4c4acp+2 +-0x1.3727bp+4 +-0x1.1d152p+3 +-0x1.55e51cp+3 +-0x1.34c1e8p+3 +-0x1.4cfa88p+2 +-0x1.aa19cp+1 +0x1.600a1cp+3 +0x1.1c161cp+4 +0x1.df4bep+3 +0x1.ef037p+3 +-0x1.34b5ccp+3 +0x1.3a8154p+4 +0x1.014658p+3 +0x1.616fbp+2 +0x1.f607a8p+3 +-0x1.1eb464p+2 +-0x1.6a8d44p+3 +-0x1.302918p+4 +0x1.2637e4p+4 +0x1.1f8b3p+4 +0x1.a98fbp+2 +-0x1.d38cp+1 +0x1.1d0cep+3 +-0x1.8f8cc4p+2 +-0x1.62a05cp+2 +-0x1.06cadcp+3 +0x1.07a42cp+4 +0x1.2b4fep+4 +0x1.11db8p+3 +-0x1.3d2af8p+2 +-0x1.677808p+3 +0x1.ab9cp-3 +-0x1.5ade42p+3 +0x1.253aecp+4 +0x1.3f8ad4p+4 +0x1.338edcp+4 +-0x1.2ed73ap+3 +-0x1.1a20cp+4 +0x1.1f377p+1 +-0x1.c7d718p+2 +0x1.82abbp+3 +0x1.a93ffp+2 +-0x1.5a62ep+2 +-0x1.1175d8p+2 +-0x1.a801eep+3 +-0x1.0b381cp+4 +-0x1.10e558p+4 +0x1.3ecc98p+4 +-0x1.5825p+0 +0x1.863f9p+2 +0x1.6f04ap+1 +-0x1.1a1926p+3 +-0x1.a3151p+1 +0x1.911b9p+3 +-0x1.57857p+3 +0x1.0321f4p+4 +0x1.507c5p+1 +-0x1.1e125ep+4 +0x1.384f44p+4 +-0x1.23e7ap+4 +0x1.888bdp+3 +0x1.93c38p+3 +-0x1.f7861cp+3 +0x1.3d4364p+4 +-0x1.d93914p+3 +0x1.cdba88p+3 +-0x1.6ddaap+3 +0x1.a7cb2p+2 +0x1.847aa8p+3 +-0x1.bea42p+1 +-0x1.8412p+2 +0x1.2376p+3 +0x1.8abccp-1 +-0x1.25496p+1 +0x1.430848p+3 +-0x1.152338p+4 +0x1.12cc7p+2 +0x1.2d03fp+2 +0x1.2e46cp+3 +0x1.39566p+0 +0x1.6a4798p+3 +-0x1.f574dp+1 +-0x1.c8adfp+1 +-0x1.0a2ed4p+2 +0x1.1df95cp+4 +-0x1.0fabbp+1 +0x1.0baa1cp+3 +-0x1.197b5ep+4 +0x1.b094p-1 +-0x1.01ffp-3 +0x1.60a48p+1 +-0x1.05de5ap+4 +0x1.b893dp+1 +0x1.3cad2p+3 +0x1.126c88p+2 +-0x1.b64328p+3 +0x1.067a64p+4 +-0x1.92c75p+1 +-0x1.ad879cp+2 +0x1.78746p+0 +-0x1.3781f4p+2 +-0x1.34ffp+2 +0x1.d6e738p+3 +0x1.ccae18p+2 +0x1.2e8ff4p+4 +-0x1.12c228p+4 +-0x1.08a8c4p+4 +-0x1.ff6becp+2 +0x1.fd0368p+3 +-0x1.0ac648p+4 +0x1.414194p+3 +0x1.3882e8p+3 +0x1.0d717cp+4 +-0x1.a9c8d8p+2 +-0x1.e02b7p+3 +0x1.792808p+2 +0x1.334c7p+2 +0x1.37e894p+4 +0x1.8e95p-2 +-0x1.20ff7ep+4 +-0x1.caf154p+3 +-0x1.53509cp+2 +0x1.979b58p+3 +0x1.607b2p+1 +0x1.33468p+1 +-0x1.aa1a48p+3 +0x1.70cc2p+1 +-0x1.e591a4p+3 +0x1.43325p+3 +-0x1.637f0cp+3 +0x1.ac3e08p+2 +-0x1.3889fp+4 +0x1.17e4cp+4 +0x1.5632f8p+3 +0x1.2c0678p+3 +0x1.2dffd8p+4 +-0x1.11832ep+3 +-0x1.baf878p+3 +-0x1.07326ep+4 +0x1.00b694p+3 +-0x1.2d915p+3 +0x1.612204p+3 +-0x1.ffd36cp+2 +-0x1.48e0dp+3 +-0x1.9f771p+3 +-0x1.41d732p+3 +0x1.a3162p+1 +-0x1.7fefeep+3 +-0x1.611836p+3 +-0x1.7ca304p+3 +0x1.364dep+1 +-0x1.f328b6p+3 +-0x1.eb5cc4p+2 +0x1.cfbc6p+1 +0x1.56555cp+3 +-0x1.cb04p-5 +0x1.247b24p+4 +-0x1.bb4c18p+2 +-0x1.c0cf6p+3 +-0x1.b8f24p+1 +-0x1.24d9c4p+4 +0x1.2b53acp+4 +-0x1.fca186p+3 +0x1.17dbc4p+4 +0x1.bb3d68p+3 +-0x1.10c93p+1 +-0x1.21131ep+4 +-0x1.dbd96ap+3 +-0x1.3d496p+2 +-0x1.385aap+1 +-0x1.b22a3p+3 +0x1.0ff4fp+3 +-0x1.9ac55p+1 +-0x1.01c6eap+4 +-0x1.2a31e8p+4 +0x1.3558ap+2 +-0x1.670b7p+1 +0x1.f82af8p+3 +-0x1.93662p+0 +-0x1.066bc4p+2 +0x1.735ce8p+2 +0x1.aeedap+1 +-0x1.11b38cp+4 +0x1.ba702p+3 +0x1.0bf764p+4 +0x1.e3d2ep+0 +0x1.0b582p+2 +0x1.c5c058p+2 +-0x1.47cfp-1 +-0x1.6a194p-1 +-0x1.950ba4p+2 +-0x1.17ac8p+3 +-0x1.3e390ap+3 +-0x1.09821p+4 +-0x1.39ca94p+4 +-0x1.22d36ap+4 +-0x1.cb313p+3 +-0x1.050ef8p+4 +0x1.cc263p+3 +-0x1.032e6p+0 +-0x1.fb1102p+3 +-0x1.9aa74p-1 +-0x1.625p-3 +0x1.89c418p+3 +0x1.a8d2fp+3 +0x1.62a768p+2 +0x1.ee6728p+3 +-0x1.4a986cp+3 +0x1.4613e8p+2 +-0x1.1d5034p+3 +-0x1.7ce626p+3 +-0x1.e9f462p+3 +-0x1.ab207ep+3 +-0x1.e23f28p+3 +-0x1.40b06cp+2 +-0x1.ff6638p+3 +0x1.bfdb6p+1 +0x1.6e60d8p+2 +0x1.cc529p+3 +0x1.4167ecp+3 +0x1.0e29b8p+3 +0x1.d4f888p+3 +-0x1.ec6cbp+2 +0x1.2c792p+2 +-0x1.9dde1ep+3 +-0x1.618d6p+3 +-0x1.88a0bep+3 +-0x1.f14488p+3 +-0x1.ca6bap+3 +-0x1.5f8814p+3 +0x1.215de4p+3 +-0x1.32241cp+4 +0x1.1f2508p+4 +-0x1.8f06dap+3 +-0x1.054538p+4 +-0x1.0680c4p+3 +0x1.10439p+3 +-0x1.e1b68p+0 +0x1.cd0e88p+3 +-0x1.1592a8p+2 +-0x1.a754acp+3 +0x1.2bec94p+4 +0x1.70f58p+3 +-0x1.fb1e7cp+3 +0x1.71723p+3 +-0x1.2a1p-7 +0x1.c878fp+2 +-0x1.83fde8p+2 +-0x1.490f72p+3 +0x1.6ac254p+3 +0x1.f78218p+2 +-0x1.c104ecp+3 +0x1.ab7718p+2 +0x1.061ac4p+4 +0x1.1dfcf8p+2 +-0x1.0d3aa4p+4 +-0x1.09ddc4p+3 +0x1.05722p+1 +0x1.22f90cp+3 +-0x1.f3350ap+3 +0x1.c1d95p+2 +0x1.d134ep+3 +0x1.e630ap+3 +-0x1.f2fe6p+1 +-0x1.8208p-3 +-0x1.feedc8p+2 +-0x1.d65438p+3 +0x1.cd12c8p+3 +0x1.19a36p+2 +0x1.a3624p-1 +0x1.b0132p+2 +-0x1.a3bc68p+3 +-0x1.a62c86p+3 +-0x1.b5257ep+3 +0x1.3db9cp+1 +-0x1.24a36p+0 +-0x1.8c41dcp+3 +-0x1.bf138p+0 +0x1.0ca8ep+3 +-0x1.dd6254p+3 +-0x1.629638p+3 +0x1.17703p+2 +-0x1.0e91f6p+4 +-0x1.10c2ecp+4 +0x1.3108ep+0 +-0x1.b7d99p+3 +-0x1.163694p+4 +-0x1.63cdecp+2 +0x1.3875fp+1 +-0x1.8e3642p+3 +0x1.73de0cp+3 +-0x1.092a1ap+3 +0x1.554678p+3 +0x1.0b42ep+2 +-0x1.d66b86p+3 +0x1.a5a9c8p+2 +0x1.97605p+3 +0x1.a0bb4p+0 +-0x1.2f90cp-1 +-0x1.37a454p+2 +-0x1.8b46p-4 +0x1.216b84p+4 +0x1.19930cp+4 +0x1.04d39p+4 +-0x1.223f04p+4 +-0x1.5d7258p+2 +-0x1.fdee9p+2 +0x1.c6796p+2 +-0x1.5a64dep+3 +-0x1.94751ep+3 +0x1.6b029p+3 +0x1.3ad82cp+4 +0x1.16669p+2 +-0x1.2c3398p+3 +0x1.109ea8p+3 +-0x1.dec63ap+3 +0x1.2c17f8p+4 +-0x1.4d17f8p+3 +0x1.9f8ac8p+3 +0x1.4f1f58p+3 +0x1.93467p+3 +0x1.ea16c8p+2 +-0x1.207d1ep+4 +0x1.3248p-1 +0x1.c1c75p+3 +-0x1.f8a2cp+2 +-0x1.0a216p+1 +0x1.fb09dp+3 +-0x1.bf1268p+3 +-0x1.51c9e4p+3 +-0x1.9d29ep+3 +-0x1.43c7ep+0 +-0x1.0fa932p+4 +-0x1.67b4cp+1 +0x1.1d3bb8p+3 +0x1.3bb1f8p+3 +0x1.20a6fcp+3 +0x1.65ef1p+2 +-0x1.9aeep+1 +0x1.807c8p+1 +0x1.38814p+2 +-0x1.a9c314p+3 +-0x1.2337a2p+4 +0x1.cd515p+3 +0x1.9655ap+3 +0x1.d09898p+3 +0x1.d25bcp+3 +-0x1.3d9a24p+4 +0x1.2d1bbcp+4 +0x1.f0b688p+3 +0x1.7f3d1p+1 +0x1.0183cp+0 +-0x1.b25e58p+3 +-0x1.27daeep+4 +-0x1.1635fap+4 +-0x1.8dc5cp+1 +0x1.532e04p+3 +-0x1.068a64p+4 +0x1.188c04p+4 +0x1.108a3cp+4 +0x1.8cb84p+2 +-0x1.1afcap+4 +-0x1.3f64dep+4 +0x1.09106cp+4 +-0x1.ab759cp+2 +-0x1.daebfcp+3 +0x1.1585ap+1 +-0x1.76fcp-5 +-0x1.2b101cp+3 +0x1.a32f88p+2 +0x1.09988p+1 +-0x1.813c4cp+2 +-0x1.9cf78cp+2 +-0x1.20294p+3 +0x1.8bcaap+3 +-0x1.72461p+1 +-0x1.2ab636p+4 +-0x1.209602p+4 +0x1.27d37cp+4 +-0x1.a514ap+3 +0x1.31e58p-1 +0x1.6132ap+0 +-0x1.77f09ep+3 +-0x1.55dca2p+3 +0x1.efb2ap+2 +0x1.dcd1b8p+3 +-0x1.673234p+2 +-0x1.081d3cp+3 +0x1.24818p+1 +0x1.d8fd08p+2 +0x1.660298p+3 +-0x1.990a3p+2 +-0x1.1aad98p+4 +-0x1.f62b5cp+3 +0x1.670728p+3 +0x1.05fc2p+3 +-0x1.3c13p-1 +-0x1.f02d6p+3 +-0x1.986acp+0 +-0x1.b0d24cp+3 +-0x1.7c816p+2 +-0x1.12493p+2 +0x1.3ecf18p+3 +0x1.1c684p+2 +0x1.ff133p+2 +0x1.a2749p+3 +-0x1.3672e2p+4 +0x1.9f4efp+3 +0x1.eca91p+2 +0x1.13a478p+4 +-0x1.da6926p+3 +-0x1.2d60dap+3 +-0x1.314c8ep+3 +0x1.67725cp+3 +-0x1.7aae38p+3 +-0x1.4423c4p+3 +-0x1.0fe384p+2 +-0x1.100ccp-1 +-0x1.4bb77p+3 +0x1.03f2c4p+4 +0x1.3711d8p+4 +-0x1.7abd8p-1 +0x1.da70b8p+2 +-0x1.e17ee8p+2 +-0x1.52951p+2 +0x1.47082p+2 +0x1.9618cp+0 +-0x1.2c7a4cp+4 +0x1.bb538p+2 +-0x1.26c558p+4 +0x1.a03cp+0 +0x1.b10d68p+2 +0x1.d0d09p+1 +-0x1.e9cedp+2 +0x1.7b275p+3 +0x1.28edc4p+4 +-0x1.dc2fe8p+3 +0x1.1954e8p+4 +0x1.5a0acp+0 +-0x1.8ed08p+0 +0x1.0e8cbp+4 +-0x1.25b558p+2 +-0x1.51f0cap+3 +-0x1.974f52p+3 +-0x1.b10c9p+2 +-0x1.5f5fap+1 +-0x1.101f38p+4 +-0x1.c684fp+2 +-0x1.04614p+0 +-0x1.d1d47ap+3 +0x1.15ae34p+4 +0x1.7ec268p+2 +-0x1.e69aap+1 +-0x1.ac4c9cp+3 +0x1.26cebp+3 +-0x1.aa02ap+0 +-0x1.11f894p+3 +-0x1.d6f856p+3 +-0x1.27908p+1 +-0x1.1fe5fep+3 +-0x1.34be68p+3 +0x1.f92e4p+0 +0x1.932fdp+2 +0x1.443acp-1 +0x1.9dffap+1 +-0x1.62f4p-4 +-0x1.079448p+4 +0x1.a025dp+2 +0x1.12bca8p+2 +-0x1.6ffdbep+3 +0x1.087c5p+2 +0x1.069cfcp+4 +0x1.2c7b5cp+4 +-0x1.4ad3cp+1 +0x1.b2f88p-1 +-0x1.91a6ap+0 +-0x1.2a78d2p+3 +-0x1.87579p+1 +0x1.defb68p+3 +0x1.4c5cacp+3 +0x1.5ee82p+1 +-0x1.13491cp+2 +-0x1.927588p+3 +-0x1.30f1ep+4 +-0x1.5d959p+2 +-0x1.06308p+2 +-0x1.ad78dap+3 +-0x1.b24a08p+2 +-0x1.0d525p+3 +-0x1.96b2f8p+3 +-0x1.7f9184p+2 +-0x1.14e308p+3 +0x1.bb2a68p+3 +-0x1.10984p+0 +-0x1.078992p+4 +0x1.4e4178p+3 +-0x1.4c45dp+1 +0x1.61408p+3 +0x1.d18388p+3 +0x1.09656cp+4 +-0x1.1f058ep+4 +-0x1.25af1cp+4 +-0x1.0b159p+4 +0x1.2dfefp+2 +-0x1.a15ee8p+3 +-0x1.5dd91ap+3 +0x1.a798f8p+3 +0x1.5f804p+0 +-0x1.93decp+1 +0x1.3e5b4cp+3 +0x1.b85d2p+2 +0x1.d40e7p+1 +0x1.201794p+4 +-0x1.13ccb6p+4 +0x1.366ab8p+3 +-0x1.9e2f6p+1 +0x1.f1389p+3 +-0x1.46d9e8p+3 +0x1.73d614p+3 +0x1.eb7028p+3 +-0x1.e1c8p+2 +-0x1.19638p-2 +-0x1.270366p+4 +-0x1.a02e28p+3 +0x1.c9cc4p+3 +0x1.019ee8p+2 +0x1.b39a8p+3 +-0x1.9af1f4p+3 +0x1.f5023p+1 +-0x1.e7746p+3 +0x1.3b5f3p+4 +-0x1.8e4e4p+0 +0x1.49833p+3 +-0x1.bb951ap+3 +-0x1.1cec7ap+4 +-0x1.d25b3cp+3 +-0x1.31c36ep+4 +0x1.d522d8p+3 +-0x1.d2938p-1 +0x1.05b9fp+2 +0x1.7967a4p+3 +-0x1.3e33e8p+4 +-0x1.83457cp+3 +-0x1.1c85dp+1 +0x1.af2e4p-1 +-0x1.7faf44p+2 +0x1.a646cp-1 +-0x1.24368ep+4 +0x1.0ce3f8p+3 +-0x1.b47778p+3 +-0x1.e0ff8p-2 +-0x1.d5411p+3 +0x1.2eaec8p+4 +-0x1.56345cp+3 +-0x1.87282p+3 +-0x1.6c332p+1 +0x1.2e1f38p+4 +0x1.dcd4p-3 +-0x1.b91f58p+2 +-0x1.720c9p+1 +0x1.5a877cp+3 +0x1.d5f14p+1 +-0x1.cc1fcp+3 +0x1.c73f38p+3 +-0x1.f815e4p+3 +0x1.34fec8p+2 +-0x1.de3758p+3 +-0x1.033fdp+3 +-0x1.4af37p+1 +-0x1.ed2a9cp+3 +0x1.3bce5p+4 +0x1.cc3f4p+3 +0x1.4c7f5p+3 +-0x1.8b48e8p+2 +-0x1.5fa2b8p+2 +0x1.13392cp+4 +-0x1.e33a52p+3 +-0x1.38818p-2 +-0x1.25d98ap+3 +-0x1.ecc21ep+3 +-0x1.7866f8p+2 +-0x1.af5af4p+2 +0x1.063d4p+1 +-0x1.ae60dcp+2 +0x1.29ade8p+4 +0x1.b04548p+3 +-0x1.aa017p+1 +-0x1.084576p+4 +-0x1.09808p-1 +0x1.247be8p+2 +0x1.217548p+3 +-0x1.64ae4cp+3 +-0x1.ef30c4p+3 +-0x1.a9874p+1 +0x1.8828d8p+2 +-0x1.e769eep+3 +0x1.236e4p+0 +0x1.a3f3ep+3 +0x1.bfcb8p+2 +-0x1.35ae4p+2 +-0x1.42cd18p+2 +-0x1.53172p+3 +-0x1.098abcp+4 +-0x1.e6abd8p+3 +-0x1.1bc3f4p+3 +0x1.134e4p+0 +-0x1.627188p+2 +-0x1.86fep-3 +-0x1.1669d4p+3 +0x1.8226p+3 +0x1.8c45a8p+3 +0x1.323f88p+3 +0x1.d33a58p+2 +0x1.2725ep+4 +-0x1.6389bcp+2 +-0x1.e7511cp+2 +-0x1.bf0a0cp+3 +0x1.a70278p+2 +0x1.9278bp+2 +0x1.98d768p+3 +0x1.65d758p+3 +-0x1.e2adfp+3 +0x1.edef4p+2 +-0x1.03cc3p+3 +-0x1.525952p+3 +0x1.9a09fp+3 +0x1.902p-6 +0x1.4e1718p+3 +-0x1.32735ep+3 +0x1.97a1e8p+2 +0x1.03c284p+3 +-0x1.27f718p+3 +-0x1.9d9188p+2 +-0x1.bd74f4p+2 +0x1.2d9ff4p+4 +-0x1.f8bdcp+0 +-0x1.170224p+4 +-0x1.ade7cp-1 +0x1.f64fb8p+2 +-0x1.09b0dcp+3 +0x1.c5cbe8p+3 +-0x1.192c62p+4 +0x1.3d8318p+2 +-0x1.25a1c8p+4 +-0x1.026eap+1 +-0x1.aadc4cp+3 +0x1.35d5bp+2 +0x1.604f6p+2 +-0x1.5b3cp-4 +0x1.e6e378p+3 +0x1.80d4fp+1 +0x1.47c13p+3 +-0x1.11d95cp+4 +0x1.2ad474p+4 +-0x1.1d75aep+4 +-0x1.1919eep+4 +0x1.4edacp-1 +-0x1.001a56p+3 +0x1.3eef54p+3 +-0x1.2d4bb6p+3 +-0x1.8aadc8p+2 +-0x1.961b08p+2 +-0x1.c8d7a8p+2 +-0x1.6324d4p+3 +-0x1.06fe24p+3 +-0x1.17101ep+3 +-0x1.234c7p+3 +0x1.207d68p+2 +0x1.f7d2p-4 +-0x1.96bbc8p+3 +0x1.fda688p+3 +-0x1.fd476p+0 +0x1.2a1978p+2 +0x1.df8a8p+1 +0x1.7def58p+2 +0x1.3b10dp+4 +-0x1.97de6p+1 +0x1.3b2ff8p+2 +0x1.65326p+3 +0x1.9c97e8p+2 +-0x1.23246p+3 +0x1.adfe68p+2 +0x1.9cf08p-2 +0x1.19ca1p+4 +0x1.035f7p+1 +0x1.0de5d8p+4 +-0x1.272888p+3 +0x1.154c9p+4 +0x1.5614cp+2 +-0x1.94256p+2 +-0x1.909406p+3 +0x1.19d714p+3 +-0x1.88d0fp+3 +0x1.65c05p+2 +-0x1.668106p+3 +-0x1.a0a92cp+3 +0x1.ed168p+0 +0x1.8b63f8p+3 +-0x1.ae89f6p+3 +-0x1.c6cc5cp+2 +0x1.6cf43p+2 +0x1.35178p-2 +-0x1.b627bp+2 +0x1.05f95cp+4 +-0x1.93d994p+3 +0x1.4e417p+3 +-0x1.59c6dp+1 +-0x1.0b8dbp+1 +-0x1.6065ep+3 +-0x1.810ea8p+2 +0x1.6f65p-2 +-0x1.3d9a44p+3 +-0x1.5b5588p+3 +0x1.b3e9e8p+3 +-0x1.3eab1ap+3 +-0x1.52f9c4p+3 +0x1.d090dp+1 +-0x1.7047p-2 +-0x1.245bc4p+2 +-0x1.0155ap+4 +0x1.8df128p+2 +-0x1.0b3b0cp+4 +0x1.5d2f98p+3 +-0x1.024fap+0 +0x1.41ef2p+0 +0x1.f762d8p+3 +-0x1.85876ap+3 +0x1.82df2p+3 +-0x1.f241c4p+2 +-0x1.bb4bfp+2 +-0x1.bb70c6p+3 +0x1.0b9ac4p+4 +-0x1.22003cp+4 +0x1.855608p+3 +0x1.a8a17p+2 +-0x1.00c3b4p+3 +-0x1.1831e8p+4 +-0x1.d1621p+2 +-0x1.be78a2p+3 +-0x1.e1bf4ap+3 +0x1.153b24p+4 From patchwork Thu Dec 19 20:13:06 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Adhemerval Zanella X-Patchwork-Id: 852049 Delivered-To: patch@linaro.org Received: by 2002:a5d:4888:0:b0:385:e875:8a9e with SMTP id g8csp1696518wrq; Thu, 19 Dec 2024 12:20:40 -0800 (PST) X-Forwarded-Encrypted: i=3; AJvYcCUt81I2MLq7166frb449PC9dynsD+ltTUhkupF/iwbRt0VsHbYNLlsKUQ1YItLraC67KNekwA==@linaro.org X-Google-Smtp-Source: AGHT+IEhwaOVK8Z3JV/n2UNlk7l9xwsuzFhobZLzg/GRLTNdrqj28vt5r4DG2Gwl1MlltOJpLn4f X-Received: by 2002:a05:620a:440b:b0:7b6:f996:c507 with SMTP id af79cd13be357-7b9ba7ead64mr35340985a.40.1734639639395; Thu, 19 Dec 2024 12:20:39 -0800 (PST) ARC-Seal: i=2; a=rsa-sha256; t=1734639639; cv=pass; d=google.com; s=arc-20240605; b=QSNKlPFc1Q8rvjt1LAFOVp0gTd8A1tTBL2vyrb5FAaRJPnNdWAzc8HQVmumYNLt/0P WzlgeGd6mDqV/cCu7PJWZcYJZ/zFzm1tR/O50rgve/2inWDCedGm9NWyPfsNETO6TfBx RPcEHsChEpNMUw8qr2x8PU3TSDpXnol9YuiZzkd50DlEwj6RMMDMsU2+4U6uOXFps3TW Aw1eugVJN50PX+mm0DiY0eXv4qKIKZcpSG2fXz5JnM9fClO/Du/k8v6klcV7iUdks0qP BnG9QQ6ikKyWYEKAk0Y1GVe1VQrPR1klaJEGGgo/w4nXSz0iYWXbfr0J+unhwvMIJ8bD fiGA== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20240605; h=errors-to:list-subscribe:list-help:list-post:list-archive :list-unsubscribe:list-id:precedence:content-transfer-encoding :mime-version:references:in-reply-to:message-id:date:subject:cc:to :from:dkim-signature:dkim-filter:arc-filter:dmarc-filter :delivered-to:dkim-filter; bh=86zxEKKY3w3jQMuEno1x6v37C14HTq7vq/L5wV77YFs=; fh=c0s3Uezv7Rag51rMi6q2BcriyJCPC/LMNTAVHmiKG0w=; b=cKeUu6LcJqpWsaMcovdvPdiphk10nP90kKKiK4BTTa3ghAzwTZt3Bi3ynBC9X3doix eVAushRXG5znR2a6fczWrK275u0UqdZM3qHrftD34/DWGGjMiPJUeaowHDyMtk82z/gV P7hAPyQHQSWSQj111q6IBn67ttWnV1ZGC5NqVYgrfhdvcMjJjz0h7uRG8UmigWePKgy5 qygrn24jGG+N0uGPbUOriGNkiU2l4G8BUHCByQL0tiyn1ngCIe4vwT6zZdpAMc6AKGzP A6ugmEz4JbO6upwsQNC/C5fn5OUdJxOIdW7jivasmnx26TK0K4w2zx8rQN8yKADLl9RJ CpdA==; dara=google.com ARC-Authentication-Results: i=2; mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=BROS8Jmy; arc=pass (i=1); spf=pass (google.com: domain of libc-alpha-bounces~patch=linaro.org@sourceware.org designates 8.43.85.97 as permitted sender) smtp.mailfrom="libc-alpha-bounces~patch=linaro.org@sourceware.org"; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org Return-Path: Received: from server2.sourceware.org (server2.sourceware.org. [8.43.85.97]) by mx.google.com with ESMTPS id af79cd13be357-7b9ac2d1009si246374185a.209.2024.12.19.12.20.39 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 19 Dec 2024 12:20:39 -0800 (PST) Received-SPF: pass (google.com: domain of libc-alpha-bounces~patch=linaro.org@sourceware.org designates 8.43.85.97 as permitted sender) client-ip=8.43.85.97; Authentication-Results: mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=BROS8Jmy; arc=pass (i=1); spf=pass (google.com: domain of libc-alpha-bounces~patch=linaro.org@sourceware.org designates 8.43.85.97 as permitted sender) smtp.mailfrom="libc-alpha-bounces~patch=linaro.org@sourceware.org"; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: from server2.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id E6279385840A for ; Thu, 19 Dec 2024 20:20:38 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org E6279385840A Authentication-Results: sourceware.org; dkim=pass (2048-bit key, unprotected) header.d=linaro.org header.i=@linaro.org header.a=rsa-sha256 header.s=google header.b=BROS8Jmy X-Original-To: libc-alpha@sourceware.org Delivered-To: libc-alpha@sourceware.org Received: from mail-pl1-x634.google.com (mail-pl1-x634.google.com [IPv6:2607:f8b0:4864:20::634]) by sourceware.org (Postfix) with ESMTPS id 90A973858D26 for ; Thu, 19 Dec 2024 20:20:13 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 90A973858D26 Authentication-Results: sourceware.org; dmarc=pass (p=none dis=none) header.from=linaro.org Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=linaro.org ARC-Filter: OpenARC Filter v1.0.0 sourceware.org 90A973858D26 Authentication-Results: server2.sourceware.org; arc=none smtp.remote-ip=2607:f8b0:4864:20::634 ARC-Seal: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1734639613; cv=none; b=aGpLZeeQJqb1x9VNd67pMWY7G3zmy/p6juTen04dDvJf7RHXuMtxWojpnB1xRSmIsNWLKPwDU95Kq2BV6a45z1uV/Af/5n76d4kvQRVHH1AYM581bPfcZcZY7LtHbuSpA444wINnP9wZ6Yiql7Hft4b+drr8OjoED8zv9xFWooM= ARC-Message-Signature: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1734639613; c=relaxed/simple; bh=NvAytd2UxTLIevKRVMnn6ghNWRwJjoPYS4DcPEI6Qrw=; h=DKIM-Signature:From:To:Subject:Date:Message-ID:MIME-Version; b=Hx5S0YmVINZAABvZP6P5YRnLIiccTfSdsw6EyGEBTYjD3zOYkB4Kr5I2WOLykmSCZJSbzDPgPOjhGkeo90MM9jheuYDB0YNVEOcPMTBz0hypjih64lNQhPvNJYhuyECi2bjVxnHvFYmNNu8N+JOwbhSQeprDfVnjSFRVFahX16s= ARC-Authentication-Results: i=1; server2.sourceware.org DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 90A973858D26 Received: by mail-pl1-x634.google.com with SMTP id d9443c01a7336-2156e078563so11190495ad.2 for ; Thu, 19 Dec 2024 12:20:13 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1734639611; x=1735244411; darn=sourceware.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=86zxEKKY3w3jQMuEno1x6v37C14HTq7vq/L5wV77YFs=; b=BROS8Jmy+SW2nhmeX9IfKPWQmxBoPDvmfRMNJKU/rH13fUwQzuQnZjpIMMX0dCWB15 CCO0M+FB9UaNHYE6GjJRAfJDIKe3RcMzsis8rwGvFodfVVimp1/EIGvVTA6qKaGAvHDa deU22+eB57ZWxolKSFPn/mO7QyFmo7+36eCNKl5wIvNaeMSDOymywtlhfu+5eoT9GCP7 BjV8yMlySl4o0fEJLO47rlOnTemSCNBk+NhA6jCotZxt9lZSCi7Mangzu/KBDwW1hmME V2DDnpBiczQLHe6C3KsBp3wQOwVQdh8A0sI7OXirpOvp+RmxN9IEZPq5dPIjZ3Xp4zgV iMbA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1734639611; x=1735244411; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=86zxEKKY3w3jQMuEno1x6v37C14HTq7vq/L5wV77YFs=; b=oZv5IAg8n5ydzPVl+nUuO2qRsD6jL0kLhi8pFI/tvKXQ2xEUSGXJtv+0N85cohQs4p Dr1PbAKzRenFYe/tLmr8kKJ33veCHD1Uy274n+e0pgpVdFCnCCJ9f4eOnpPND2oYdjrE VkpANlhLgABFr+rZXCD9You2/1J+rZErVePyA5BXabcbsTcjl1IqrC0qytOBu/UtlqQu QcAIRhozk7QCgZBmitsMbfj9BA9rWdkGENN+mIn0hPp4JFQuNu3XR/DUsFRJPfgRyIIN dgD3JcF5LgLVKNOaqDxuOSGCRpQ/tJAeVIdqcesjlyCsdS777ZrmnF8V7Gs44GEN53CX gDLg== X-Gm-Message-State: AOJu0YzCPvjXvIwKhwcJeKg3u9m3uQbSSqFKaBqYaz6dYcQBVBI3hVOv uXRv54PhwkWjhGIsDF9zZr1Qb0MV0qTAbEijuzpZaemiIUh/87vPssp53AbDgy1QegIPm/Un8Bh a X-Gm-Gg: ASbGncsa1RHILyAE6wE+oj4JD3QTuRaXS1lloOhODxXxrpGHcrAZ+Cz2j9bpwVMrQ9o LzI81IZQINpEpgoPtVHfepoEV9cHivz9tL7hOQnQgBcadzQrjaw8zfitahT1iw9ofnccW4q0+I7 tIWT2ADbQAhXxy1PsP7D+oPlZm4TqvUsnjuqbX3SLhVeQT14J2pwsOqZPmjYcB+R3vDJBtjq+wB VAP9yyqqD0YEiF5UsY/9JPelGWPLPOL++9NY4MEzSHcEJYcUHNA7MYgNCUtMW3tJ0Bhjw== X-Received: by 2002:a17:903:2282:b0:216:59ed:1ab0 with SMTP id d9443c01a7336-219e6eb3b88mr1007405ad.27.1734639611443; Thu, 19 Dec 2024 12:20:11 -0800 (PST) Received: from mandiga.. ([2804:1b3:a7c3:2d5b:c4ce:4df0:8543:f129]) by smtp.gmail.com with ESMTPSA id d9443c01a7336-219dca02589sm16360645ad.257.2024.12.19.12.20.09 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 19 Dec 2024 12:20:11 -0800 (PST) From: Adhemerval Zanella To: libc-alpha@sourceware.org Cc: DJ Delorie , Joseph Myers , Paul Zimmermann Subject: [PATCH 02/10] math: Remove the error handling wrapper from log10f Date: Thu, 19 Dec 2024 17:13:06 -0300 Message-ID: <20241219202003.2651277-3-adhemerval.zanella@linaro.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20241219202003.2651277-1-adhemerval.zanella@linaro.org> References: <20241219202003.2651277-1-adhemerval.zanella@linaro.org> MIME-Version: 1.0 X-BeenThere: libc-alpha@sourceware.org X-Mailman-Version: 2.1.30 Precedence: list List-Id: Libc-alpha mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: libc-alpha-bounces~patch=linaro.org@sourceware.org It improves latency for about 3-10% and throughput for about 5-10%. --- math/Versions | 2 ++ math/w_log10f.c | 8 ++++++++ math/w_log10f_compat.c | 10 +++++++--- sysdeps/ieee754/flt-32/e_log10f.c | 11 ++++++++++- sysdeps/ieee754/flt-32/w_log10f.c | 1 + sysdeps/m68k/m680x0/fpu/w_log10f_compat.c | 8 ++++++++ sysdeps/mach/hurd/i386/libm.abilist | 1 + sysdeps/unix/sysv/linux/aarch64/libm.abilist | 1 + sysdeps/unix/sysv/linux/alpha/libm.abilist | 1 + sysdeps/unix/sysv/linux/arm/be/libm.abilist | 1 + sysdeps/unix/sysv/linux/arm/le/libm.abilist | 1 + sysdeps/unix/sysv/linux/hppa/libm.abilist | 1 + sysdeps/unix/sysv/linux/i386/libm.abilist | 1 + sysdeps/unix/sysv/linux/m68k/coldfire/libm.abilist | 1 + sysdeps/unix/sysv/linux/microblaze/be/libm.abilist | 1 + sysdeps/unix/sysv/linux/microblaze/le/libm.abilist | 1 + sysdeps/unix/sysv/linux/mips/mips32/libm.abilist | 1 + sysdeps/unix/sysv/linux/mips/mips64/libm.abilist | 1 + .../sysv/linux/powerpc/powerpc32/fpu/libm.abilist | 1 + .../sysv/linux/powerpc/powerpc32/nofpu/libm.abilist | 1 + .../unix/sysv/linux/powerpc/powerpc64/be/libm.abilist | 1 + .../unix/sysv/linux/powerpc/powerpc64/le/libm.abilist | 1 + sysdeps/unix/sysv/linux/s390/s390-32/libm.abilist | 1 + sysdeps/unix/sysv/linux/s390/s390-64/libm.abilist | 1 + sysdeps/unix/sysv/linux/sh/be/libm.abilist | 1 + sysdeps/unix/sysv/linux/sh/le/libm.abilist | 1 + sysdeps/unix/sysv/linux/sparc/sparc32/libm.abilist | 1 + sysdeps/unix/sysv/linux/sparc/sparc64/libm.abilist | 1 + sysdeps/unix/sysv/linux/x86_64/64/libm.abilist | 1 + sysdeps/unix/sysv/linux/x86_64/x32/libm.abilist | 1 + 30 files changed, 60 insertions(+), 4 deletions(-) create mode 100644 math/w_log10f.c create mode 100644 sysdeps/ieee754/flt-32/w_log10f.c create mode 100644 sysdeps/m68k/m680x0/fpu/w_log10f_compat.c diff --git a/math/Versions b/math/Versions index e4fbef3f6d..b7cb4ba51d 100644 --- a/math/Versions +++ b/math/Versions @@ -670,5 +670,7 @@ libm { cospif64x; cospif128; sinpif64x; sinpif128; tanpif64x; tanpif128; + # No SVID compatible error handling. + log10f; } } diff --git a/math/w_log10f.c b/math/w_log10f.c new file mode 100644 index 0000000000..1b70eabcb0 --- /dev/null +++ b/math/w_log10f.c @@ -0,0 +1,8 @@ +#include +#undef __USE_WRAPPER_TEMPLATE +#define __USE_WRAPPER_TEMPLATE 1 +#undef declare_mgen_alias +#define declare_mgen_alias(a, b) +#include +versioned_symbol (libm, __log10f, log10f, GLIBC_2_41); +libm_alias_float_other (__log10f, log10f) diff --git a/math/w_log10f_compat.c b/math/w_log10f_compat.c index 4a84b40d54..aaa06f55bc 100644 --- a/math/w_log10f_compat.c +++ b/math/w_log10f_compat.c @@ -22,10 +22,10 @@ #include -#if LIBM_SVID_COMPAT +#if LIBM_SVID_COMPAT && SHLIB_COMPAT (libm, GLIBC_2_0, GLIBC_2_41) /* wrapper log10f(x) */ float -__log10f (float x) +__log10_compatf (float x) { if (__builtin_expect (islessequal (x, 0.0f), 0) && _LIB_VERSION != _IEEE_) { @@ -43,5 +43,9 @@ __log10f (float x) return __ieee754_log10f (x); } -libm_alias_float (__log10, log10) +# ifdef NO_COMPAT_NEEDED +libm_alias_float (__log10_compat, log10) +# else +compat_symbol (libm, __log10_compatf, log10f, GLIBC_2_0); +# endif #endif diff --git a/sysdeps/ieee754/flt-32/e_log10f.c b/sysdeps/ieee754/flt-32/e_log10f.c index 03d9e281f3..ca61a067ed 100644 --- a/sysdeps/ieee754/flt-32/e_log10f.c +++ b/sysdeps/ieee754/flt-32/e_log10f.c @@ -27,6 +27,8 @@ SOFTWARE. #include #include #include +#include +#include #include "math_config.h" static __attribute__ ((noinline)) float @@ -45,7 +47,7 @@ as_special (float x) } float -__ieee754_log10f (float x) +__log10f (float x) { static const double tr[] = { @@ -158,4 +160,11 @@ __ieee754_log10f (float x) } return ub; } +strong_alias (__log10f, __ieee754_log10f) +#if LIBM_SVID_COMPAT +versioned_symbol (libm, __log10f, log10f, GLIBC_2_41); +libm_alias_float_other (__log10, log10) +#else +libm_alias_float (__log10, log10) +#endif libm_alias_finite (__ieee754_log10f, __log10f) diff --git a/sysdeps/ieee754/flt-32/w_log10f.c b/sysdeps/ieee754/flt-32/w_log10f.c new file mode 100644 index 0000000000..1cc8931700 --- /dev/null +++ b/sysdeps/ieee754/flt-32/w_log10f.c @@ -0,0 +1 @@ +/* Not needed. */ diff --git a/sysdeps/m68k/m680x0/fpu/w_log10f_compat.c b/sysdeps/m68k/m680x0/fpu/w_log10f_compat.c new file mode 100644 index 0000000000..a0d6036fcc --- /dev/null +++ b/sysdeps/m68k/m680x0/fpu/w_log10f_compat.c @@ -0,0 +1,8 @@ +/* m68k provides an optimized __ieee754_log10f. */ +#ifdef SHARED +# define NO_COMPAT_NEEDED 1 +# include +#else +# include +# include +#endif diff --git a/sysdeps/mach/hurd/i386/libm.abilist b/sysdeps/mach/hurd/i386/libm.abilist index a248abb642..2c5340acb1 100644 --- a/sysdeps/mach/hurd/i386/libm.abilist +++ b/sysdeps/mach/hurd/i386/libm.abilist @@ -1261,6 +1261,7 @@ GLIBC_2.41 cospif32x F GLIBC_2.41 cospif64 F GLIBC_2.41 cospif64x F GLIBC_2.41 cospil F +GLIBC_2.41 log10f F GLIBC_2.41 sinpi F GLIBC_2.41 sinpif F GLIBC_2.41 sinpif128 F diff --git a/sysdeps/unix/sysv/linux/aarch64/libm.abilist b/sysdeps/unix/sysv/linux/aarch64/libm.abilist index 88a81da2fe..cef9647f18 100644 --- a/sysdeps/unix/sysv/linux/aarch64/libm.abilist +++ b/sysdeps/unix/sysv/linux/aarch64/libm.abilist @@ -1229,6 +1229,7 @@ GLIBC_2.41 cospif32x F GLIBC_2.41 cospif64 F GLIBC_2.41 cospif64x F GLIBC_2.41 cospil F +GLIBC_2.41 log10f F GLIBC_2.41 sinpi F GLIBC_2.41 sinpif F GLIBC_2.41 sinpif128 F diff --git a/sysdeps/unix/sysv/linux/alpha/libm.abilist b/sysdeps/unix/sysv/linux/alpha/libm.abilist index 007fd86f9e..cea5d26db0 100644 --- a/sysdeps/unix/sysv/linux/alpha/libm.abilist +++ b/sysdeps/unix/sysv/linux/alpha/libm.abilist @@ -1388,6 +1388,7 @@ GLIBC_2.41 cospif32x F GLIBC_2.41 cospif64 F GLIBC_2.41 cospif64x F GLIBC_2.41 cospil F +GLIBC_2.41 log10f F GLIBC_2.41 sinpi F GLIBC_2.41 sinpif F GLIBC_2.41 sinpif128 F diff --git a/sysdeps/unix/sysv/linux/arm/be/libm.abilist b/sysdeps/unix/sysv/linux/arm/be/libm.abilist index d1531f79c9..0d772526d6 100644 --- a/sysdeps/unix/sysv/linux/arm/be/libm.abilist +++ b/sysdeps/unix/sysv/linux/arm/be/libm.abilist @@ -908,6 +908,7 @@ GLIBC_2.41 cospif32 F GLIBC_2.41 cospif32x F GLIBC_2.41 cospif64 F GLIBC_2.41 cospil F +GLIBC_2.41 log10f F GLIBC_2.41 sinpi F GLIBC_2.41 sinpif F GLIBC_2.41 sinpif32 F diff --git a/sysdeps/unix/sysv/linux/arm/le/libm.abilist b/sysdeps/unix/sysv/linux/arm/le/libm.abilist index d1531f79c9..0d772526d6 100644 --- a/sysdeps/unix/sysv/linux/arm/le/libm.abilist +++ b/sysdeps/unix/sysv/linux/arm/le/libm.abilist @@ -908,6 +908,7 @@ GLIBC_2.41 cospif32 F GLIBC_2.41 cospif32x F GLIBC_2.41 cospif64 F GLIBC_2.41 cospil F +GLIBC_2.41 log10f F GLIBC_2.41 sinpi F GLIBC_2.41 sinpif F GLIBC_2.41 sinpif32 F diff --git a/sysdeps/unix/sysv/linux/hppa/libm.abilist b/sysdeps/unix/sysv/linux/hppa/libm.abilist index 4699d529a4..73638e858c 100644 --- a/sysdeps/unix/sysv/linux/hppa/libm.abilist +++ b/sysdeps/unix/sysv/linux/hppa/libm.abilist @@ -908,6 +908,7 @@ GLIBC_2.41 cospif32 F GLIBC_2.41 cospif32x F GLIBC_2.41 cospif64 F GLIBC_2.41 cospil F +GLIBC_2.41 log10f F GLIBC_2.41 sinpi F GLIBC_2.41 sinpif F GLIBC_2.41 sinpif32 F diff --git a/sysdeps/unix/sysv/linux/i386/libm.abilist b/sysdeps/unix/sysv/linux/i386/libm.abilist index d1ce0f7283..0be467f03e 100644 --- a/sysdeps/unix/sysv/linux/i386/libm.abilist +++ b/sysdeps/unix/sysv/linux/i386/libm.abilist @@ -1268,6 +1268,7 @@ GLIBC_2.41 cospif32x F GLIBC_2.41 cospif64 F GLIBC_2.41 cospif64x F GLIBC_2.41 cospil F +GLIBC_2.41 log10f F GLIBC_2.41 sinpi F GLIBC_2.41 sinpif F GLIBC_2.41 sinpif128 F diff --git a/sysdeps/unix/sysv/linux/m68k/coldfire/libm.abilist b/sysdeps/unix/sysv/linux/m68k/coldfire/libm.abilist index d1531f79c9..0d772526d6 100644 --- a/sysdeps/unix/sysv/linux/m68k/coldfire/libm.abilist +++ b/sysdeps/unix/sysv/linux/m68k/coldfire/libm.abilist @@ -908,6 +908,7 @@ GLIBC_2.41 cospif32 F GLIBC_2.41 cospif32x F GLIBC_2.41 cospif64 F GLIBC_2.41 cospil F +GLIBC_2.41 log10f F GLIBC_2.41 sinpi F GLIBC_2.41 sinpif F GLIBC_2.41 sinpif32 F diff --git a/sysdeps/unix/sysv/linux/microblaze/be/libm.abilist b/sysdeps/unix/sysv/linux/microblaze/be/libm.abilist index 2f6a2e7d21..ab41a60d17 100644 --- a/sysdeps/unix/sysv/linux/microblaze/be/libm.abilist +++ b/sysdeps/unix/sysv/linux/microblaze/be/libm.abilist @@ -908,6 +908,7 @@ GLIBC_2.41 cospif32 F GLIBC_2.41 cospif32x F GLIBC_2.41 cospif64 F GLIBC_2.41 cospil F +GLIBC_2.41 log10f F GLIBC_2.41 sinpi F GLIBC_2.41 sinpif F GLIBC_2.41 sinpif32 F diff --git a/sysdeps/unix/sysv/linux/microblaze/le/libm.abilist b/sysdeps/unix/sysv/linux/microblaze/le/libm.abilist index 2f6a2e7d21..ab41a60d17 100644 --- a/sysdeps/unix/sysv/linux/microblaze/le/libm.abilist +++ b/sysdeps/unix/sysv/linux/microblaze/le/libm.abilist @@ -908,6 +908,7 @@ GLIBC_2.41 cospif32 F GLIBC_2.41 cospif32x F GLIBC_2.41 cospif64 F GLIBC_2.41 cospil F +GLIBC_2.41 log10f F GLIBC_2.41 sinpi F GLIBC_2.41 sinpif F GLIBC_2.41 sinpif32 F diff --git a/sysdeps/unix/sysv/linux/mips/mips32/libm.abilist b/sysdeps/unix/sysv/linux/mips/mips32/libm.abilist index 85173a7471..0e08dd4b0c 100644 --- a/sysdeps/unix/sysv/linux/mips/mips32/libm.abilist +++ b/sysdeps/unix/sysv/linux/mips/mips32/libm.abilist @@ -908,6 +908,7 @@ GLIBC_2.41 cospif32 F GLIBC_2.41 cospif32x F GLIBC_2.41 cospif64 F GLIBC_2.41 cospil F +GLIBC_2.41 log10f F GLIBC_2.41 sinpi F GLIBC_2.41 sinpif F GLIBC_2.41 sinpif32 F diff --git a/sysdeps/unix/sysv/linux/mips/mips64/libm.abilist b/sysdeps/unix/sysv/linux/mips/mips64/libm.abilist index 880f8c4c16..52e719391a 100644 --- a/sysdeps/unix/sysv/linux/mips/mips64/libm.abilist +++ b/sysdeps/unix/sysv/linux/mips/mips64/libm.abilist @@ -1229,6 +1229,7 @@ GLIBC_2.41 cospif32x F GLIBC_2.41 cospif64 F GLIBC_2.41 cospif64x F GLIBC_2.41 cospil F +GLIBC_2.41 log10f F GLIBC_2.41 sinpi F GLIBC_2.41 sinpif F GLIBC_2.41 sinpif128 F diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libm.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libm.abilist index 43d578d09d..6ee447acd1 100644 --- a/sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libm.abilist +++ b/sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libm.abilist @@ -1055,6 +1055,7 @@ GLIBC_2.41 cospif32 F GLIBC_2.41 cospif32x F GLIBC_2.41 cospif64 F GLIBC_2.41 cospil F +GLIBC_2.41 log10f F GLIBC_2.41 sinpi F GLIBC_2.41 sinpif F GLIBC_2.41 sinpif32 F diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libm.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libm.abilist index 64a9ea10b2..00579cad3a 100644 --- a/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libm.abilist +++ b/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libm.abilist @@ -1054,6 +1054,7 @@ GLIBC_2.41 cospif32 F GLIBC_2.41 cospif32x F GLIBC_2.41 cospif64 F GLIBC_2.41 cospil F +GLIBC_2.41 log10f F GLIBC_2.41 sinpi F GLIBC_2.41 sinpif F GLIBC_2.41 sinpif32 F diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libm.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libm.abilist index d45783a1d3..cb5a390626 100644 --- a/sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libm.abilist +++ b/sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libm.abilist @@ -1048,6 +1048,7 @@ GLIBC_2.41 cospif32 F GLIBC_2.41 cospif32x F GLIBC_2.41 cospif64 F GLIBC_2.41 cospil F +GLIBC_2.41 log10f F GLIBC_2.41 sinpi F GLIBC_2.41 sinpif F GLIBC_2.41 sinpif32 F diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libm.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libm.abilist index 44ca2f20d9..d87ea27219 100644 --- a/sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libm.abilist +++ b/sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libm.abilist @@ -1413,6 +1413,7 @@ GLIBC_2.41 cospif32x F GLIBC_2.41 cospif64 F GLIBC_2.41 cospif64x F GLIBC_2.41 cospil F +GLIBC_2.41 log10f F GLIBC_2.41 sinpi F GLIBC_2.41 sinpif F GLIBC_2.41 sinpif128 F diff --git a/sysdeps/unix/sysv/linux/s390/s390-32/libm.abilist b/sysdeps/unix/sysv/linux/s390/s390-32/libm.abilist index bc621c2923..604b5b3c43 100644 --- a/sysdeps/unix/sysv/linux/s390/s390-32/libm.abilist +++ b/sysdeps/unix/sysv/linux/s390/s390-32/libm.abilist @@ -1332,6 +1332,7 @@ GLIBC_2.41 cospif32x F GLIBC_2.41 cospif64 F GLIBC_2.41 cospif64x F GLIBC_2.41 cospil F +GLIBC_2.41 log10f F GLIBC_2.41 sinpi F GLIBC_2.41 sinpif F GLIBC_2.41 sinpif128 F diff --git a/sysdeps/unix/sysv/linux/s390/s390-64/libm.abilist b/sysdeps/unix/sysv/linux/s390/s390-64/libm.abilist index 8de3065e45..5a051fb088 100644 --- a/sysdeps/unix/sysv/linux/s390/s390-64/libm.abilist +++ b/sysdeps/unix/sysv/linux/s390/s390-64/libm.abilist @@ -1332,6 +1332,7 @@ GLIBC_2.41 cospif32x F GLIBC_2.41 cospif64 F GLIBC_2.41 cospif64x F GLIBC_2.41 cospil F +GLIBC_2.41 log10f F GLIBC_2.41 sinpi F GLIBC_2.41 sinpif F GLIBC_2.41 sinpif128 F diff --git a/sysdeps/unix/sysv/linux/sh/be/libm.abilist b/sysdeps/unix/sysv/linux/sh/be/libm.abilist index 6df6a8d7b0..95b843407a 100644 --- a/sysdeps/unix/sysv/linux/sh/be/libm.abilist +++ b/sysdeps/unix/sysv/linux/sh/be/libm.abilist @@ -908,6 +908,7 @@ GLIBC_2.41 cospif32 F GLIBC_2.41 cospif32x F GLIBC_2.41 cospif64 F GLIBC_2.41 cospil F +GLIBC_2.41 log10f F GLIBC_2.41 sinpi F GLIBC_2.41 sinpif F GLIBC_2.41 sinpif32 F diff --git a/sysdeps/unix/sysv/linux/sh/le/libm.abilist b/sysdeps/unix/sysv/linux/sh/le/libm.abilist index 6df6a8d7b0..95b843407a 100644 --- a/sysdeps/unix/sysv/linux/sh/le/libm.abilist +++ b/sysdeps/unix/sysv/linux/sh/le/libm.abilist @@ -908,6 +908,7 @@ GLIBC_2.41 cospif32 F GLIBC_2.41 cospif32x F GLIBC_2.41 cospif64 F GLIBC_2.41 cospil F +GLIBC_2.41 log10f F GLIBC_2.41 sinpi F GLIBC_2.41 sinpif F GLIBC_2.41 sinpif32 F diff --git a/sysdeps/unix/sysv/linux/sparc/sparc32/libm.abilist b/sysdeps/unix/sysv/linux/sparc/sparc32/libm.abilist index 991d96b3d4..94a44a5cd3 100644 --- a/sysdeps/unix/sysv/linux/sparc/sparc32/libm.abilist +++ b/sysdeps/unix/sysv/linux/sparc/sparc32/libm.abilist @@ -1339,6 +1339,7 @@ GLIBC_2.41 cospif32x F GLIBC_2.41 cospif64 F GLIBC_2.41 cospif64x F GLIBC_2.41 cospil F +GLIBC_2.41 log10f F GLIBC_2.41 sinpi F GLIBC_2.41 sinpif F GLIBC_2.41 sinpif128 F diff --git a/sysdeps/unix/sysv/linux/sparc/sparc64/libm.abilist b/sysdeps/unix/sysv/linux/sparc/sparc64/libm.abilist index 8600571387..492ea37070 100644 --- a/sysdeps/unix/sysv/linux/sparc/sparc64/libm.abilist +++ b/sysdeps/unix/sysv/linux/sparc/sparc64/libm.abilist @@ -1229,6 +1229,7 @@ GLIBC_2.41 cospif32x F GLIBC_2.41 cospif64 F GLIBC_2.41 cospif64x F GLIBC_2.41 cospil F +GLIBC_2.41 log10f F GLIBC_2.41 sinpi F GLIBC_2.41 sinpif F GLIBC_2.41 sinpif128 F diff --git a/sysdeps/unix/sysv/linux/x86_64/64/libm.abilist b/sysdeps/unix/sysv/linux/x86_64/64/libm.abilist index 8113fb41f0..0a8f74b516 100644 --- a/sysdeps/unix/sysv/linux/x86_64/64/libm.abilist +++ b/sysdeps/unix/sysv/linux/x86_64/64/libm.abilist @@ -1262,6 +1262,7 @@ GLIBC_2.41 cospif32x F GLIBC_2.41 cospif64 F GLIBC_2.41 cospif64x F GLIBC_2.41 cospil F +GLIBC_2.41 log10f F GLIBC_2.41 sinpi F GLIBC_2.41 sinpif F GLIBC_2.41 sinpif128 F diff --git a/sysdeps/unix/sysv/linux/x86_64/x32/libm.abilist b/sysdeps/unix/sysv/linux/x86_64/x32/libm.abilist index ac96d62ed2..999c57b4b1 100644 --- a/sysdeps/unix/sysv/linux/x86_64/x32/libm.abilist +++ b/sysdeps/unix/sysv/linux/x86_64/x32/libm.abilist @@ -1262,6 +1262,7 @@ GLIBC_2.41 cospif32x F GLIBC_2.41 cospif64 F GLIBC_2.41 cospif64x F GLIBC_2.41 cospil F +GLIBC_2.41 log10f F GLIBC_2.41 sinpi F GLIBC_2.41 sinpif F GLIBC_2.41 sinpif128 F From patchwork Thu Dec 19 20:13:07 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Adhemerval Zanella X-Patchwork-Id: 852051 Delivered-To: patch@linaro.org Received: by 2002:a5d:4888:0:b0:385:e875:8a9e with SMTP id g8csp1696786wrq; Thu, 19 Dec 2024 12:21:24 -0800 (PST) X-Forwarded-Encrypted: i=3; AJvYcCUSBZaH+mAOr5jOZ/XUKRtVG3in1NTRhNScRNrSAUwfEpmA3i2giF646GNsJPNu8aHhLAZs6g==@linaro.org X-Google-Smtp-Source: AGHT+IEPmwdTbXyQq9yJ9ZRItf0gWzBETeySuQs5H4W6x6xMPenkzMA86KFbcb+ee3sZ0nJdSTwx X-Received: by 2002:a05:6214:d0b:b0:6dc:d29a:b19b with SMTP id 6a1803df08f44-6dd233a1d2fmr4427236d6.45.1734639684286; Thu, 19 Dec 2024 12:21:24 -0800 (PST) ARC-Seal: i=2; a=rsa-sha256; t=1734639684; cv=pass; d=google.com; s=arc-20240605; b=fv40Xov1ykOlQjd4nowC8iKkyDYR9+ZdBKcvF49ej+m+6ZMl27wC7AO+yvkcnTDKU4 DiQzmWmzafM8XK6oZBuPVTb2/8jyXuBGdRHVZMmKNCizXaBWzuKkLDRUXptFh/7MNlxb In4gh8s9lRVZGHgWvHksL16UBcsq/vRKCwi2SqGs+Zk5883xDZdLqPaRj/Xqe5NQ9zQi SIm1TsGFn0FLNFek7SO/uljOc1tt9Vn/b63G9DGjzGOTUr/MMH8m8JAQwkNZR6zyKlmM Xl9viI8KTjDCfLnIAQeQv00maHW7fIGQ1iT5LqqbvhTtwProkvRKwPA2cDD+iCm1l0wx BJEQ== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20240605; h=errors-to:list-subscribe:list-help:list-post:list-archive :list-unsubscribe:list-id:precedence:content-transfer-encoding :mime-version:references:in-reply-to:message-id:date:subject:cc:to :from:dkim-signature:dkim-filter:arc-filter:dmarc-filter :delivered-to:dkim-filter; bh=V2fD07d5Ywx5hbvNh6h21fXsTl0ATn/Ch+sTSHjrOkk=; fh=c0s3Uezv7Rag51rMi6q2BcriyJCPC/LMNTAVHmiKG0w=; b=itDQ2NLYd5DuAgqbhSU9vGGMwIhLp3blWWEuDcTeIV+FgXCoe+HuSdFTi72tZ/2HVz 4Z5yz/rUf5vXKVLTjF97TpALPyapdJPf0xNZaDOn2sHxFHP+xdDGKPzMUC9HSXhFCOSN BXWMS8AiYEeG57+O8ce0hNUpkWywlwu5+etkXSBERRCkFR6ZZqTe8PMAeTDSfcdtv6Sp uYRLD2XGw0PLvg4Xjb0MruzQ9vfZOuGYs6nEF9FzyFcurCcvyJxfhNBYwqXU6IAUx8Bn NXfz543xAI2Y+bLsr7kIYKze0Gf6ddIX/MFyXG4YtferKefqdPUO/MizgOx+5slXWVls P3iA==; dara=google.com ARC-Authentication-Results: i=2; mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=VBxTdyxB; arc=pass (i=1); spf=pass (google.com: domain of libc-alpha-bounces~patch=linaro.org@sourceware.org designates 8.43.85.97 as permitted sender) smtp.mailfrom="libc-alpha-bounces~patch=linaro.org@sourceware.org"; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org Return-Path: Received: from server2.sourceware.org (server2.sourceware.org. [8.43.85.97]) by mx.google.com with ESMTPS id 6a1803df08f44-6dd18101b9asi22349236d6.18.2024.12.19.12.21.24 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 19 Dec 2024 12:21:24 -0800 (PST) Received-SPF: pass (google.com: domain of libc-alpha-bounces~patch=linaro.org@sourceware.org designates 8.43.85.97 as permitted sender) client-ip=8.43.85.97; Authentication-Results: mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=VBxTdyxB; arc=pass (i=1); spf=pass (google.com: domain of libc-alpha-bounces~patch=linaro.org@sourceware.org designates 8.43.85.97 as permitted sender) smtp.mailfrom="libc-alpha-bounces~patch=linaro.org@sourceware.org"; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: from server2.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id D085F3858C51 for ; Thu, 19 Dec 2024 20:21:23 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org D085F3858C51 Authentication-Results: sourceware.org; dkim=pass (2048-bit key, unprotected) header.d=linaro.org header.i=@linaro.org header.a=rsa-sha256 header.s=google header.b=VBxTdyxB X-Original-To: libc-alpha@sourceware.org Delivered-To: libc-alpha@sourceware.org Received: from mail-pl1-x62b.google.com (mail-pl1-x62b.google.com [IPv6:2607:f8b0:4864:20::62b]) by sourceware.org (Postfix) with ESMTPS id 8CBBB3858CD1 for ; Thu, 19 Dec 2024 20:20:19 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 8CBBB3858CD1 Authentication-Results: sourceware.org; dmarc=pass (p=none dis=none) header.from=linaro.org Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=linaro.org ARC-Filter: OpenARC Filter v1.0.0 sourceware.org 8CBBB3858CD1 Authentication-Results: server2.sourceware.org; arc=none smtp.remote-ip=2607:f8b0:4864:20::62b ARC-Seal: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1734639619; cv=none; b=o6rv+/eAoXpdUNtrk5alI+J3bHjp9+J/3ijRiOZMFiU/FnvrptDjGzeQLwUUgUb3AdQNo5V0gsR90vP2aPdqMDJfmeW695oqTDZbyysueZ25z8KKfQAwW8paXhlRaZWddlKuUebanTHDPk+05ezLzCJqKQiXr1gmF4vQjwwRHx0= ARC-Message-Signature: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1734639619; c=relaxed/simple; bh=kueCoUYXHVf0a6vb9pkI4OUE0ll9waScdLITYC0Scp8=; h=DKIM-Signature:From:To:Subject:Date:Message-ID:MIME-Version; b=O7yXbZsdDWtyIhcAa0YeRYC4vplFyCWSeDrdYDq5HPrgidQ/qDMaGAc/qbxkRKp3pM0eJ5Yr5NgdPFP9G/zDV2fTldWTp2QhRg6pVKy1drLz2hGUcBVoYqkzZZxcpyFb81OYG/kATqTaLCYs9l2tZdb23WXq0u2399klG6wJbXc= ARC-Authentication-Results: i=1; server2.sourceware.org DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 8CBBB3858CD1 Received: by mail-pl1-x62b.google.com with SMTP id d9443c01a7336-216426b0865so11371135ad.0 for ; Thu, 19 Dec 2024 12:20:19 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1734639613; x=1735244413; darn=sourceware.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=V2fD07d5Ywx5hbvNh6h21fXsTl0ATn/Ch+sTSHjrOkk=; b=VBxTdyxBcYMP6A5lchIXMIOyNi3wtiF2f2MTrOlFGOZWwcdz7o3KRtcmDDaoMVZ/aq H6TB2yU//3J+jQoGEDAEswsiJa0c3ApHVpETHlryZcDUW/9QJ5VCFlTLRGYVLj7hGDdY +Uh7g1Cbj2D8+mYK4wUTbWj1w3xQyiCx3vEuQkqLl8aTNm5z/5SL82XVskXlpcJl4fM3 sSanyV7uGcA5lwRf25/4Wo7Pb6a7kuVJzTWlM1HkbIcoLCqsmtSyY8cd3P+U0OF62DAQ oR2ASUVtUcMH5/gQXxVUv1MX+IJAxiA1asaHqwMzi0iIbRUcZHX3b8/CMCNMLSN4EuiB XQvg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1734639613; x=1735244413; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=V2fD07d5Ywx5hbvNh6h21fXsTl0ATn/Ch+sTSHjrOkk=; b=Sg9fxAHOJFSSeRKNQHvujT2ZisSNPTBH0imW3WUT/hqctqLEe6Y3wQwmOGk84TXID/ luPxGoYWkGYUrcHViUUit723zxDf/M0Gq4P+4LTcmjHijttRi9E5RjAR7y3i+VDLiiQc RxjyZT9LG6Of+uFoPuuZAf+CDp1w43mFOcLQCUWFf3Pyksx3fLxUOkW2rh9KvmqQpZ/p mWfYtBBzDnk3Yh24i8hiBujs7W7DZpt7URr67qLCuZ7D6pvsxrotjf7yePOoF6Sbs4+g oIQAT4yUvSxgtPQnAYvDwFGm+HlDZf1ghCvavfJXYt5x0vTZYJ9cZ6Wa8ul/J7pDBSee to/A== X-Gm-Message-State: AOJu0YwpIAWyKBH1fO9+8eUoly3acWjZiEh6CMq+bvB+W8HYWZ2deCUO MtHB7UJMjql0PVkZbMbfEY+Au/6i9HHvDHn5PHNw5FgbCvfs32NAx8MWlXI07aKgpC0O2hVZMpt d X-Gm-Gg: ASbGncve4/ppFCmnNtyiIX7ZrZEdlClsfO0gHeYxMtdmTC+4EvjOh0bvzqeMtosKsiu StsCzm5df+lLIVA3DEb7bOYBIVzBPI6eNz87hGGE0+QZVDGGuoCJiS1BxGVoK7ICOtLn5jx2gCm 6986actjSKZ4Vw+YgrEL9DJJfpij3JKqfrWlwDVAco4xBoNucFtQXkgo3lls/8pyOkFrdLk+wEe USczpEFNd4c5t7hElrvTRO7I7m45Lyr+fm4AUPpOdQdIIc56+NITYStQa8cfgIX+DlZcg== X-Received: by 2002:a17:902:f652:b0:216:28c4:61c6 with SMTP id d9443c01a7336-219e6ebcab2mr1498125ad.34.1734639613352; Thu, 19 Dec 2024 12:20:13 -0800 (PST) Received: from mandiga.. ([2804:1b3:a7c3:2d5b:c4ce:4df0:8543:f129]) by smtp.gmail.com with ESMTPSA id d9443c01a7336-219dca02589sm16360645ad.257.2024.12.19.12.20.11 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 19 Dec 2024 12:20:12 -0800 (PST) From: Adhemerval Zanella To: libc-alpha@sourceware.org Cc: DJ Delorie , Joseph Myers , Paul Zimmermann Subject: [PATCH 03/10] math: Remove the error handling wrapper from lgammaf/lgammaf_r Date: Thu, 19 Dec 2024 17:13:07 -0300 Message-ID: <20241219202003.2651277-4-adhemerval.zanella@linaro.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20241219202003.2651277-1-adhemerval.zanella@linaro.org> References: <20241219202003.2651277-1-adhemerval.zanella@linaro.org> MIME-Version: 1.0 X-BeenThere: libc-alpha@sourceware.org X-Mailman-Version: 2.1.30 Precedence: list List-Id: Libc-alpha mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: libc-alpha-bounces~patch=linaro.org@sourceware.org It improves latency throughput for about 2%. --- math/Versions | 1 + math/lgamma-compat.h | 15 ++++++++++++--- math/w_lgammaf_compat2.c | 2 +- math/w_lgammaf_main.c | 7 +------ sysdeps/ieee754/flt-32/e_lgammaf_r.c | 12 ++++++++++-- sysdeps/ieee754/flt-32/w_lgammaf.c | 17 +++++++++++++++++ sysdeps/mach/hurd/i386/libm.abilist | 2 ++ sysdeps/unix/sysv/linux/aarch64/libm.abilist | 2 ++ sysdeps/unix/sysv/linux/alpha/libm.abilist | 2 ++ sysdeps/unix/sysv/linux/arm/be/libm.abilist | 2 ++ sysdeps/unix/sysv/linux/arm/le/libm.abilist | 2 ++ sysdeps/unix/sysv/linux/hppa/libm.abilist | 2 ++ sysdeps/unix/sysv/linux/i386/libm.abilist | 2 ++ .../unix/sysv/linux/m68k/coldfire/libm.abilist | 2 ++ .../unix/sysv/linux/m68k/m680x0/libm.abilist | 2 ++ .../unix/sysv/linux/microblaze/be/libm.abilist | 2 ++ .../unix/sysv/linux/microblaze/le/libm.abilist | 2 ++ .../unix/sysv/linux/mips/mips32/libm.abilist | 2 ++ .../unix/sysv/linux/mips/mips64/libm.abilist | 2 ++ .../linux/powerpc/powerpc32/fpu/libm.abilist | 2 ++ .../linux/powerpc/powerpc32/nofpu/libm.abilist | 2 ++ .../linux/powerpc/powerpc64/be/libm.abilist | 2 ++ .../linux/powerpc/powerpc64/le/libm.abilist | 2 ++ .../unix/sysv/linux/s390/s390-32/libm.abilist | 2 ++ .../unix/sysv/linux/s390/s390-64/libm.abilist | 2 ++ sysdeps/unix/sysv/linux/sh/be/libm.abilist | 2 ++ sysdeps/unix/sysv/linux/sh/le/libm.abilist | 2 ++ .../unix/sysv/linux/sparc/sparc32/libm.abilist | 2 ++ .../unix/sysv/linux/sparc/sparc64/libm.abilist | 2 ++ sysdeps/unix/sysv/linux/x86_64/64/libm.abilist | 2 ++ sysdeps/unix/sysv/linux/x86_64/x32/libm.abilist | 2 ++ 31 files changed, 92 insertions(+), 12 deletions(-) create mode 100644 sysdeps/ieee754/flt-32/w_lgammaf.c diff --git a/math/Versions b/math/Versions index b7cb4ba51d..81f277472d 100644 --- a/math/Versions +++ b/math/Versions @@ -672,5 +672,6 @@ libm { tanpif64x; tanpif128; # No SVID compatible error handling. log10f; + lgammaf; lgammaf_r; } } diff --git a/math/lgamma-compat.h b/math/lgamma-compat.h index c2530a1418..f69f649df6 100644 --- a/math/lgamma-compat.h +++ b/math/lgamma-compat.h @@ -34,10 +34,17 @@ old glibc. Users of this file define USE_AS_COMPAT to 0 when building the main - version of lgamma, 1 when building the compatibility version. */ + version of lgamma, 1 when building the compatibility version that + handles signgam visibility, and 2 when building the compatibility + that handles SVID support). */ +#if USE_AS_COMPAT <= 1 #define LGAMMA_OLD_VER GLIBC_2_0 #define LGAMMA_NEW_VER GLIBC_2_23 +#elif USE_AS_COMPAT == 2 +#define LGAMMA_OLD_VER GLIBC_2_23 +#define LGAMMA_NEW_VER GLIBC_2_41 +#endif #define HAVE_LGAMMA_COMPAT SHLIB_COMPAT (libm, LGAMMA_OLD_VER, LGAMMA_NEW_VER) /* Whether to build this version at all. */ @@ -45,8 +52,10 @@ (LIBM_SVID_COMPAT && (HAVE_LGAMMA_COMPAT || !USE_AS_COMPAT)) /* The name to use for this version. */ -#if USE_AS_COMPAT +#if USE_AS_COMPAT == 1 # define LGFUNC(FUNC) FUNC ## _compat +#elif USE_AS_COMPAT == 2 +# define LGFUNC(FUNC) FUNC ## _compat2 #else # define LGFUNC(FUNC) FUNC #endif @@ -54,7 +63,7 @@ /* If there is a compatibility version, gamma (not an ISO C function, so never a problem for it to set signgam) points directly to it rather than having separate versions. */ -#define GAMMA_ALIAS (USE_AS_COMPAT ? HAVE_LGAMMA_COMPAT : !HAVE_LGAMMA_COMPAT) +#define GAMMA_ALIAS (USE_AS_COMPAT == 1 ? HAVE_LGAMMA_COMPAT : !HAVE_LGAMMA_COMPAT) /* How to call the underlying lgamma_r function. */ #define CALL_LGAMMA(TYPE, FUNC, ARG) \ diff --git a/math/w_lgammaf_compat2.c b/math/w_lgammaf_compat2.c index 5fc402260c..3a942dbe04 100644 --- a/math/w_lgammaf_compat2.c +++ b/math/w_lgammaf_compat2.c @@ -1,2 +1,2 @@ -#define USE_AS_COMPAT 0 +#define USE_AS_COMPAT 2 #include diff --git a/math/w_lgammaf_main.c b/math/w_lgammaf_main.c index 22b7f8fc53..8d475d3a6c 100644 --- a/math/w_lgammaf_main.c +++ b/math/w_lgammaf_main.c @@ -33,12 +33,7 @@ LGFUNC (__lgammaf) (float x) return y; } -# if USE_AS_COMPAT -compat_symbol (libm, __lgammaf_compat, lgammaf, LGAMMA_OLD_VER); -# else -versioned_symbol (libm, __lgammaf, lgammaf, LGAMMA_NEW_VER); -libm_alias_float_other (__lgamma, lgamma) -# endif +compat_symbol (libm, LGFUNC (__lgammaf), lgammaf, LGAMMA_OLD_VER); # if GAMMA_ALIAS strong_alias (LGFUNC (__lgammaf), __gammaf) weak_alias (__gammaf, gammaf) diff --git a/sysdeps/ieee754/flt-32/e_lgammaf_r.c b/sysdeps/ieee754/flt-32/e_lgammaf_r.c index 75ec25fb9e..c99930fd43 100644 --- a/sysdeps/ieee754/flt-32/e_lgammaf_r.c +++ b/sysdeps/ieee754/flt-32/e_lgammaf_r.c @@ -36,6 +36,8 @@ SOFTWARE. #include #include #include +#include +#include #include #include "math_config.h" @@ -108,7 +110,7 @@ as_ln (double x) } float -__ieee754_lgammaf_r (float x, int *signgamp) +__lgamma_rf (float x, int *signgamp) { static const struct { @@ -363,4 +365,10 @@ __ieee754_lgammaf_r (float x, int *signgamp) } return r; } -libm_alias_finite (__ieee754_lgammaf_r, __lgammaf_r) +strong_alias (__lgamma_rf, __ieee754_lgammaf_r) +libm_alias_finite (__lgamma_rf, __lgammaf_r) +#if LIBM_SVID_COMPAT +versioned_symbol (libm, __lgamma_rf, lgammaf_r, GLIBC_2_41); +#else +libm_alias_float (__lgamma_r, lgamma_r) +#endif diff --git a/sysdeps/ieee754/flt-32/w_lgammaf.c b/sysdeps/ieee754/flt-32/w_lgammaf.c new file mode 100644 index 0000000000..ed6db0e51d --- /dev/null +++ b/sysdeps/ieee754/flt-32/w_lgammaf.c @@ -0,0 +1,17 @@ +#include +#include +#include + +float +__lgammaf (float x) +{ + return __lgammaf_r (x, &__signgam); +} +#if LIBM_SVID_COMPAT +versioned_symbol (libm, __lgammaf, lgammaf, GLIBC_2_41); +libm_alias_float_other (__lgamma, lgamma) +#else +libm_alias_float (__lgamma, lgamma) +strong_alias (__lgammaf, __gammaf) +weak_alias (__gammaf, gammaf) +#endif diff --git a/sysdeps/mach/hurd/i386/libm.abilist b/sysdeps/mach/hurd/i386/libm.abilist index 2c5340acb1..19c5404622 100644 --- a/sysdeps/mach/hurd/i386/libm.abilist +++ b/sysdeps/mach/hurd/i386/libm.abilist @@ -1261,6 +1261,8 @@ GLIBC_2.41 cospif32x F GLIBC_2.41 cospif64 F GLIBC_2.41 cospif64x F GLIBC_2.41 cospil F +GLIBC_2.41 lgammaf F +GLIBC_2.41 lgammaf_r F GLIBC_2.41 log10f F GLIBC_2.41 sinpi F GLIBC_2.41 sinpif F diff --git a/sysdeps/unix/sysv/linux/aarch64/libm.abilist b/sysdeps/unix/sysv/linux/aarch64/libm.abilist index cef9647f18..01fd052ad4 100644 --- a/sysdeps/unix/sysv/linux/aarch64/libm.abilist +++ b/sysdeps/unix/sysv/linux/aarch64/libm.abilist @@ -1229,6 +1229,8 @@ GLIBC_2.41 cospif32x F GLIBC_2.41 cospif64 F GLIBC_2.41 cospif64x F GLIBC_2.41 cospil F +GLIBC_2.41 lgammaf F +GLIBC_2.41 lgammaf_r F GLIBC_2.41 log10f F GLIBC_2.41 sinpi F GLIBC_2.41 sinpif F diff --git a/sysdeps/unix/sysv/linux/alpha/libm.abilist b/sysdeps/unix/sysv/linux/alpha/libm.abilist index cea5d26db0..987b3e867d 100644 --- a/sysdeps/unix/sysv/linux/alpha/libm.abilist +++ b/sysdeps/unix/sysv/linux/alpha/libm.abilist @@ -1388,6 +1388,8 @@ GLIBC_2.41 cospif32x F GLIBC_2.41 cospif64 F GLIBC_2.41 cospif64x F GLIBC_2.41 cospil F +GLIBC_2.41 lgammaf F +GLIBC_2.41 lgammaf_r F GLIBC_2.41 log10f F GLIBC_2.41 sinpi F GLIBC_2.41 sinpif F diff --git a/sysdeps/unix/sysv/linux/arm/be/libm.abilist b/sysdeps/unix/sysv/linux/arm/be/libm.abilist index 0d772526d6..555aa85754 100644 --- a/sysdeps/unix/sysv/linux/arm/be/libm.abilist +++ b/sysdeps/unix/sysv/linux/arm/be/libm.abilist @@ -908,6 +908,8 @@ GLIBC_2.41 cospif32 F GLIBC_2.41 cospif32x F GLIBC_2.41 cospif64 F GLIBC_2.41 cospil F +GLIBC_2.41 lgammaf F +GLIBC_2.41 lgammaf_r F GLIBC_2.41 log10f F GLIBC_2.41 sinpi F GLIBC_2.41 sinpif F diff --git a/sysdeps/unix/sysv/linux/arm/le/libm.abilist b/sysdeps/unix/sysv/linux/arm/le/libm.abilist index 0d772526d6..555aa85754 100644 --- a/sysdeps/unix/sysv/linux/arm/le/libm.abilist +++ b/sysdeps/unix/sysv/linux/arm/le/libm.abilist @@ -908,6 +908,8 @@ GLIBC_2.41 cospif32 F GLIBC_2.41 cospif32x F GLIBC_2.41 cospif64 F GLIBC_2.41 cospil F +GLIBC_2.41 lgammaf F +GLIBC_2.41 lgammaf_r F GLIBC_2.41 log10f F GLIBC_2.41 sinpi F GLIBC_2.41 sinpif F diff --git a/sysdeps/unix/sysv/linux/hppa/libm.abilist b/sysdeps/unix/sysv/linux/hppa/libm.abilist index 73638e858c..ebfeab6952 100644 --- a/sysdeps/unix/sysv/linux/hppa/libm.abilist +++ b/sysdeps/unix/sysv/linux/hppa/libm.abilist @@ -908,6 +908,8 @@ GLIBC_2.41 cospif32 F GLIBC_2.41 cospif32x F GLIBC_2.41 cospif64 F GLIBC_2.41 cospil F +GLIBC_2.41 lgammaf F +GLIBC_2.41 lgammaf_r F GLIBC_2.41 log10f F GLIBC_2.41 sinpi F GLIBC_2.41 sinpif F diff --git a/sysdeps/unix/sysv/linux/i386/libm.abilist b/sysdeps/unix/sysv/linux/i386/libm.abilist index 0be467f03e..0881fb8acf 100644 --- a/sysdeps/unix/sysv/linux/i386/libm.abilist +++ b/sysdeps/unix/sysv/linux/i386/libm.abilist @@ -1268,6 +1268,8 @@ GLIBC_2.41 cospif32x F GLIBC_2.41 cospif64 F GLIBC_2.41 cospif64x F GLIBC_2.41 cospil F +GLIBC_2.41 lgammaf F +GLIBC_2.41 lgammaf_r F GLIBC_2.41 log10f F GLIBC_2.41 sinpi F GLIBC_2.41 sinpif F diff --git a/sysdeps/unix/sysv/linux/m68k/coldfire/libm.abilist b/sysdeps/unix/sysv/linux/m68k/coldfire/libm.abilist index 0d772526d6..555aa85754 100644 --- a/sysdeps/unix/sysv/linux/m68k/coldfire/libm.abilist +++ b/sysdeps/unix/sysv/linux/m68k/coldfire/libm.abilist @@ -908,6 +908,8 @@ GLIBC_2.41 cospif32 F GLIBC_2.41 cospif32x F GLIBC_2.41 cospif64 F GLIBC_2.41 cospil F +GLIBC_2.41 lgammaf F +GLIBC_2.41 lgammaf_r F GLIBC_2.41 log10f F GLIBC_2.41 sinpi F GLIBC_2.41 sinpif F diff --git a/sysdeps/unix/sysv/linux/m68k/m680x0/libm.abilist b/sysdeps/unix/sysv/linux/m68k/m680x0/libm.abilist index c3c23fd02d..9dfc70db43 100644 --- a/sysdeps/unix/sysv/linux/m68k/m680x0/libm.abilist +++ b/sysdeps/unix/sysv/linux/m68k/m680x0/libm.abilist @@ -944,6 +944,8 @@ GLIBC_2.41 cospif32 F GLIBC_2.41 cospif32x F GLIBC_2.41 cospif64 F GLIBC_2.41 cospil F +GLIBC_2.41 lgammaf F +GLIBC_2.41 lgammaf_r F GLIBC_2.41 sinpi F GLIBC_2.41 sinpif F GLIBC_2.41 sinpif32 F diff --git a/sysdeps/unix/sysv/linux/microblaze/be/libm.abilist b/sysdeps/unix/sysv/linux/microblaze/be/libm.abilist index ab41a60d17..2ead389377 100644 --- a/sysdeps/unix/sysv/linux/microblaze/be/libm.abilist +++ b/sysdeps/unix/sysv/linux/microblaze/be/libm.abilist @@ -908,6 +908,8 @@ GLIBC_2.41 cospif32 F GLIBC_2.41 cospif32x F GLIBC_2.41 cospif64 F GLIBC_2.41 cospil F +GLIBC_2.41 lgammaf F +GLIBC_2.41 lgammaf_r F GLIBC_2.41 log10f F GLIBC_2.41 sinpi F GLIBC_2.41 sinpif F diff --git a/sysdeps/unix/sysv/linux/microblaze/le/libm.abilist b/sysdeps/unix/sysv/linux/microblaze/le/libm.abilist index ab41a60d17..2ead389377 100644 --- a/sysdeps/unix/sysv/linux/microblaze/le/libm.abilist +++ b/sysdeps/unix/sysv/linux/microblaze/le/libm.abilist @@ -908,6 +908,8 @@ GLIBC_2.41 cospif32 F GLIBC_2.41 cospif32x F GLIBC_2.41 cospif64 F GLIBC_2.41 cospil F +GLIBC_2.41 lgammaf F +GLIBC_2.41 lgammaf_r F GLIBC_2.41 log10f F GLIBC_2.41 sinpi F GLIBC_2.41 sinpif F diff --git a/sysdeps/unix/sysv/linux/mips/mips32/libm.abilist b/sysdeps/unix/sysv/linux/mips/mips32/libm.abilist index 0e08dd4b0c..0d749f151c 100644 --- a/sysdeps/unix/sysv/linux/mips/mips32/libm.abilist +++ b/sysdeps/unix/sysv/linux/mips/mips32/libm.abilist @@ -908,6 +908,8 @@ GLIBC_2.41 cospif32 F GLIBC_2.41 cospif32x F GLIBC_2.41 cospif64 F GLIBC_2.41 cospil F +GLIBC_2.41 lgammaf F +GLIBC_2.41 lgammaf_r F GLIBC_2.41 log10f F GLIBC_2.41 sinpi F GLIBC_2.41 sinpif F diff --git a/sysdeps/unix/sysv/linux/mips/mips64/libm.abilist b/sysdeps/unix/sysv/linux/mips/mips64/libm.abilist index 52e719391a..503f6c4716 100644 --- a/sysdeps/unix/sysv/linux/mips/mips64/libm.abilist +++ b/sysdeps/unix/sysv/linux/mips/mips64/libm.abilist @@ -1229,6 +1229,8 @@ GLIBC_2.41 cospif32x F GLIBC_2.41 cospif64 F GLIBC_2.41 cospif64x F GLIBC_2.41 cospil F +GLIBC_2.41 lgammaf F +GLIBC_2.41 lgammaf_r F GLIBC_2.41 log10f F GLIBC_2.41 sinpi F GLIBC_2.41 sinpif F diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libm.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libm.abilist index 6ee447acd1..721baa844c 100644 --- a/sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libm.abilist +++ b/sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libm.abilist @@ -1055,6 +1055,8 @@ GLIBC_2.41 cospif32 F GLIBC_2.41 cospif32x F GLIBC_2.41 cospif64 F GLIBC_2.41 cospil F +GLIBC_2.41 lgammaf F +GLIBC_2.41 lgammaf_r F GLIBC_2.41 log10f F GLIBC_2.41 sinpi F GLIBC_2.41 sinpif F diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libm.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libm.abilist index 00579cad3a..84b817ead4 100644 --- a/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libm.abilist +++ b/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libm.abilist @@ -1054,6 +1054,8 @@ GLIBC_2.41 cospif32 F GLIBC_2.41 cospif32x F GLIBC_2.41 cospif64 F GLIBC_2.41 cospil F +GLIBC_2.41 lgammaf F +GLIBC_2.41 lgammaf_r F GLIBC_2.41 log10f F GLIBC_2.41 sinpi F GLIBC_2.41 sinpif F diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libm.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libm.abilist index cb5a390626..16ad95f05c 100644 --- a/sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libm.abilist +++ b/sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libm.abilist @@ -1048,6 +1048,8 @@ GLIBC_2.41 cospif32 F GLIBC_2.41 cospif32x F GLIBC_2.41 cospif64 F GLIBC_2.41 cospil F +GLIBC_2.41 lgammaf F +GLIBC_2.41 lgammaf_r F GLIBC_2.41 log10f F GLIBC_2.41 sinpi F GLIBC_2.41 sinpif F diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libm.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libm.abilist index d87ea27219..051e2bb763 100644 --- a/sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libm.abilist +++ b/sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libm.abilist @@ -1413,6 +1413,8 @@ GLIBC_2.41 cospif32x F GLIBC_2.41 cospif64 F GLIBC_2.41 cospif64x F GLIBC_2.41 cospil F +GLIBC_2.41 lgammaf F +GLIBC_2.41 lgammaf_r F GLIBC_2.41 log10f F GLIBC_2.41 sinpi F GLIBC_2.41 sinpif F diff --git a/sysdeps/unix/sysv/linux/s390/s390-32/libm.abilist b/sysdeps/unix/sysv/linux/s390/s390-32/libm.abilist index 604b5b3c43..b460e7c560 100644 --- a/sysdeps/unix/sysv/linux/s390/s390-32/libm.abilist +++ b/sysdeps/unix/sysv/linux/s390/s390-32/libm.abilist @@ -1332,6 +1332,8 @@ GLIBC_2.41 cospif32x F GLIBC_2.41 cospif64 F GLIBC_2.41 cospif64x F GLIBC_2.41 cospil F +GLIBC_2.41 lgammaf F +GLIBC_2.41 lgammaf_r F GLIBC_2.41 log10f F GLIBC_2.41 sinpi F GLIBC_2.41 sinpif F diff --git a/sysdeps/unix/sysv/linux/s390/s390-64/libm.abilist b/sysdeps/unix/sysv/linux/s390/s390-64/libm.abilist index 5a051fb088..0f44c65cfa 100644 --- a/sysdeps/unix/sysv/linux/s390/s390-64/libm.abilist +++ b/sysdeps/unix/sysv/linux/s390/s390-64/libm.abilist @@ -1332,6 +1332,8 @@ GLIBC_2.41 cospif32x F GLIBC_2.41 cospif64 F GLIBC_2.41 cospif64x F GLIBC_2.41 cospil F +GLIBC_2.41 lgammaf F +GLIBC_2.41 lgammaf_r F GLIBC_2.41 log10f F GLIBC_2.41 sinpi F GLIBC_2.41 sinpif F diff --git a/sysdeps/unix/sysv/linux/sh/be/libm.abilist b/sysdeps/unix/sysv/linux/sh/be/libm.abilist index 95b843407a..450af3bfa0 100644 --- a/sysdeps/unix/sysv/linux/sh/be/libm.abilist +++ b/sysdeps/unix/sysv/linux/sh/be/libm.abilist @@ -908,6 +908,8 @@ GLIBC_2.41 cospif32 F GLIBC_2.41 cospif32x F GLIBC_2.41 cospif64 F GLIBC_2.41 cospil F +GLIBC_2.41 lgammaf F +GLIBC_2.41 lgammaf_r F GLIBC_2.41 log10f F GLIBC_2.41 sinpi F GLIBC_2.41 sinpif F diff --git a/sysdeps/unix/sysv/linux/sh/le/libm.abilist b/sysdeps/unix/sysv/linux/sh/le/libm.abilist index 95b843407a..450af3bfa0 100644 --- a/sysdeps/unix/sysv/linux/sh/le/libm.abilist +++ b/sysdeps/unix/sysv/linux/sh/le/libm.abilist @@ -908,6 +908,8 @@ GLIBC_2.41 cospif32 F GLIBC_2.41 cospif32x F GLIBC_2.41 cospif64 F GLIBC_2.41 cospil F +GLIBC_2.41 lgammaf F +GLIBC_2.41 lgammaf_r F GLIBC_2.41 log10f F GLIBC_2.41 sinpi F GLIBC_2.41 sinpif F diff --git a/sysdeps/unix/sysv/linux/sparc/sparc32/libm.abilist b/sysdeps/unix/sysv/linux/sparc/sparc32/libm.abilist index 94a44a5cd3..bd0d980112 100644 --- a/sysdeps/unix/sysv/linux/sparc/sparc32/libm.abilist +++ b/sysdeps/unix/sysv/linux/sparc/sparc32/libm.abilist @@ -1339,6 +1339,8 @@ GLIBC_2.41 cospif32x F GLIBC_2.41 cospif64 F GLIBC_2.41 cospif64x F GLIBC_2.41 cospil F +GLIBC_2.41 lgammaf F +GLIBC_2.41 lgammaf_r F GLIBC_2.41 log10f F GLIBC_2.41 sinpi F GLIBC_2.41 sinpif F diff --git a/sysdeps/unix/sysv/linux/sparc/sparc64/libm.abilist b/sysdeps/unix/sysv/linux/sparc/sparc64/libm.abilist index 492ea37070..a1847fe909 100644 --- a/sysdeps/unix/sysv/linux/sparc/sparc64/libm.abilist +++ b/sysdeps/unix/sysv/linux/sparc/sparc64/libm.abilist @@ -1229,6 +1229,8 @@ GLIBC_2.41 cospif32x F GLIBC_2.41 cospif64 F GLIBC_2.41 cospif64x F GLIBC_2.41 cospil F +GLIBC_2.41 lgammaf F +GLIBC_2.41 lgammaf_r F GLIBC_2.41 log10f F GLIBC_2.41 sinpi F GLIBC_2.41 sinpif F diff --git a/sysdeps/unix/sysv/linux/x86_64/64/libm.abilist b/sysdeps/unix/sysv/linux/x86_64/64/libm.abilist index 0a8f74b516..22b87c7374 100644 --- a/sysdeps/unix/sysv/linux/x86_64/64/libm.abilist +++ b/sysdeps/unix/sysv/linux/x86_64/64/libm.abilist @@ -1262,6 +1262,8 @@ GLIBC_2.41 cospif32x F GLIBC_2.41 cospif64 F GLIBC_2.41 cospif64x F GLIBC_2.41 cospil F +GLIBC_2.41 lgammaf F +GLIBC_2.41 lgammaf_r F GLIBC_2.41 log10f F GLIBC_2.41 sinpi F GLIBC_2.41 sinpif F diff --git a/sysdeps/unix/sysv/linux/x86_64/x32/libm.abilist b/sysdeps/unix/sysv/linux/x86_64/x32/libm.abilist index 999c57b4b1..79194159c3 100644 --- a/sysdeps/unix/sysv/linux/x86_64/x32/libm.abilist +++ b/sysdeps/unix/sysv/linux/x86_64/x32/libm.abilist @@ -1262,6 +1262,8 @@ GLIBC_2.41 cospif32x F GLIBC_2.41 cospif64 F GLIBC_2.41 cospif64x F GLIBC_2.41 cospil F +GLIBC_2.41 lgammaf F +GLIBC_2.41 lgammaf_r F GLIBC_2.41 log10f F GLIBC_2.41 sinpi F GLIBC_2.41 sinpif F From patchwork Thu Dec 19 20:13:08 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Adhemerval Zanella X-Patchwork-Id: 852055 Delivered-To: patch@linaro.org Received: by 2002:a5d:4888:0:b0:385:e875:8a9e with SMTP id g8csp1697639wrq; Thu, 19 Dec 2024 12:23:58 -0800 (PST) X-Forwarded-Encrypted: i=3; AJvYcCV+2SAem1GPDXqXUQf0fl1r2AG/6cJunXnPwUYhrpwqLidoXmc/TopLWCFUZuZt8lgOccICDg==@linaro.org X-Google-Smtp-Source: AGHT+IFMILiuBNco48JjS3JzYsrGusWkicTXnEG3gXDbiUr1k2zmRv9yRIH3tAYeWhmMe+30misI X-Received: by 2002:a05:622a:164e:b0:467:67ad:e2a6 with SMTP id d75a77b69052e-46a4a8efcabmr6065961cf.26.1734639838266; Thu, 19 Dec 2024 12:23:58 -0800 (PST) ARC-Seal: i=2; a=rsa-sha256; t=1734639838; cv=pass; d=google.com; s=arc-20240605; b=IUcX4NRC/vTuIyy/vBHkt768/bJRWo+/khRlmK3WzyCxejWDMcFcUVHQjJfi+44cIj /3yFbi6dxsyhYIfW0M2y7UKOFI/ddCoyjxiDcvbT5kRiZjn7sOrHBBnCcFMNj1gJall9 npx8OBZIgZktn4d18YS04JGiuWvIEOiEyLveBfABZqliUo58V8ADN+/7C0dVUnTjXqZe iT9RyPRQnHWaRvVa7Dr83snmSO76OTX/eFiTsXDm39YpkXO19NgqDjNbuooBWLsOeAdb 32g5I20Dx0CD3BT1Myvbp+f3m7SAIo6PLZHNOz7ivv6asHf5lqMCvyudv0o2tYCKFGce jXAQ== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20240605; h=errors-to:list-subscribe:list-help:list-post:list-archive :list-unsubscribe:list-id:precedence:content-transfer-encoding :mime-version:references:in-reply-to:message-id:date:subject:cc:to :from:dkim-signature:dkim-filter:arc-filter:dmarc-filter :delivered-to; bh=Of7WS/zyc1YuvsJqhXoxFRcCQaHLpBXGetWv4I2SfKU=; fh=c0s3Uezv7Rag51rMi6q2BcriyJCPC/LMNTAVHmiKG0w=; b=LizjFM18a8Y3qIzUBLfNGNVUZs1Yp2vJ8x29HjOIKwIdx2q8vdIV0CeiPWOSPZvZBg GyUwR58Ff0xL0+Po6TN49XsakTYJu1Yr0wSsVAlFyRXW1EanD3nc0/cFUcd0D925hyC2 bX+fQ1bFfDetJSzqCj/azaRaRJvGia7vJGgQ5fZQT6scj40vKMQJ+D41luqr81S4eg8n vlk82W/O96Uxvd+rmdebyMLpRXC0dLEnBvreAnUqMTzK9B0FOiKaUVYPfXlFod2He271 wa2ErkAn4RwckZ+NHQebAuNjzQpoPMjKkEW/jFeSVsfTA0flIBzx63pIiLzYu1IBYFlf McHg==; dara=google.com ARC-Authentication-Results: i=2; mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=R5owNJv2; arc=pass (i=1); spf=pass (google.com: domain of libc-alpha-bounces~patch=linaro.org@sourceware.org designates 2620:52:3:1:0:246e:9693:128c as permitted sender) smtp.mailfrom="libc-alpha-bounces~patch=linaro.org@sourceware.org"; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org Return-Path: Received: from server2.sourceware.org (server2.sourceware.org. [2620:52:3:1:0:246e:9693:128c]) by mx.google.com with ESMTPS id d75a77b69052e-46a3e6aecd7si11853871cf.197.2024.12.19.12.23.58 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 19 Dec 2024 12:23:58 -0800 (PST) Received-SPF: pass (google.com: domain of libc-alpha-bounces~patch=linaro.org@sourceware.org designates 2620:52:3:1:0:246e:9693:128c as permitted sender) client-ip=2620:52:3:1:0:246e:9693:128c; Authentication-Results: mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=R5owNJv2; arc=pass (i=1); spf=pass (google.com: domain of libc-alpha-bounces~patch=linaro.org@sourceware.org designates 2620:52:3:1:0:246e:9693:128c as permitted sender) smtp.mailfrom="libc-alpha-bounces~patch=linaro.org@sourceware.org"; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: from server2.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id C68E83858C31 for ; Thu, 19 Dec 2024 20:23:56 +0000 (GMT) X-Original-To: libc-alpha@sourceware.org Delivered-To: libc-alpha@sourceware.org Received: from mail-pl1-x634.google.com (mail-pl1-x634.google.com [IPv6:2607:f8b0:4864:20::634]) by sourceware.org (Postfix) with ESMTPS id 8C8843858D3C for ; Thu, 19 Dec 2024 20:20:19 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 8C8843858D3C Authentication-Results: sourceware.org; dmarc=pass (p=none dis=none) header.from=linaro.org Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=linaro.org ARC-Filter: OpenARC Filter v1.0.0 sourceware.org 8C8843858D3C Authentication-Results: server2.sourceware.org; arc=none smtp.remote-ip=2607:f8b0:4864:20::634 ARC-Seal: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1734639619; cv=none; b=KWUCho3b9ZBjZI7BbxQXT5hUZ2wEPF4NFTbfl7Mw14C2lzyS6k8xsqQpCvsrC2SOJ8rxa0ntXuiTQaMSSsC9QMxxFnZ64z86mYVUBclOfePgVnhoPXDnkMVrVYCflBNnf+UEOntyV3kFAHxwR4K1W08eTBVFc3NihGHc8/eE8mE= ARC-Message-Signature: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1734639619; c=relaxed/simple; bh=qNg09suDDWv1LIWYrtHrCxJmPEa9RtGcdmJje7BxvDg=; h=DKIM-Signature:From:To:Subject:Date:Message-ID:MIME-Version; b=lv4ZmgdGgIzfCM4QI5+2V7OrKZVts4UWcQWJyyQ0PX50R2+So9cRSm0atOYp9TfWTaDG7SohKoMafipp0EtX7nNn0CtIYvKPPIFjY+1dcAIn8lcfDyZN7/uLqyKh0bqlYJ8zQd18TX5A0bVdMUH/2cHsowFCyoDNeNEflPeqX5k= ARC-Authentication-Results: i=1; server2.sourceware.org DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 8C8843858D3C Authentication-Results: sourceware.org; dkim=pass (2048-bit key, unprotected) header.d=linaro.org header.i=@linaro.org header.a=rsa-sha256 header.s=google header.b=R5owNJv2 Received: by mail-pl1-x634.google.com with SMTP id d9443c01a7336-216728b1836so10468045ad.0 for ; Thu, 19 Dec 2024 12:20:19 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1734639615; x=1735244415; darn=sourceware.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=Of7WS/zyc1YuvsJqhXoxFRcCQaHLpBXGetWv4I2SfKU=; b=R5owNJv2j15tV0v/tbQunXNPYSmimvAMszbKcGGQxvAohkd5gclutzQktuQ9YXRmcz 9DUIT9OIf4zrPe1MqRKtcyXHxqB3t/dh0y6s6b4Gd4N/Lpnm8UUj5whNcXvb+YJswoWi gTfa71uqSt1Mq1OSqLOj2h0jLVl/JlCWJYO67R+kb5xylQ+U9pWTpap8w9qnqVMVD5A5 UTiEwUy4J6Q3pnrPA707+VDgCtSafmJKvua1RYOmzifPNtznqTvNTkr8j8OVOS2CecMz hkKfI7C0/8ikLlWdENZLWMCh/OqkjA/ImOEXO617YaL27surMb5itDbZJprX+fVa5cGm b+oQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1734639615; x=1735244415; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=Of7WS/zyc1YuvsJqhXoxFRcCQaHLpBXGetWv4I2SfKU=; b=VNyoB4BRAxosrLluOrXzbLpUnn6bm4QLsOOn00l191CqFMlvgWc9Oa+9tt+glFqlf3 GTHBphvMERlqu4nkM7RbroWR0y+U1CUcuO45/yflx53WMLAaFvxi/4uMJz8ZbEaReKer eXzSOVDftkrR5PLr3kTK2vkSMQ3Ev65CWPvI3qLMUiMpo1XWxsG2As6Z6ZvaoGW75N7D ygWCc/EaYQAhk0smiZh1FBIaBKi20/6pTDVwl/lqs6JlzCKMcMenmEONWwqOuZpF6W8K 7/rLwUWIOMabiRdaYF5oZdjEsL4AWNPDC9WkLgdR7V1ewExHvrjqHBBwZNrLgGlu5CHs CiGQ== X-Gm-Message-State: AOJu0Yy2xnTBFISjulN8KkAn/K1mbU1QWH8sCuqEqVQjdR1WrAGD+BWk e0Kq3akjiU9whaV4GgcJbUt8rIvOGhsgczGqVr6ZuibSyVR+5sQQx4uYz404rcIwiUkD5zzFqSt u X-Gm-Gg: ASbGncvAjJUOZ58M5AosIZAtBRSmfGVeibkxgqyAIi2wL5NVj8cLnXmkRVbfb4EcZgz tNcESAsiCuZYbyQMZnZGDwuSrEQzym0EKl9/rbfTZvew4F5+3UgyCEUU0ATpwJxwg00QEqFKqqL cmv+QDqv+HYoZ/1RKx5PbYu/a/DrHfG7LRC5MFJ0Odbu02mJVOun6hjOVnEfUiVjq0ImXc0SOul 3ZOWjWnIRwGUpBVkmGqdbbIrR5j2ZuBuyvaDge8HphuINykal32ruE/4B3+w4D+DuYaRw== X-Received: by 2002:a17:902:ce84:b0:216:1d5a:f33f with SMTP id d9443c01a7336-219e6f54d75mr565025ad.57.1734639615268; Thu, 19 Dec 2024 12:20:15 -0800 (PST) Received: from mandiga.. ([2804:1b3:a7c3:2d5b:c4ce:4df0:8543:f129]) by smtp.gmail.com with ESMTPSA id d9443c01a7336-219dca02589sm16360645ad.257.2024.12.19.12.20.13 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 19 Dec 2024 12:20:14 -0800 (PST) From: Adhemerval Zanella To: libc-alpha@sourceware.org Cc: DJ Delorie , Joseph Myers , Paul Zimmermann Subject: [PATCH 04/10] math: Remove the error handling wrapper from acosf Date: Thu, 19 Dec 2024 17:13:08 -0300 Message-ID: <20241219202003.2651277-5-adhemerval.zanella@linaro.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20241219202003.2651277-1-adhemerval.zanella@linaro.org> References: <20241219202003.2651277-1-adhemerval.zanella@linaro.org> MIME-Version: 1.0 X-BeenThere: libc-alpha@sourceware.org X-Mailman-Version: 2.1.30 Precedence: list List-Id: Libc-alpha mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: libc-alpha-bounces~patch=linaro.org@sourceware.org It improves latency for about 2-10% and throughput for about 5-10%. --- math/Versions | 1 + math/w_acosf.c | 8 ++++++++ math/w_acosf_compat.c | 10 +++++++--- sysdeps/ieee754/flt-32/e_acosf.c | 11 ++++++++++- sysdeps/ieee754/flt-32/w_acosf.c | 1 + sysdeps/m68k/m680x0/fpu/w_acosf_compat.c | 8 ++++++++ sysdeps/mach/hurd/i386/libm.abilist | 1 + sysdeps/unix/sysv/linux/aarch64/libm.abilist | 1 + sysdeps/unix/sysv/linux/alpha/libm.abilist | 1 + sysdeps/unix/sysv/linux/arm/be/libm.abilist | 1 + sysdeps/unix/sysv/linux/arm/le/libm.abilist | 1 + sysdeps/unix/sysv/linux/hppa/libm.abilist | 1 + sysdeps/unix/sysv/linux/i386/libm.abilist | 1 + sysdeps/unix/sysv/linux/m68k/coldfire/libm.abilist | 1 + sysdeps/unix/sysv/linux/microblaze/be/libm.abilist | 1 + sysdeps/unix/sysv/linux/microblaze/le/libm.abilist | 1 + sysdeps/unix/sysv/linux/mips/mips32/libm.abilist | 1 + sysdeps/unix/sysv/linux/mips/mips64/libm.abilist | 1 + .../sysv/linux/powerpc/powerpc32/fpu/libm.abilist | 1 + .../sysv/linux/powerpc/powerpc32/nofpu/libm.abilist | 1 + .../unix/sysv/linux/powerpc/powerpc64/be/libm.abilist | 1 + .../unix/sysv/linux/powerpc/powerpc64/le/libm.abilist | 1 + sysdeps/unix/sysv/linux/s390/s390-32/libm.abilist | 1 + sysdeps/unix/sysv/linux/s390/s390-64/libm.abilist | 1 + sysdeps/unix/sysv/linux/sh/be/libm.abilist | 1 + sysdeps/unix/sysv/linux/sh/le/libm.abilist | 1 + sysdeps/unix/sysv/linux/sparc/sparc32/libm.abilist | 1 + sysdeps/unix/sysv/linux/sparc/sparc64/libm.abilist | 1 + sysdeps/unix/sysv/linux/x86_64/64/libm.abilist | 1 + sysdeps/unix/sysv/linux/x86_64/x32/libm.abilist | 1 + 30 files changed, 59 insertions(+), 4 deletions(-) create mode 100644 math/w_acosf.c create mode 100644 sysdeps/ieee754/flt-32/w_acosf.c create mode 100644 sysdeps/m68k/m680x0/fpu/w_acosf_compat.c diff --git a/math/Versions b/math/Versions index 81f277472d..f6c7bd8d61 100644 --- a/math/Versions +++ b/math/Versions @@ -673,5 +673,6 @@ libm { # No SVID compatible error handling. log10f; lgammaf; lgammaf_r; + acosf; } } diff --git a/math/w_acosf.c b/math/w_acosf.c new file mode 100644 index 0000000000..637b52f624 --- /dev/null +++ b/math/w_acosf.c @@ -0,0 +1,8 @@ +#include +#undef __USE_WRAPPER_TEMPLATE +#define __USE_WRAPPER_TEMPLATE 1 +#undef declare_mgen_alias +#define declare_mgen_alias(a, b) +#include +versioned_symbol (libm, __acosf, acosf, GLIBC_2_41); +libm_alias_float_other (__acosf, acosf) diff --git a/math/w_acosf_compat.c b/math/w_acosf_compat.c index 60ad481fc7..34e355737f 100644 --- a/math/w_acosf_compat.c +++ b/math/w_acosf_compat.c @@ -22,10 +22,10 @@ #include -#if LIBM_SVID_COMPAT +#if LIBM_SVID_COMPAT && SHLIB_COMPAT (libm, GLIBC_2_0, GLIBC_2_41) /* wrapper acosf */ float -__acosf (float x) +__acos_compatf (float x) { if (__builtin_expect (isgreater (fabsf (x), 1.0f), 0) && _LIB_VERSION != _IEEE_) @@ -37,5 +37,9 @@ __acosf (float x) return __ieee754_acosf (x); } -libm_alias_float (__acos, acos) +# ifdef NO_COMPAT_NEEDED +libm_alias_float (__acos_compat, acos) +# else +compat_symbol (libm, __acos_compatf, acosf, GLIBC_2_0); +# endif #endif diff --git a/sysdeps/ieee754/flt-32/e_acosf.c b/sysdeps/ieee754/flt-32/e_acosf.c index cba01221dc..c592c67d02 100644 --- a/sysdeps/ieee754/flt-32/e_acosf.c +++ b/sysdeps/ieee754/flt-32/e_acosf.c @@ -28,6 +28,8 @@ SOFTWARE. #include #include #include +#include +#include #include "math_config.h" static __attribute__ ((noinline)) float @@ -64,7 +66,7 @@ poly12 (double z, const double *c) } float -__ieee754_acosf (float x) +__acosf (float x) { const double pi2 = 0x1.921fb54442d18p+0; static const double o[] = { 0, 0x1.921fb54442d18p+1 }; @@ -136,4 +138,11 @@ __ieee754_acosf (float x) } return r; } +strong_alias (__acosf, __ieee754_acosf) +#if LIBM_SVID_COMPAT +versioned_symbol (libm, __acosf, acosf, GLIBC_2_41); +libm_alias_float_other (__acos, acos) +#else +libm_alias_float (__acos, acos) +#endif libm_alias_finite (__ieee754_acosf, __acosf) diff --git a/sysdeps/ieee754/flt-32/w_acosf.c b/sysdeps/ieee754/flt-32/w_acosf.c new file mode 100644 index 0000000000..1cc8931700 --- /dev/null +++ b/sysdeps/ieee754/flt-32/w_acosf.c @@ -0,0 +1 @@ +/* Not needed. */ diff --git a/sysdeps/m68k/m680x0/fpu/w_acosf_compat.c b/sysdeps/m68k/m680x0/fpu/w_acosf_compat.c new file mode 100644 index 0000000000..c49aeb2e06 --- /dev/null +++ b/sysdeps/m68k/m680x0/fpu/w_acosf_compat.c @@ -0,0 +1,8 @@ +/* m68k provides an optimized __ieee754_acosf. */ +#ifdef SHARED +# define NO_COMPAT_NEEDED 1 +# include +#else +# include +# include +#endif diff --git a/sysdeps/mach/hurd/i386/libm.abilist b/sysdeps/mach/hurd/i386/libm.abilist index 19c5404622..a2ef2276c4 100644 --- a/sysdeps/mach/hurd/i386/libm.abilist +++ b/sysdeps/mach/hurd/i386/libm.abilist @@ -1221,6 +1221,7 @@ GLIBC_2.40 logp1f32x F GLIBC_2.40 logp1f64 F GLIBC_2.40 logp1f64x F GLIBC_2.40 logp1l F +GLIBC_2.41 acosf F GLIBC_2.41 acospi F GLIBC_2.41 acospif F GLIBC_2.41 acospif128 F diff --git a/sysdeps/unix/sysv/linux/aarch64/libm.abilist b/sysdeps/unix/sysv/linux/aarch64/libm.abilist index 01fd052ad4..9beef4a25d 100644 --- a/sysdeps/unix/sysv/linux/aarch64/libm.abilist +++ b/sysdeps/unix/sysv/linux/aarch64/libm.abilist @@ -1189,6 +1189,7 @@ GLIBC_2.40 logp1f32x F GLIBC_2.40 logp1f64 F GLIBC_2.40 logp1f64x F GLIBC_2.40 logp1l F +GLIBC_2.41 acosf F GLIBC_2.41 acospi F GLIBC_2.41 acospif F GLIBC_2.41 acospif128 F diff --git a/sysdeps/unix/sysv/linux/alpha/libm.abilist b/sysdeps/unix/sysv/linux/alpha/libm.abilist index 987b3e867d..17e08a05b1 100644 --- a/sysdeps/unix/sysv/linux/alpha/libm.abilist +++ b/sysdeps/unix/sysv/linux/alpha/libm.abilist @@ -1348,6 +1348,7 @@ GLIBC_2.40 logp1f32x F GLIBC_2.40 logp1f64 F GLIBC_2.40 logp1f64x F GLIBC_2.40 logp1l F +GLIBC_2.41 acosf F GLIBC_2.41 acospi F GLIBC_2.41 acospif F GLIBC_2.41 acospif128 F diff --git a/sysdeps/unix/sysv/linux/arm/be/libm.abilist b/sysdeps/unix/sysv/linux/arm/be/libm.abilist index 555aa85754..f624edcbb7 100644 --- a/sysdeps/unix/sysv/linux/arm/be/libm.abilist +++ b/sysdeps/unix/sysv/linux/arm/be/libm.abilist @@ -878,6 +878,7 @@ GLIBC_2.40 logp1f32 F GLIBC_2.40 logp1f32x F GLIBC_2.40 logp1f64 F GLIBC_2.40 logp1l F +GLIBC_2.41 acosf F GLIBC_2.41 acospi F GLIBC_2.41 acospif F GLIBC_2.41 acospif32 F diff --git a/sysdeps/unix/sysv/linux/arm/le/libm.abilist b/sysdeps/unix/sysv/linux/arm/le/libm.abilist index 555aa85754..f624edcbb7 100644 --- a/sysdeps/unix/sysv/linux/arm/le/libm.abilist +++ b/sysdeps/unix/sysv/linux/arm/le/libm.abilist @@ -878,6 +878,7 @@ GLIBC_2.40 logp1f32 F GLIBC_2.40 logp1f32x F GLIBC_2.40 logp1f64 F GLIBC_2.40 logp1l F +GLIBC_2.41 acosf F GLIBC_2.41 acospi F GLIBC_2.41 acospif F GLIBC_2.41 acospif32 F diff --git a/sysdeps/unix/sysv/linux/hppa/libm.abilist b/sysdeps/unix/sysv/linux/hppa/libm.abilist index ebfeab6952..eecea6c987 100644 --- a/sysdeps/unix/sysv/linux/hppa/libm.abilist +++ b/sysdeps/unix/sysv/linux/hppa/libm.abilist @@ -878,6 +878,7 @@ GLIBC_2.40 logp1f32 F GLIBC_2.40 logp1f32x F GLIBC_2.40 logp1f64 F GLIBC_2.40 logp1l F +GLIBC_2.41 acosf F GLIBC_2.41 acospi F GLIBC_2.41 acospif F GLIBC_2.41 acospif32 F diff --git a/sysdeps/unix/sysv/linux/i386/libm.abilist b/sysdeps/unix/sysv/linux/i386/libm.abilist index 0881fb8acf..6b7f949e39 100644 --- a/sysdeps/unix/sysv/linux/i386/libm.abilist +++ b/sysdeps/unix/sysv/linux/i386/libm.abilist @@ -1228,6 +1228,7 @@ GLIBC_2.40 logp1f32x F GLIBC_2.40 logp1f64 F GLIBC_2.40 logp1f64x F GLIBC_2.40 logp1l F +GLIBC_2.41 acosf F GLIBC_2.41 acospi F GLIBC_2.41 acospif F GLIBC_2.41 acospif128 F diff --git a/sysdeps/unix/sysv/linux/m68k/coldfire/libm.abilist b/sysdeps/unix/sysv/linux/m68k/coldfire/libm.abilist index 555aa85754..f624edcbb7 100644 --- a/sysdeps/unix/sysv/linux/m68k/coldfire/libm.abilist +++ b/sysdeps/unix/sysv/linux/m68k/coldfire/libm.abilist @@ -878,6 +878,7 @@ GLIBC_2.40 logp1f32 F GLIBC_2.40 logp1f32x F GLIBC_2.40 logp1f64 F GLIBC_2.40 logp1l F +GLIBC_2.41 acosf F GLIBC_2.41 acospi F GLIBC_2.41 acospif F GLIBC_2.41 acospif32 F diff --git a/sysdeps/unix/sysv/linux/microblaze/be/libm.abilist b/sysdeps/unix/sysv/linux/microblaze/be/libm.abilist index 2ead389377..3ff01e0719 100644 --- a/sysdeps/unix/sysv/linux/microblaze/be/libm.abilist +++ b/sysdeps/unix/sysv/linux/microblaze/be/libm.abilist @@ -878,6 +878,7 @@ GLIBC_2.40 logp1f32 F GLIBC_2.40 logp1f32x F GLIBC_2.40 logp1f64 F GLIBC_2.40 logp1l F +GLIBC_2.41 acosf F GLIBC_2.41 acospi F GLIBC_2.41 acospif F GLIBC_2.41 acospif32 F diff --git a/sysdeps/unix/sysv/linux/microblaze/le/libm.abilist b/sysdeps/unix/sysv/linux/microblaze/le/libm.abilist index 2ead389377..3ff01e0719 100644 --- a/sysdeps/unix/sysv/linux/microblaze/le/libm.abilist +++ b/sysdeps/unix/sysv/linux/microblaze/le/libm.abilist @@ -878,6 +878,7 @@ GLIBC_2.40 logp1f32 F GLIBC_2.40 logp1f32x F GLIBC_2.40 logp1f64 F GLIBC_2.40 logp1l F +GLIBC_2.41 acosf F GLIBC_2.41 acospi F GLIBC_2.41 acospif F GLIBC_2.41 acospif32 F diff --git a/sysdeps/unix/sysv/linux/mips/mips32/libm.abilist b/sysdeps/unix/sysv/linux/mips/mips32/libm.abilist index 0d749f151c..fbf247121d 100644 --- a/sysdeps/unix/sysv/linux/mips/mips32/libm.abilist +++ b/sysdeps/unix/sysv/linux/mips/mips32/libm.abilist @@ -878,6 +878,7 @@ GLIBC_2.40 logp1f32 F GLIBC_2.40 logp1f32x F GLIBC_2.40 logp1f64 F GLIBC_2.40 logp1l F +GLIBC_2.41 acosf F GLIBC_2.41 acospi F GLIBC_2.41 acospif F GLIBC_2.41 acospif32 F diff --git a/sysdeps/unix/sysv/linux/mips/mips64/libm.abilist b/sysdeps/unix/sysv/linux/mips/mips64/libm.abilist index 503f6c4716..e2311fb6db 100644 --- a/sysdeps/unix/sysv/linux/mips/mips64/libm.abilist +++ b/sysdeps/unix/sysv/linux/mips/mips64/libm.abilist @@ -1189,6 +1189,7 @@ GLIBC_2.40 logp1f32x F GLIBC_2.40 logp1f64 F GLIBC_2.40 logp1f64x F GLIBC_2.40 logp1l F +GLIBC_2.41 acosf F GLIBC_2.41 acospi F GLIBC_2.41 acospif F GLIBC_2.41 acospif128 F diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libm.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libm.abilist index 721baa844c..ea13cdb1a2 100644 --- a/sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libm.abilist +++ b/sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libm.abilist @@ -1025,6 +1025,7 @@ GLIBC_2.40 logp1f32 F GLIBC_2.40 logp1f32x F GLIBC_2.40 logp1f64 F GLIBC_2.40 logp1l F +GLIBC_2.41 acosf F GLIBC_2.41 acospi F GLIBC_2.41 acospif F GLIBC_2.41 acospif32 F diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libm.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libm.abilist index 84b817ead4..6148bc0bfb 100644 --- a/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libm.abilist +++ b/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libm.abilist @@ -1024,6 +1024,7 @@ GLIBC_2.40 logp1f32 F GLIBC_2.40 logp1f32x F GLIBC_2.40 logp1f64 F GLIBC_2.40 logp1l F +GLIBC_2.41 acosf F GLIBC_2.41 acospi F GLIBC_2.41 acospif F GLIBC_2.41 acospif32 F diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libm.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libm.abilist index 16ad95f05c..d7d5c59d9e 100644 --- a/sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libm.abilist +++ b/sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libm.abilist @@ -1018,6 +1018,7 @@ GLIBC_2.40 logp1f32 F GLIBC_2.40 logp1f32x F GLIBC_2.40 logp1f64 F GLIBC_2.40 logp1l F +GLIBC_2.41 acosf F GLIBC_2.41 acospi F GLIBC_2.41 acospif F GLIBC_2.41 acospif32 F diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libm.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libm.abilist index 051e2bb763..72abf2ee3e 100644 --- a/sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libm.abilist +++ b/sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libm.abilist @@ -1373,6 +1373,7 @@ GLIBC_2.41 __atanpiieee128 F GLIBC_2.41 __cospiieee128 F GLIBC_2.41 __sinpiieee128 F GLIBC_2.41 __tanpiieee128 F +GLIBC_2.41 acosf F GLIBC_2.41 acospi F GLIBC_2.41 acospif F GLIBC_2.41 acospif128 F diff --git a/sysdeps/unix/sysv/linux/s390/s390-32/libm.abilist b/sysdeps/unix/sysv/linux/s390/s390-32/libm.abilist index b460e7c560..d95426d3e9 100644 --- a/sysdeps/unix/sysv/linux/s390/s390-32/libm.abilist +++ b/sysdeps/unix/sysv/linux/s390/s390-32/libm.abilist @@ -1292,6 +1292,7 @@ GLIBC_2.40 logp1f32x F GLIBC_2.40 logp1f64 F GLIBC_2.40 logp1f64x F GLIBC_2.40 logp1l F +GLIBC_2.41 acosf F GLIBC_2.41 acospi F GLIBC_2.41 acospif F GLIBC_2.41 acospif128 F diff --git a/sysdeps/unix/sysv/linux/s390/s390-64/libm.abilist b/sysdeps/unix/sysv/linux/s390/s390-64/libm.abilist index 0f44c65cfa..0f66ff47a2 100644 --- a/sysdeps/unix/sysv/linux/s390/s390-64/libm.abilist +++ b/sysdeps/unix/sysv/linux/s390/s390-64/libm.abilist @@ -1292,6 +1292,7 @@ GLIBC_2.40 logp1f32x F GLIBC_2.40 logp1f64 F GLIBC_2.40 logp1f64x F GLIBC_2.40 logp1l F +GLIBC_2.41 acosf F GLIBC_2.41 acospi F GLIBC_2.41 acospif F GLIBC_2.41 acospif128 F diff --git a/sysdeps/unix/sysv/linux/sh/be/libm.abilist b/sysdeps/unix/sysv/linux/sh/be/libm.abilist index 450af3bfa0..9af3cd6248 100644 --- a/sysdeps/unix/sysv/linux/sh/be/libm.abilist +++ b/sysdeps/unix/sysv/linux/sh/be/libm.abilist @@ -878,6 +878,7 @@ GLIBC_2.40 logp1f32 F GLIBC_2.40 logp1f32x F GLIBC_2.40 logp1f64 F GLIBC_2.40 logp1l F +GLIBC_2.41 acosf F GLIBC_2.41 acospi F GLIBC_2.41 acospif F GLIBC_2.41 acospif32 F diff --git a/sysdeps/unix/sysv/linux/sh/le/libm.abilist b/sysdeps/unix/sysv/linux/sh/le/libm.abilist index 450af3bfa0..9af3cd6248 100644 --- a/sysdeps/unix/sysv/linux/sh/le/libm.abilist +++ b/sysdeps/unix/sysv/linux/sh/le/libm.abilist @@ -878,6 +878,7 @@ GLIBC_2.40 logp1f32 F GLIBC_2.40 logp1f32x F GLIBC_2.40 logp1f64 F GLIBC_2.40 logp1l F +GLIBC_2.41 acosf F GLIBC_2.41 acospi F GLIBC_2.41 acospif F GLIBC_2.41 acospif32 F diff --git a/sysdeps/unix/sysv/linux/sparc/sparc32/libm.abilist b/sysdeps/unix/sysv/linux/sparc/sparc32/libm.abilist index bd0d980112..698e44db29 100644 --- a/sysdeps/unix/sysv/linux/sparc/sparc32/libm.abilist +++ b/sysdeps/unix/sysv/linux/sparc/sparc32/libm.abilist @@ -1299,6 +1299,7 @@ GLIBC_2.40 logp1f32x F GLIBC_2.40 logp1f64 F GLIBC_2.40 logp1f64x F GLIBC_2.40 logp1l F +GLIBC_2.41 acosf F GLIBC_2.41 acospi F GLIBC_2.41 acospif F GLIBC_2.41 acospif128 F diff --git a/sysdeps/unix/sysv/linux/sparc/sparc64/libm.abilist b/sysdeps/unix/sysv/linux/sparc/sparc64/libm.abilist index a1847fe909..4f9398182b 100644 --- a/sysdeps/unix/sysv/linux/sparc/sparc64/libm.abilist +++ b/sysdeps/unix/sysv/linux/sparc/sparc64/libm.abilist @@ -1189,6 +1189,7 @@ GLIBC_2.40 logp1f32x F GLIBC_2.40 logp1f64 F GLIBC_2.40 logp1f64x F GLIBC_2.40 logp1l F +GLIBC_2.41 acosf F GLIBC_2.41 acospi F GLIBC_2.41 acospif F GLIBC_2.41 acospif128 F diff --git a/sysdeps/unix/sysv/linux/x86_64/64/libm.abilist b/sysdeps/unix/sysv/linux/x86_64/64/libm.abilist index 22b87c7374..8316532d1b 100644 --- a/sysdeps/unix/sysv/linux/x86_64/64/libm.abilist +++ b/sysdeps/unix/sysv/linux/x86_64/64/libm.abilist @@ -1222,6 +1222,7 @@ GLIBC_2.40 logp1f32x F GLIBC_2.40 logp1f64 F GLIBC_2.40 logp1f64x F GLIBC_2.40 logp1l F +GLIBC_2.41 acosf F GLIBC_2.41 acospi F GLIBC_2.41 acospif F GLIBC_2.41 acospif128 F diff --git a/sysdeps/unix/sysv/linux/x86_64/x32/libm.abilist b/sysdeps/unix/sysv/linux/x86_64/x32/libm.abilist index 79194159c3..59d429f5be 100644 --- a/sysdeps/unix/sysv/linux/x86_64/x32/libm.abilist +++ b/sysdeps/unix/sysv/linux/x86_64/x32/libm.abilist @@ -1222,6 +1222,7 @@ GLIBC_2.40 logp1f32x F GLIBC_2.40 logp1f64 F GLIBC_2.40 logp1f64x F GLIBC_2.40 logp1l F +GLIBC_2.41 acosf F GLIBC_2.41 acospi F GLIBC_2.41 acospif F GLIBC_2.41 acospif128 F From patchwork Thu Dec 19 20:13:09 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Adhemerval Zanella X-Patchwork-Id: 852053 Delivered-To: patch@linaro.org Received: by 2002:a5d:4888:0:b0:385:e875:8a9e with SMTP id g8csp1697038wrq; Thu, 19 Dec 2024 12:22:07 -0800 (PST) X-Forwarded-Encrypted: i=3; AJvYcCXoHWBuaLb4McRGTHtme/SW4fTw/W7PR/pfSuBxa3NDbBOjrQ0C8Zp3aavonOHvpT8K/FuVuA==@linaro.org X-Google-Smtp-Source: AGHT+IG0Lbh8Z94zuBpkZSsNPAxYddVGFjcWTel8a2qD0ZDKkABw+5+GsYyFdkF+bd6vCvVzUvAT X-Received: by 2002:a05:620a:28c4:b0:7b6:5dbe:1b52 with SMTP id af79cd13be357-7b9ba7aa6ccmr30231385a.33.1734639726828; Thu, 19 Dec 2024 12:22:06 -0800 (PST) ARC-Seal: i=2; a=rsa-sha256; t=1734639726; cv=pass; d=google.com; s=arc-20240605; b=GDt8dmMj7oIJBtgvEq3M/jY+EDStyo8VlhJmQwQfUiIO/Ss+JSIuokVbGl0Se8B47A YH9kEcDGA3ivikau6xqU9SRduQ9x3PkL/3Mf72QV9IDKhM6JCS2Ez+hvufQ9LGntyHXn c/Rx8V4n+cEnN5MjzqKr5QZq8RP98MiAGu8uLazjh+oTKUZibe5cVNm73u+Xe//5XUnF DsFEFjdRlBDNs5XmZ/DR7UOb8kP/fPe2nQa4gHBRR6oANpwmmIxntU0vGV4twuSdJwM6 87Zty2NGOrIAk5uyERHx6ceIrjYKFLPwiUbmCHig8ZK+wIZmqXp1g3qnTfw79ZaMBu2U ambQ== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20240605; h=errors-to:list-subscribe:list-help:list-post:list-archive :list-unsubscribe:list-id:precedence:content-transfer-encoding :mime-version:references:in-reply-to:message-id:date:subject:cc:to :from:dkim-signature:arc-filter:dmarc-filter:delivered-to :dkim-filter; bh=uKlQn87XEcpsZ1u7aAqtkwuqHZr1E/p6dsJHo/89seg=; fh=c0s3Uezv7Rag51rMi6q2BcriyJCPC/LMNTAVHmiKG0w=; b=gTGrIQYXpMSNXCjqFhxQZKYctsd1W4Qgpgb0i0eFFxGJDPi0roiAkBNkgqUUNwtXKX e45ObpygZ/AY0KsvgLDlMk05Dw4sNKS1EMAHpgHugSxQ4YrV+lEwaUMQYdwDdkHFRTuc LqjN66FLW/P/vbU4S/hK4dkWT2zu3oBoa7SB0MGat06v11LHOaQZCzaaYpeCQugpUlZM HtRZt7mTyOEk4NFlcYk0JiojSHMgBfYI3kANaR+xxHHMbOZ7G31w73aZmtnlSCXaQU/2 2d8dFHPKcq2X9P1FZo8q49/JPiZHCOF/xe09Ids70tDX3I9Xl+WBSCiEvVjEyMD0ltJ2 27WQ==; dara=google.com ARC-Authentication-Results: i=2; mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=sBdWcphq; arc=pass (i=1); spf=pass (google.com: domain of libc-alpha-bounces~patch=linaro.org@sourceware.org designates 8.43.85.97 as permitted sender) smtp.mailfrom="libc-alpha-bounces~patch=linaro.org@sourceware.org"; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org Return-Path: Received: from server2.sourceware.org (server2.sourceware.org. [8.43.85.97]) by mx.google.com with ESMTPS id d75a77b69052e-46a3ebbdcd8si23800721cf.392.2024.12.19.12.22.06 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 19 Dec 2024 12:22:06 -0800 (PST) Received-SPF: pass (google.com: domain of libc-alpha-bounces~patch=linaro.org@sourceware.org designates 8.43.85.97 as permitted sender) client-ip=8.43.85.97; Authentication-Results: mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=sBdWcphq; arc=pass (i=1); spf=pass (google.com: domain of libc-alpha-bounces~patch=linaro.org@sourceware.org designates 8.43.85.97 as permitted sender) smtp.mailfrom="libc-alpha-bounces~patch=linaro.org@sourceware.org"; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: from server2.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id 349B83858D26 for ; Thu, 19 Dec 2024 20:22:06 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 349B83858D26 Authentication-Results: sourceware.org; dkim=pass (2048-bit key, unprotected) header.d=linaro.org header.i=@linaro.org header.a=rsa-sha256 header.s=google header.b=sBdWcphq X-Original-To: libc-alpha@sourceware.org Delivered-To: libc-alpha@sourceware.org Received: from mail-pl1-x633.google.com (mail-pl1-x633.google.com [IPv6:2607:f8b0:4864:20::633]) by sourceware.org (Postfix) with ESMTPS id 905893858D33 for ; Thu, 19 Dec 2024 20:20:20 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 905893858D33 Authentication-Results: sourceware.org; dmarc=pass (p=none dis=none) header.from=linaro.org Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=linaro.org ARC-Filter: OpenARC Filter v1.0.0 sourceware.org 905893858D33 Authentication-Results: server2.sourceware.org; arc=none smtp.remote-ip=2607:f8b0:4864:20::633 ARC-Seal: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1734639620; cv=none; b=pMxDrWqSK6C9bFUzNTEK43N1WTMuP6ObFtW++KHc0M8Y38ADPu6VQj8Cm8N9C7qxdOvu2KsPVUGmM1eTAoLLgCfCBOYCT5p7F3N5gEWf72+nfeDTysKVil88SsA/13yxCeVMefMGzGtTMWTIFxYNC88DGY44wxDJL2DLRyVOgD0= ARC-Message-Signature: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1734639620; c=relaxed/simple; bh=bk/hILSJuyPzuyD0Q1LwNz51HGAi+D+u5V1JBGTsUTU=; h=DKIM-Signature:From:To:Subject:Date:Message-ID:MIME-Version; b=kvgTiAj8no7VN4mn1pGMsGPI+gFC9BOIXvwgc3huvxGkqmq4GGWAQHxjSHVk/3wOgrZ2pSHkSuEEqiv6lTfwJ2CuSpBbqmIQSleHZTqBRFfVugqBUo9lvq+Y2wh0iuFGzgLPbpaFuvvdtg7Bc7IzbYH/I/ugGLxjHpGfnXSuaCg= ARC-Authentication-Results: i=1; server2.sourceware.org Received: by mail-pl1-x633.google.com with SMTP id d9443c01a7336-21649a7bcdcso10525575ad.1 for ; Thu, 19 Dec 2024 12:20:20 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1734639617; x=1735244417; darn=sourceware.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=uKlQn87XEcpsZ1u7aAqtkwuqHZr1E/p6dsJHo/89seg=; b=sBdWcphq0fDv//UAdN26DgJl3wZddXtNOiMoMxzzV4Jre+0uXC60TxsSAft+7DhyX6 PcQ+pC+uG+YXZ5Q7xLdMcKNuQyvZKfbwmIitQ3SMlCWkbbJ9nw1L7OOFAtlDcnGRkXCj Gb2cw8lE6MM7TWVE1Vb4o8Bl64NUr9HLYv9mW1efImtUAfZr8/wauOzWksV85/gJYOhT ijtiXsS3IltnODV499mTL0RsCGoV49lgPWgmzTKiXEVT3xNzbwWBpm62m5A744+Qwpf1 XU+nEnkDwNa6iWVGswF0s92glKE7YwUObpE7t7O8aPqIjNRfTZLrxIZnxq2+SLZ0yaSc tzQQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1734639617; x=1735244417; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=uKlQn87XEcpsZ1u7aAqtkwuqHZr1E/p6dsJHo/89seg=; b=iMYNsPkpJ+tYe/EWzL6iKshVC9tFxfNMXi2lAQYe1qVEMpefdAyBDYWsP9rHB3jhcC WiwRYXTD/vhmTAG7MOo9Kw+iCdoprhlCqSAFuUj5tt13GVVk5c8J/6s9p2DgBFaGq/Et S6BqfQaDWk06B0YWPW1Yj9+QOGrvwlb7D5+E3Bm2E60POy46KyglT5JTB0anAyuP2NOD /a4ffIltXjtnKYsitOIiPDXJBn7Rs45mwiN0Keqf1/UwMKT48K1yPgt85AnxScb+S7om SxSXokmFmXC+Zs/1AU7qn8/htcULopkw3z3wkjP6Que9jF00gSvKZv6Y1RlFlbUkc2sO nllA== X-Gm-Message-State: AOJu0YzLP0IZ066fxNpXuR+5H2HkIYOvMj48v8aNP4Wm6mdvRwAL2CL8 0cDxSQASjHTa6OgTCtYIxjCwKTpxAznwsJe+h3Zr8fxt8xd3HwEor0FRD+WK2ltgMW3LxUIRHW3 w X-Gm-Gg: ASbGncu8UbAJxMLmYPQYUHwDjfYSFvIWkhoLV5o2nwGkA/XTQ26Bx58CmyoPRYa+5YO Phf4yBbiAUCierS13M2DM3r7b6TvL9znYxTg3Z+yL0huOKYeF7zUZ49sakxPOQNfUJvphakoV6o z+4un5tvsRwcU+EyV29KezJiot7gk8xGKfeZcXBGQgQLwQK7HteU7GNJHQpQVvJRx8x4EM5+04M 8u4H7B4C7qI+UWu/2iLZyjI394oiIuaUv8xDPv2PQkc7bifJ7hXds6cNMY6ybly/oAEjg== X-Received: by 2002:a17:903:244f:b0:215:bc30:c952 with SMTP id d9443c01a7336-219e6e89564mr1276695ad.6.1734639617196; Thu, 19 Dec 2024 12:20:17 -0800 (PST) Received: from mandiga.. ([2804:1b3:a7c3:2d5b:c4ce:4df0:8543:f129]) by smtp.gmail.com with ESMTPSA id d9443c01a7336-219dca02589sm16360645ad.257.2024.12.19.12.20.15 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 19 Dec 2024 12:20:16 -0800 (PST) From: Adhemerval Zanella To: libc-alpha@sourceware.org Cc: DJ Delorie , Joseph Myers , Paul Zimmermann Subject: [PATCH 05/10] math: Remove the error handling wrapper from asinf Date: Thu, 19 Dec 2024 17:13:09 -0300 Message-ID: <20241219202003.2651277-6-adhemerval.zanella@linaro.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20241219202003.2651277-1-adhemerval.zanella@linaro.org> References: <20241219202003.2651277-1-adhemerval.zanella@linaro.org> MIME-Version: 1.0 X-BeenThere: libc-alpha@sourceware.org X-Mailman-Version: 2.1.30 Precedence: list List-Id: Libc-alpha mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: libc-alpha-bounces~patch=linaro.org@sourceware.org It improves latency for about 2% and throughput for about 5%. --- math/Versions | 1 + math/w_asinf.c | 8 ++++++++ math/w_asinf_compat.c | 10 +++++++--- sysdeps/ieee754/flt-32/e_asinf.c | 11 ++++++++++- sysdeps/ieee754/flt-32/w_asinf.c | 1 + sysdeps/m68k/m680x0/fpu/w_asinf_compat.c | 8 ++++++++ sysdeps/mach/hurd/i386/libm.abilist | 1 + sysdeps/unix/sysv/linux/aarch64/libm.abilist | 1 + sysdeps/unix/sysv/linux/alpha/libm.abilist | 1 + sysdeps/unix/sysv/linux/arm/be/libm.abilist | 1 + sysdeps/unix/sysv/linux/arm/le/libm.abilist | 1 + sysdeps/unix/sysv/linux/hppa/libm.abilist | 1 + sysdeps/unix/sysv/linux/i386/libm.abilist | 1 + sysdeps/unix/sysv/linux/m68k/coldfire/libm.abilist | 1 + sysdeps/unix/sysv/linux/microblaze/be/libm.abilist | 1 + sysdeps/unix/sysv/linux/microblaze/le/libm.abilist | 1 + sysdeps/unix/sysv/linux/mips/mips32/libm.abilist | 1 + sysdeps/unix/sysv/linux/mips/mips64/libm.abilist | 1 + .../sysv/linux/powerpc/powerpc32/fpu/libm.abilist | 1 + .../sysv/linux/powerpc/powerpc32/nofpu/libm.abilist | 1 + .../unix/sysv/linux/powerpc/powerpc64/be/libm.abilist | 1 + .../unix/sysv/linux/powerpc/powerpc64/le/libm.abilist | 1 + sysdeps/unix/sysv/linux/s390/s390-32/libm.abilist | 1 + sysdeps/unix/sysv/linux/s390/s390-64/libm.abilist | 1 + sysdeps/unix/sysv/linux/sh/be/libm.abilist | 1 + sysdeps/unix/sysv/linux/sh/le/libm.abilist | 1 + sysdeps/unix/sysv/linux/sparc/sparc32/libm.abilist | 1 + sysdeps/unix/sysv/linux/sparc/sparc64/libm.abilist | 1 + sysdeps/unix/sysv/linux/x86_64/64/libm.abilist | 1 + sysdeps/unix/sysv/linux/x86_64/x32/libm.abilist | 1 + 30 files changed, 59 insertions(+), 4 deletions(-) create mode 100644 math/w_asinf.c create mode 100644 sysdeps/ieee754/flt-32/w_asinf.c create mode 100644 sysdeps/m68k/m680x0/fpu/w_asinf_compat.c diff --git a/math/Versions b/math/Versions index f6c7bd8d61..ece5ad7fd1 100644 --- a/math/Versions +++ b/math/Versions @@ -674,5 +674,6 @@ libm { log10f; lgammaf; lgammaf_r; acosf; + asinf; } } diff --git a/math/w_asinf.c b/math/w_asinf.c new file mode 100644 index 0000000000..947cdde561 --- /dev/null +++ b/math/w_asinf.c @@ -0,0 +1,8 @@ +#include +#undef __USE_WRAPPER_TEMPLATE +#define __USE_WRAPPER_TEMPLATE 1 +#undef declare_mgen_alias +#define declare_mgen_alias(a, b) +#include +versioned_symbol (libm, __asinf, asinf, GLIBC_2_41); +libm_alias_float_other (__asinf, asinf) diff --git a/math/w_asinf_compat.c b/math/w_asinf_compat.c index bdace40b95..84df62a385 100644 --- a/math/w_asinf_compat.c +++ b/math/w_asinf_compat.c @@ -22,10 +22,10 @@ #include -#if LIBM_SVID_COMPAT +#if LIBM_SVID_COMPAT && SHLIB_COMPAT (libm, GLIBC_2_0, GLIBC_2_41) /* wrapper asinf */ float -__asinf (float x) +__asin_compatf (float x) { if (__builtin_expect (isgreater (fabsf (x), 1.0f), 0) && _LIB_VERSION != _IEEE_) @@ -37,5 +37,9 @@ __asinf (float x) return __ieee754_asinf (x); } -libm_alias_float (__asin, asin) +# ifdef NO_COMPAT_NEEDED +libm_alias_float (__asin_compat, asin) +# else +compat_symbol (libm, __asin_compatf, asinf, GLIBC_2_0); +# endif #endif diff --git a/sysdeps/ieee754/flt-32/e_asinf.c b/sysdeps/ieee754/flt-32/e_asinf.c index 944bf6f5ce..4b5288e86a 100644 --- a/sysdeps/ieee754/flt-32/e_asinf.c +++ b/sysdeps/ieee754/flt-32/e_asinf.c @@ -27,6 +27,8 @@ SOFTWARE. #include #include #include +#include +#include #include "math_config.h" static __attribute__ ((noinline)) float @@ -57,7 +59,7 @@ poly12 (double z, const double *c) } float -__ieee754_asinf (float x) +__asinf (float x) { const double pi2 = 0x1.921fb54442d18p+0; double xs = x; @@ -128,4 +130,11 @@ __ieee754_asinf (float x) } return r; } +strong_alias (__asinf, __ieee754_asinf) +#if LIBM_SVID_COMPAT +versioned_symbol (libm, __asinf, asinf, GLIBC_2_41); +libm_alias_float_other (__asin, asin) +#else +libm_alias_float (__asin, asin) +#endif libm_alias_finite (__ieee754_asinf, __asinf) diff --git a/sysdeps/ieee754/flt-32/w_asinf.c b/sysdeps/ieee754/flt-32/w_asinf.c new file mode 100644 index 0000000000..1cc8931700 --- /dev/null +++ b/sysdeps/ieee754/flt-32/w_asinf.c @@ -0,0 +1 @@ +/* Not needed. */ diff --git a/sysdeps/m68k/m680x0/fpu/w_asinf_compat.c b/sysdeps/m68k/m680x0/fpu/w_asinf_compat.c new file mode 100644 index 0000000000..d419736eb3 --- /dev/null +++ b/sysdeps/m68k/m680x0/fpu/w_asinf_compat.c @@ -0,0 +1,8 @@ +/* m68k provides an optimized __ieee754_asinf. */ +#ifdef SHARED +# define NO_COMPAT_NEEDED 1 +# include +#else +# include +# include +#endif diff --git a/sysdeps/mach/hurd/i386/libm.abilist b/sysdeps/mach/hurd/i386/libm.abilist index a2ef2276c4..7bf32cec28 100644 --- a/sysdeps/mach/hurd/i386/libm.abilist +++ b/sysdeps/mach/hurd/i386/libm.abilist @@ -1230,6 +1230,7 @@ GLIBC_2.41 acospif32x F GLIBC_2.41 acospif64 F GLIBC_2.41 acospif64x F GLIBC_2.41 acospil F +GLIBC_2.41 asinf F GLIBC_2.41 asinpi F GLIBC_2.41 asinpif F GLIBC_2.41 asinpif128 F diff --git a/sysdeps/unix/sysv/linux/aarch64/libm.abilist b/sysdeps/unix/sysv/linux/aarch64/libm.abilist index 9beef4a25d..7ce045c75b 100644 --- a/sysdeps/unix/sysv/linux/aarch64/libm.abilist +++ b/sysdeps/unix/sysv/linux/aarch64/libm.abilist @@ -1198,6 +1198,7 @@ GLIBC_2.41 acospif32x F GLIBC_2.41 acospif64 F GLIBC_2.41 acospif64x F GLIBC_2.41 acospil F +GLIBC_2.41 asinf F GLIBC_2.41 asinpi F GLIBC_2.41 asinpif F GLIBC_2.41 asinpif128 F diff --git a/sysdeps/unix/sysv/linux/alpha/libm.abilist b/sysdeps/unix/sysv/linux/alpha/libm.abilist index 17e08a05b1..e76aebf1b2 100644 --- a/sysdeps/unix/sysv/linux/alpha/libm.abilist +++ b/sysdeps/unix/sysv/linux/alpha/libm.abilist @@ -1357,6 +1357,7 @@ GLIBC_2.41 acospif32x F GLIBC_2.41 acospif64 F GLIBC_2.41 acospif64x F GLIBC_2.41 acospil F +GLIBC_2.41 asinf F GLIBC_2.41 asinpi F GLIBC_2.41 asinpif F GLIBC_2.41 asinpif128 F diff --git a/sysdeps/unix/sysv/linux/arm/be/libm.abilist b/sysdeps/unix/sysv/linux/arm/be/libm.abilist index f624edcbb7..9de26ad003 100644 --- a/sysdeps/unix/sysv/linux/arm/be/libm.abilist +++ b/sysdeps/unix/sysv/linux/arm/be/libm.abilist @@ -885,6 +885,7 @@ GLIBC_2.41 acospif32 F GLIBC_2.41 acospif32x F GLIBC_2.41 acospif64 F GLIBC_2.41 acospil F +GLIBC_2.41 asinf F GLIBC_2.41 asinpi F GLIBC_2.41 asinpif F GLIBC_2.41 asinpif32 F diff --git a/sysdeps/unix/sysv/linux/arm/le/libm.abilist b/sysdeps/unix/sysv/linux/arm/le/libm.abilist index f624edcbb7..9de26ad003 100644 --- a/sysdeps/unix/sysv/linux/arm/le/libm.abilist +++ b/sysdeps/unix/sysv/linux/arm/le/libm.abilist @@ -885,6 +885,7 @@ GLIBC_2.41 acospif32 F GLIBC_2.41 acospif32x F GLIBC_2.41 acospif64 F GLIBC_2.41 acospil F +GLIBC_2.41 asinf F GLIBC_2.41 asinpi F GLIBC_2.41 asinpif F GLIBC_2.41 asinpif32 F diff --git a/sysdeps/unix/sysv/linux/hppa/libm.abilist b/sysdeps/unix/sysv/linux/hppa/libm.abilist index eecea6c987..d9bb2554cb 100644 --- a/sysdeps/unix/sysv/linux/hppa/libm.abilist +++ b/sysdeps/unix/sysv/linux/hppa/libm.abilist @@ -885,6 +885,7 @@ GLIBC_2.41 acospif32 F GLIBC_2.41 acospif32x F GLIBC_2.41 acospif64 F GLIBC_2.41 acospil F +GLIBC_2.41 asinf F GLIBC_2.41 asinpi F GLIBC_2.41 asinpif F GLIBC_2.41 asinpif32 F diff --git a/sysdeps/unix/sysv/linux/i386/libm.abilist b/sysdeps/unix/sysv/linux/i386/libm.abilist index 6b7f949e39..ce9f671f15 100644 --- a/sysdeps/unix/sysv/linux/i386/libm.abilist +++ b/sysdeps/unix/sysv/linux/i386/libm.abilist @@ -1237,6 +1237,7 @@ GLIBC_2.41 acospif32x F GLIBC_2.41 acospif64 F GLIBC_2.41 acospif64x F GLIBC_2.41 acospil F +GLIBC_2.41 asinf F GLIBC_2.41 asinpi F GLIBC_2.41 asinpif F GLIBC_2.41 asinpif128 F diff --git a/sysdeps/unix/sysv/linux/m68k/coldfire/libm.abilist b/sysdeps/unix/sysv/linux/m68k/coldfire/libm.abilist index f624edcbb7..9de26ad003 100644 --- a/sysdeps/unix/sysv/linux/m68k/coldfire/libm.abilist +++ b/sysdeps/unix/sysv/linux/m68k/coldfire/libm.abilist @@ -885,6 +885,7 @@ GLIBC_2.41 acospif32 F GLIBC_2.41 acospif32x F GLIBC_2.41 acospif64 F GLIBC_2.41 acospil F +GLIBC_2.41 asinf F GLIBC_2.41 asinpi F GLIBC_2.41 asinpif F GLIBC_2.41 asinpif32 F diff --git a/sysdeps/unix/sysv/linux/microblaze/be/libm.abilist b/sysdeps/unix/sysv/linux/microblaze/be/libm.abilist index 3ff01e0719..f0d451d7d1 100644 --- a/sysdeps/unix/sysv/linux/microblaze/be/libm.abilist +++ b/sysdeps/unix/sysv/linux/microblaze/be/libm.abilist @@ -885,6 +885,7 @@ GLIBC_2.41 acospif32 F GLIBC_2.41 acospif32x F GLIBC_2.41 acospif64 F GLIBC_2.41 acospil F +GLIBC_2.41 asinf F GLIBC_2.41 asinpi F GLIBC_2.41 asinpif F GLIBC_2.41 asinpif32 F diff --git a/sysdeps/unix/sysv/linux/microblaze/le/libm.abilist b/sysdeps/unix/sysv/linux/microblaze/le/libm.abilist index 3ff01e0719..f0d451d7d1 100644 --- a/sysdeps/unix/sysv/linux/microblaze/le/libm.abilist +++ b/sysdeps/unix/sysv/linux/microblaze/le/libm.abilist @@ -885,6 +885,7 @@ GLIBC_2.41 acospif32 F GLIBC_2.41 acospif32x F GLIBC_2.41 acospif64 F GLIBC_2.41 acospil F +GLIBC_2.41 asinf F GLIBC_2.41 asinpi F GLIBC_2.41 asinpif F GLIBC_2.41 asinpif32 F diff --git a/sysdeps/unix/sysv/linux/mips/mips32/libm.abilist b/sysdeps/unix/sysv/linux/mips/mips32/libm.abilist index fbf247121d..bec657f782 100644 --- a/sysdeps/unix/sysv/linux/mips/mips32/libm.abilist +++ b/sysdeps/unix/sysv/linux/mips/mips32/libm.abilist @@ -885,6 +885,7 @@ GLIBC_2.41 acospif32 F GLIBC_2.41 acospif32x F GLIBC_2.41 acospif64 F GLIBC_2.41 acospil F +GLIBC_2.41 asinf F GLIBC_2.41 asinpi F GLIBC_2.41 asinpif F GLIBC_2.41 asinpif32 F diff --git a/sysdeps/unix/sysv/linux/mips/mips64/libm.abilist b/sysdeps/unix/sysv/linux/mips/mips64/libm.abilist index e2311fb6db..1b799c06c7 100644 --- a/sysdeps/unix/sysv/linux/mips/mips64/libm.abilist +++ b/sysdeps/unix/sysv/linux/mips/mips64/libm.abilist @@ -1198,6 +1198,7 @@ GLIBC_2.41 acospif32x F GLIBC_2.41 acospif64 F GLIBC_2.41 acospif64x F GLIBC_2.41 acospil F +GLIBC_2.41 asinf F GLIBC_2.41 asinpi F GLIBC_2.41 asinpif F GLIBC_2.41 asinpif128 F diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libm.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libm.abilist index ea13cdb1a2..89d3d18948 100644 --- a/sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libm.abilist +++ b/sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libm.abilist @@ -1032,6 +1032,7 @@ GLIBC_2.41 acospif32 F GLIBC_2.41 acospif32x F GLIBC_2.41 acospif64 F GLIBC_2.41 acospil F +GLIBC_2.41 asinf F GLIBC_2.41 asinpi F GLIBC_2.41 asinpif F GLIBC_2.41 asinpif32 F diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libm.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libm.abilist index 6148bc0bfb..2b544a2df9 100644 --- a/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libm.abilist +++ b/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libm.abilist @@ -1031,6 +1031,7 @@ GLIBC_2.41 acospif32 F GLIBC_2.41 acospif32x F GLIBC_2.41 acospif64 F GLIBC_2.41 acospil F +GLIBC_2.41 asinf F GLIBC_2.41 asinpi F GLIBC_2.41 asinpif F GLIBC_2.41 asinpif32 F diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libm.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libm.abilist index d7d5c59d9e..2749d7fd38 100644 --- a/sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libm.abilist +++ b/sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libm.abilist @@ -1025,6 +1025,7 @@ GLIBC_2.41 acospif32 F GLIBC_2.41 acospif32x F GLIBC_2.41 acospif64 F GLIBC_2.41 acospil F +GLIBC_2.41 asinf F GLIBC_2.41 asinpi F GLIBC_2.41 asinpif F GLIBC_2.41 asinpif32 F diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libm.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libm.abilist index 72abf2ee3e..fd47e9c90c 100644 --- a/sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libm.abilist +++ b/sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libm.abilist @@ -1382,6 +1382,7 @@ GLIBC_2.41 acospif32x F GLIBC_2.41 acospif64 F GLIBC_2.41 acospif64x F GLIBC_2.41 acospil F +GLIBC_2.41 asinf F GLIBC_2.41 asinpi F GLIBC_2.41 asinpif F GLIBC_2.41 asinpif128 F diff --git a/sysdeps/unix/sysv/linux/s390/s390-32/libm.abilist b/sysdeps/unix/sysv/linux/s390/s390-32/libm.abilist index d95426d3e9..c2591d5df6 100644 --- a/sysdeps/unix/sysv/linux/s390/s390-32/libm.abilist +++ b/sysdeps/unix/sysv/linux/s390/s390-32/libm.abilist @@ -1301,6 +1301,7 @@ GLIBC_2.41 acospif32x F GLIBC_2.41 acospif64 F GLIBC_2.41 acospif64x F GLIBC_2.41 acospil F +GLIBC_2.41 asinf F GLIBC_2.41 asinpi F GLIBC_2.41 asinpif F GLIBC_2.41 asinpif128 F diff --git a/sysdeps/unix/sysv/linux/s390/s390-64/libm.abilist b/sysdeps/unix/sysv/linux/s390/s390-64/libm.abilist index 0f66ff47a2..e9a958a3f0 100644 --- a/sysdeps/unix/sysv/linux/s390/s390-64/libm.abilist +++ b/sysdeps/unix/sysv/linux/s390/s390-64/libm.abilist @@ -1301,6 +1301,7 @@ GLIBC_2.41 acospif32x F GLIBC_2.41 acospif64 F GLIBC_2.41 acospif64x F GLIBC_2.41 acospil F +GLIBC_2.41 asinf F GLIBC_2.41 asinpi F GLIBC_2.41 asinpif F GLIBC_2.41 asinpif128 F diff --git a/sysdeps/unix/sysv/linux/sh/be/libm.abilist b/sysdeps/unix/sysv/linux/sh/be/libm.abilist index 9af3cd6248..2bb4cf4710 100644 --- a/sysdeps/unix/sysv/linux/sh/be/libm.abilist +++ b/sysdeps/unix/sysv/linux/sh/be/libm.abilist @@ -885,6 +885,7 @@ GLIBC_2.41 acospif32 F GLIBC_2.41 acospif32x F GLIBC_2.41 acospif64 F GLIBC_2.41 acospil F +GLIBC_2.41 asinf F GLIBC_2.41 asinpi F GLIBC_2.41 asinpif F GLIBC_2.41 asinpif32 F diff --git a/sysdeps/unix/sysv/linux/sh/le/libm.abilist b/sysdeps/unix/sysv/linux/sh/le/libm.abilist index 9af3cd6248..2bb4cf4710 100644 --- a/sysdeps/unix/sysv/linux/sh/le/libm.abilist +++ b/sysdeps/unix/sysv/linux/sh/le/libm.abilist @@ -885,6 +885,7 @@ GLIBC_2.41 acospif32 F GLIBC_2.41 acospif32x F GLIBC_2.41 acospif64 F GLIBC_2.41 acospil F +GLIBC_2.41 asinf F GLIBC_2.41 asinpi F GLIBC_2.41 asinpif F GLIBC_2.41 asinpif32 F diff --git a/sysdeps/unix/sysv/linux/sparc/sparc32/libm.abilist b/sysdeps/unix/sysv/linux/sparc/sparc32/libm.abilist index 698e44db29..bfc00cb587 100644 --- a/sysdeps/unix/sysv/linux/sparc/sparc32/libm.abilist +++ b/sysdeps/unix/sysv/linux/sparc/sparc32/libm.abilist @@ -1308,6 +1308,7 @@ GLIBC_2.41 acospif32x F GLIBC_2.41 acospif64 F GLIBC_2.41 acospif64x F GLIBC_2.41 acospil F +GLIBC_2.41 asinf F GLIBC_2.41 asinpi F GLIBC_2.41 asinpif F GLIBC_2.41 asinpif128 F diff --git a/sysdeps/unix/sysv/linux/sparc/sparc64/libm.abilist b/sysdeps/unix/sysv/linux/sparc/sparc64/libm.abilist index 4f9398182b..5a0af4b279 100644 --- a/sysdeps/unix/sysv/linux/sparc/sparc64/libm.abilist +++ b/sysdeps/unix/sysv/linux/sparc/sparc64/libm.abilist @@ -1198,6 +1198,7 @@ GLIBC_2.41 acospif32x F GLIBC_2.41 acospif64 F GLIBC_2.41 acospif64x F GLIBC_2.41 acospil F +GLIBC_2.41 asinf F GLIBC_2.41 asinpi F GLIBC_2.41 asinpif F GLIBC_2.41 asinpif128 F diff --git a/sysdeps/unix/sysv/linux/x86_64/64/libm.abilist b/sysdeps/unix/sysv/linux/x86_64/64/libm.abilist index 8316532d1b..fff7ae9c3f 100644 --- a/sysdeps/unix/sysv/linux/x86_64/64/libm.abilist +++ b/sysdeps/unix/sysv/linux/x86_64/64/libm.abilist @@ -1231,6 +1231,7 @@ GLIBC_2.41 acospif32x F GLIBC_2.41 acospif64 F GLIBC_2.41 acospif64x F GLIBC_2.41 acospil F +GLIBC_2.41 asinf F GLIBC_2.41 asinpi F GLIBC_2.41 asinpif F GLIBC_2.41 asinpif128 F diff --git a/sysdeps/unix/sysv/linux/x86_64/x32/libm.abilist b/sysdeps/unix/sysv/linux/x86_64/x32/libm.abilist index 59d429f5be..f7f938d60b 100644 --- a/sysdeps/unix/sysv/linux/x86_64/x32/libm.abilist +++ b/sysdeps/unix/sysv/linux/x86_64/x32/libm.abilist @@ -1231,6 +1231,7 @@ GLIBC_2.41 acospif32x F GLIBC_2.41 acospif64 F GLIBC_2.41 acospif64x F GLIBC_2.41 acospil F +GLIBC_2.41 asinf F GLIBC_2.41 asinpi F GLIBC_2.41 asinpif F GLIBC_2.41 asinpif128 F From patchwork Thu Dec 19 20:13:10 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Adhemerval Zanella X-Patchwork-Id: 852056 Delivered-To: patch@linaro.org Received: by 2002:a5d:4888:0:b0:385:e875:8a9e with SMTP id g8csp1697938wrq; Thu, 19 Dec 2024 12:24:52 -0800 (PST) X-Forwarded-Encrypted: i=3; AJvYcCX31yo6RefZPtupIXsq3xV981qQ+Y4eAd1cZ8cwKC4oa51pQB1jGkAwMBY6Pk6Kv3ia9smN1Q==@linaro.org X-Google-Smtp-Source: AGHT+IEYsz/zJDZfdghERl/xm+suEmZZcpy8Oz6w43zeKxFitR2W2eo1Utm7Bwcp0Vo25oktUKjM X-Received: by 2002:a05:620a:2449:b0:7b7:1118:907e with SMTP id af79cd13be357-7b9ba80ee4dmr37025785a.52.1734639892722; Thu, 19 Dec 2024 12:24:52 -0800 (PST) ARC-Seal: i=2; a=rsa-sha256; t=1734639892; cv=pass; d=google.com; s=arc-20240605; b=J97XiIYhwpUrVTJ/09cI3CYdo/SJc+aYGx/CzMVPJzo3EzGombEh3rCRh9dRazubVC rsSDpLDf3LLvvzT2BgQA/okjgsUFjY9xwElajGoy/iFhdoKPG4eHGqxZ4fMku3yKwb+O H2ejJVHrx1eQP6y5u+8WnIlMDhkgqRGn1CFWiKt6mD7hcNqsU1h71wFOfJyD1uRgWSs3 yJ92hL27OdnY33huGAnBlbbdjGOZYZGyjp5l9xHVoqnlj8YgtMdILzbovvw6dSU7z5in EP2mwwekErBrU4rNxfXRLFvRDgaluXfB3g8e9D8VpydkANTlMPMLBhEM8NdFlNbS1R/4 NQvA== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20240605; h=errors-to:list-subscribe:list-help:list-post:list-archive :list-unsubscribe:list-id:precedence:content-transfer-encoding :mime-version:references:in-reply-to:message-id:date:subject:cc:to :from:dkim-signature:dkim-filter:arc-filter:dmarc-filter :delivered-to:dkim-filter; bh=EFHBj06U21i8PyqkhI91rmplm565sp39iL8oB0m8gyQ=; fh=c0s3Uezv7Rag51rMi6q2BcriyJCPC/LMNTAVHmiKG0w=; b=E0SpXnjOIcguhlnMzjNuFnHRxt91zp+nDEK+wpfXWrUS91OX3jjZEEHjxOr+Gugu6j sfK5y/qwSVaYJkrN5yZSX7u4kt5Km1oI9PdZlyvuUaaRNpKMlc7Kri3rHDfYA0sYdcyV gAl8HRbFMEEgfRt8bIIYKMKBTV/NJ6mkYAg4K5aFxdtzHVWQqfGE5d5AZDHYZMAh/u/m 4+/EeOj9lSxg7rNoWXO5yHty+U0Lm9uLxBJCohGAUG40Pdl5arfN2qXEi84zcHHB2AZ4 FKtF77prWdP0UCEeyX7roq6Sl08MiB/49XPL1E2qTytiFQ6M3F2S9GZr5AZY8OuxCzBW +/Ug==; dara=google.com ARC-Authentication-Results: i=2; mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=slCNtGWi; arc=pass (i=1); spf=pass (google.com: domain of libc-alpha-bounces~patch=linaro.org@sourceware.org designates 2620:52:3:1:0:246e:9693:128c as permitted sender) smtp.mailfrom="libc-alpha-bounces~patch=linaro.org@sourceware.org"; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org Return-Path: Received: from server2.sourceware.org (server2.sourceware.org. [2620:52:3:1:0:246e:9693:128c]) by mx.google.com with ESMTPS id af79cd13be357-7b9ac2adbe7si166328985a.25.2024.12.19.12.24.52 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 19 Dec 2024 12:24:52 -0800 (PST) Received-SPF: pass (google.com: domain of libc-alpha-bounces~patch=linaro.org@sourceware.org designates 2620:52:3:1:0:246e:9693:128c as permitted sender) client-ip=2620:52:3:1:0:246e:9693:128c; Authentication-Results: mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=slCNtGWi; arc=pass (i=1); spf=pass (google.com: domain of libc-alpha-bounces~patch=linaro.org@sourceware.org designates 2620:52:3:1:0:246e:9693:128c as permitted sender) smtp.mailfrom="libc-alpha-bounces~patch=linaro.org@sourceware.org"; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: from server2.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id 422AA3858C66 for ; Thu, 19 Dec 2024 20:24:47 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 422AA3858C66 Authentication-Results: sourceware.org; dkim=pass (2048-bit key, unprotected) header.d=linaro.org header.i=@linaro.org header.a=rsa-sha256 header.s=google header.b=slCNtGWi X-Original-To: libc-alpha@sourceware.org Delivered-To: libc-alpha@sourceware.org Received: from mail-pl1-x62d.google.com (mail-pl1-x62d.google.com [IPv6:2607:f8b0:4864:20::62d]) by sourceware.org (Postfix) with ESMTPS id 8D2A13858415 for ; Thu, 19 Dec 2024 20:20:25 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 8D2A13858415 Authentication-Results: sourceware.org; dmarc=pass (p=none dis=none) header.from=linaro.org Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=linaro.org ARC-Filter: OpenARC Filter v1.0.0 sourceware.org 8D2A13858415 Authentication-Results: server2.sourceware.org; arc=none smtp.remote-ip=2607:f8b0:4864:20::62d ARC-Seal: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1734639625; cv=none; b=iBcQXR0xEVJD+I0gMjB7BUSGqvdrAPeU9OqbD5vMNKYybshguY+LlOgBXspKmJ/Cegf7Q6WQXSig1SX1KqnBvtah4+4gG9pWSXtDWrdqcpo+G6pL9nCO1d2Xoy6WdhNXsuev/phdUCxKp81mAWZKi8193NxYDoaz1vdd3BGq6E0= ARC-Message-Signature: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1734639625; c=relaxed/simple; bh=jQCIvqBRDm7bpStdrMIy8spdLoiqCTXRwzUpzuUL0mo=; h=DKIM-Signature:From:To:Subject:Date:Message-ID:MIME-Version; b=LOy0MuapnafOQVZpfWCTjZD7YZCr2TxTUAT8UDMo1Rr4tYAtrT/7FB2yAKpPFmORRnGdPzQPLBuS30bfFJ2saTW8o0ExvXYmbe/ABnvhia08rL1uVaYPv6MS4alXuwnIsiJYnrv8PaJjP5hW/vqZZULyyl3GkBHlwlnbfYTH4MQ= ARC-Authentication-Results: i=1; server2.sourceware.org DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 8D2A13858415 Received: by mail-pl1-x62d.google.com with SMTP id d9443c01a7336-2156e078563so11191675ad.2 for ; Thu, 19 Dec 2024 12:20:25 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1734639619; x=1735244419; darn=sourceware.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=EFHBj06U21i8PyqkhI91rmplm565sp39iL8oB0m8gyQ=; b=slCNtGWidFI0zvUQriECAYjqWVukwpUHLEnlgXkNGMt2IdwX1A3A29KJJdHZmFws/C kqToUNZEYFFPNlBLIrj95CxH+eh2JMmvwbrh6fSo0bBWrFRC59wR1jpn2Orat7uHGHiS QJsEeS/FHRlFbuv+ZIY5bxoedo79XbNzsSD2qvf7LNGtQ68rkeb+r/J4Oz1K+H090tyx Alo8e6z9NUqdC0lLJ0R1xGcaLFchSe/7tDrk0tOLP/1MZYgz9LwTfdYoU8rql7lwbW2c JaGXRJKeO1wR+Kgww5bU7PUeS7oc7vgKvi/Ts4I3GEwK6u+jNWfaT7+bcakUCc5Pl2E7 VBzQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1734639619; x=1735244419; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=EFHBj06U21i8PyqkhI91rmplm565sp39iL8oB0m8gyQ=; b=F0wX4FjsJ9gEeGtO43NQpjKBuPwBjoCmSElKLmQWoipEzW29dVnhebgCzNcvKjnXLr A+XG3CaJe/QjPCySt2nVlJoanwNG2dFuDPI8FV8g3O8v6OVHNWrt9FZ+l5gX2T1CsknC ZCQR9WeRgA0S7KYphxt5OwASA1qbNkzjfyp/VPpeiUnNHTaUR+q3UrGWrz36+VxPMl46 DKk0LXgkrdtaH6F5EtfAQOYj5YM6ygEh6hcDiS2Z6tI/bsqtZmgCmgDBQr6L9OMlHIY/ my2JRSfRCjngQzdkAYLyG7tuVLifkSSK4EM2qCcCOm1gqPPU9O/1QwehFIPB9eMyaCL9 BnUQ== X-Gm-Message-State: AOJu0YwBoczqOvWzGjcrY2x5WTiNV81Q/A7srDTAdkqS+nM82nizC9jQ o3xr6CxpQRA4Z2OvK9A5ok6ueBL9PnpdAcCceElhTY+xxkGwZOtE35BKdVJlECysW/1SccctS2E L X-Gm-Gg: ASbGncuBiTFdLd6DOWv9QauOijCej9oRyDiTU9ZEvHl0M/zmOHNFFh9TrkMGyJuVp8P fTAidsScsOTjRDUQ6i1myfksRcjGOVYuyASgBQLfrHn1G68ZFuOZqqTPUyMfy+R/EyaJ7lZsleY QJtjbZiCwCmuTZmJ6Zx784xUBcEwOuMQg98aNxGX3WD3KkXD0T0PLGXruSXaGgHx9J/DxMms0z7 oxdDF3zaHXPCTL68GX6i9srhuGObUrSL3Mcd3AA1G3RbFetViarSDbFnql6Gpjee1kINQ== X-Received: by 2002:a17:902:d4c6:b0:211:e812:3948 with SMTP id d9443c01a7336-219e6cc87f4mr1546345ad.0.1734639619316; Thu, 19 Dec 2024 12:20:19 -0800 (PST) Received: from mandiga.. ([2804:1b3:a7c3:2d5b:c4ce:4df0:8543:f129]) by smtp.gmail.com with ESMTPSA id d9443c01a7336-219dca02589sm16360645ad.257.2024.12.19.12.20.17 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 19 Dec 2024 12:20:18 -0800 (PST) From: Adhemerval Zanella To: libc-alpha@sourceware.org Cc: DJ Delorie , Joseph Myers , Paul Zimmermann Subject: [PATCH 06/10] math: Remove the error handling wrapper from acoshf Date: Thu, 19 Dec 2024 17:13:10 -0300 Message-ID: <20241219202003.2651277-7-adhemerval.zanella@linaro.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20241219202003.2651277-1-adhemerval.zanella@linaro.org> References: <20241219202003.2651277-1-adhemerval.zanella@linaro.org> MIME-Version: 1.0 X-BeenThere: libc-alpha@sourceware.org X-Mailman-Version: 2.1.30 Precedence: list List-Id: Libc-alpha mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: libc-alpha-bounces~patch=linaro.org@sourceware.org It improves latency for about 3-7% and throughput for about 5-10%. --- math/Versions | 1 + math/w_acoshf.c | 8 ++++++++ math/w_acoshf_compat.c | 6 +++--- sysdeps/ieee754/flt-32/e_acoshf.c | 11 ++++++++++- sysdeps/ieee754/flt-32/w_acoshf.c | 1 + sysdeps/mach/hurd/i386/libm.abilist | 1 + sysdeps/unix/sysv/linux/aarch64/libm.abilist | 1 + sysdeps/unix/sysv/linux/alpha/libm.abilist | 1 + sysdeps/unix/sysv/linux/arm/be/libm.abilist | 1 + sysdeps/unix/sysv/linux/arm/le/libm.abilist | 1 + sysdeps/unix/sysv/linux/hppa/libm.abilist | 1 + sysdeps/unix/sysv/linux/i386/libm.abilist | 1 + sysdeps/unix/sysv/linux/m68k/coldfire/libm.abilist | 1 + sysdeps/unix/sysv/linux/m68k/m680x0/libm.abilist | 1 + sysdeps/unix/sysv/linux/microblaze/be/libm.abilist | 1 + sysdeps/unix/sysv/linux/microblaze/le/libm.abilist | 1 + sysdeps/unix/sysv/linux/mips/mips32/libm.abilist | 1 + sysdeps/unix/sysv/linux/mips/mips64/libm.abilist | 1 + .../sysv/linux/powerpc/powerpc32/fpu/libm.abilist | 1 + .../sysv/linux/powerpc/powerpc32/nofpu/libm.abilist | 1 + .../unix/sysv/linux/powerpc/powerpc64/be/libm.abilist | 1 + .../unix/sysv/linux/powerpc/powerpc64/le/libm.abilist | 1 + sysdeps/unix/sysv/linux/s390/s390-32/libm.abilist | 1 + sysdeps/unix/sysv/linux/s390/s390-64/libm.abilist | 1 + sysdeps/unix/sysv/linux/sh/be/libm.abilist | 1 + sysdeps/unix/sysv/linux/sh/le/libm.abilist | 1 + sysdeps/unix/sysv/linux/sparc/sparc32/libm.abilist | 1 + sysdeps/unix/sysv/linux/sparc/sparc64/libm.abilist | 1 + sysdeps/unix/sysv/linux/x86_64/64/libm.abilist | 1 + sysdeps/unix/sysv/linux/x86_64/x32/libm.abilist | 1 + 30 files changed, 48 insertions(+), 4 deletions(-) create mode 100644 math/w_acoshf.c create mode 100644 sysdeps/ieee754/flt-32/w_acoshf.c diff --git a/math/Versions b/math/Versions index ece5ad7fd1..79c82de16e 100644 --- a/math/Versions +++ b/math/Versions @@ -675,5 +675,6 @@ libm { lgammaf; lgammaf_r; acosf; asinf; + acoshf; } } diff --git a/math/w_acoshf.c b/math/w_acoshf.c new file mode 100644 index 0000000000..c1a7ca24f9 --- /dev/null +++ b/math/w_acoshf.c @@ -0,0 +1,8 @@ +#include +#undef __USE_WRAPPER_TEMPLATE +#define __USE_WRAPPER_TEMPLATE 1 +#undef declare_mgen_alias +#define declare_mgen_alias(a, b) +#include +versioned_symbol (libm, __acoshf, acoshf, GLIBC_2_41); +libm_alias_float_other (__acoshf, acoshf) diff --git a/math/w_acoshf_compat.c b/math/w_acoshf_compat.c index 7ed4bbb857..a472c30147 100644 --- a/math/w_acoshf_compat.c +++ b/math/w_acoshf_compat.c @@ -21,10 +21,10 @@ #include -#if LIBM_SVID_COMPAT +#if LIBM_SVID_COMPAT && SHLIB_COMPAT (libm, GLIBC_2_0, GLIBC_2_41) /* wrapper acoshf */ float -__acoshf (float x) +__acosh_compatf (float x) { if (__builtin_expect (isless (x, 1.0f), 0) && _LIB_VERSION != _IEEE_) /* acosh(x<1) */ @@ -32,5 +32,5 @@ __acoshf (float x) return __ieee754_acoshf (x); } -libm_alias_float (__acosh, acosh) +compat_symbol (libm, __acosh_compatf, acoshf, GLIBC_2_0); #endif diff --git a/sysdeps/ieee754/flt-32/e_acoshf.c b/sysdeps/ieee754/flt-32/e_acoshf.c index a0a0abc2dd..c44429acd3 100644 --- a/sysdeps/ieee754/flt-32/e_acoshf.c +++ b/sysdeps/ieee754/flt-32/e_acoshf.c @@ -27,6 +27,8 @@ SOFTWARE. #include #include #include +#include +#include #include "math_config.h" static __attribute__ ((noinline)) float @@ -43,7 +45,7 @@ as_special (float x) } float -__ieee754_acoshf (float x) +__acoshf (float x) { static const double ix[] = { @@ -198,4 +200,11 @@ __ieee754_acoshf (float x) else return as_special (x); } +strong_alias (__acoshf, __ieee754_acoshf) +#if LIBM_SVID_COMPAT +versioned_symbol (libm, __acoshf, acoshf, GLIBC_2_41); +libm_alias_float_other (__acosh, acosh) +#else +libm_alias_float (__acosh, acosh) +#endif libm_alias_finite (__ieee754_acoshf, __acoshf) diff --git a/sysdeps/ieee754/flt-32/w_acoshf.c b/sysdeps/ieee754/flt-32/w_acoshf.c new file mode 100644 index 0000000000..1cc8931700 --- /dev/null +++ b/sysdeps/ieee754/flt-32/w_acoshf.c @@ -0,0 +1 @@ +/* Not needed. */ diff --git a/sysdeps/mach/hurd/i386/libm.abilist b/sysdeps/mach/hurd/i386/libm.abilist index 7bf32cec28..6d315ff0d0 100644 --- a/sysdeps/mach/hurd/i386/libm.abilist +++ b/sysdeps/mach/hurd/i386/libm.abilist @@ -1222,6 +1222,7 @@ GLIBC_2.40 logp1f64 F GLIBC_2.40 logp1f64x F GLIBC_2.40 logp1l F GLIBC_2.41 acosf F +GLIBC_2.41 acoshf F GLIBC_2.41 acospi F GLIBC_2.41 acospif F GLIBC_2.41 acospif128 F diff --git a/sysdeps/unix/sysv/linux/aarch64/libm.abilist b/sysdeps/unix/sysv/linux/aarch64/libm.abilist index 7ce045c75b..c77803f475 100644 --- a/sysdeps/unix/sysv/linux/aarch64/libm.abilist +++ b/sysdeps/unix/sysv/linux/aarch64/libm.abilist @@ -1190,6 +1190,7 @@ GLIBC_2.40 logp1f64 F GLIBC_2.40 logp1f64x F GLIBC_2.40 logp1l F GLIBC_2.41 acosf F +GLIBC_2.41 acoshf F GLIBC_2.41 acospi F GLIBC_2.41 acospif F GLIBC_2.41 acospif128 F diff --git a/sysdeps/unix/sysv/linux/alpha/libm.abilist b/sysdeps/unix/sysv/linux/alpha/libm.abilist index e76aebf1b2..5f7a952e69 100644 --- a/sysdeps/unix/sysv/linux/alpha/libm.abilist +++ b/sysdeps/unix/sysv/linux/alpha/libm.abilist @@ -1349,6 +1349,7 @@ GLIBC_2.40 logp1f64 F GLIBC_2.40 logp1f64x F GLIBC_2.40 logp1l F GLIBC_2.41 acosf F +GLIBC_2.41 acoshf F GLIBC_2.41 acospi F GLIBC_2.41 acospif F GLIBC_2.41 acospif128 F diff --git a/sysdeps/unix/sysv/linux/arm/be/libm.abilist b/sysdeps/unix/sysv/linux/arm/be/libm.abilist index 9de26ad003..f62c5e656f 100644 --- a/sysdeps/unix/sysv/linux/arm/be/libm.abilist +++ b/sysdeps/unix/sysv/linux/arm/be/libm.abilist @@ -879,6 +879,7 @@ GLIBC_2.40 logp1f32x F GLIBC_2.40 logp1f64 F GLIBC_2.40 logp1l F GLIBC_2.41 acosf F +GLIBC_2.41 acoshf F GLIBC_2.41 acospi F GLIBC_2.41 acospif F GLIBC_2.41 acospif32 F diff --git a/sysdeps/unix/sysv/linux/arm/le/libm.abilist b/sysdeps/unix/sysv/linux/arm/le/libm.abilist index 9de26ad003..f62c5e656f 100644 --- a/sysdeps/unix/sysv/linux/arm/le/libm.abilist +++ b/sysdeps/unix/sysv/linux/arm/le/libm.abilist @@ -879,6 +879,7 @@ GLIBC_2.40 logp1f32x F GLIBC_2.40 logp1f64 F GLIBC_2.40 logp1l F GLIBC_2.41 acosf F +GLIBC_2.41 acoshf F GLIBC_2.41 acospi F GLIBC_2.41 acospif F GLIBC_2.41 acospif32 F diff --git a/sysdeps/unix/sysv/linux/hppa/libm.abilist b/sysdeps/unix/sysv/linux/hppa/libm.abilist index d9bb2554cb..c5b3f68692 100644 --- a/sysdeps/unix/sysv/linux/hppa/libm.abilist +++ b/sysdeps/unix/sysv/linux/hppa/libm.abilist @@ -879,6 +879,7 @@ GLIBC_2.40 logp1f32x F GLIBC_2.40 logp1f64 F GLIBC_2.40 logp1l F GLIBC_2.41 acosf F +GLIBC_2.41 acoshf F GLIBC_2.41 acospi F GLIBC_2.41 acospif F GLIBC_2.41 acospif32 F diff --git a/sysdeps/unix/sysv/linux/i386/libm.abilist b/sysdeps/unix/sysv/linux/i386/libm.abilist index ce9f671f15..9774e7b519 100644 --- a/sysdeps/unix/sysv/linux/i386/libm.abilist +++ b/sysdeps/unix/sysv/linux/i386/libm.abilist @@ -1229,6 +1229,7 @@ GLIBC_2.40 logp1f64 F GLIBC_2.40 logp1f64x F GLIBC_2.40 logp1l F GLIBC_2.41 acosf F +GLIBC_2.41 acoshf F GLIBC_2.41 acospi F GLIBC_2.41 acospif F GLIBC_2.41 acospif128 F diff --git a/sysdeps/unix/sysv/linux/m68k/coldfire/libm.abilist b/sysdeps/unix/sysv/linux/m68k/coldfire/libm.abilist index 9de26ad003..f62c5e656f 100644 --- a/sysdeps/unix/sysv/linux/m68k/coldfire/libm.abilist +++ b/sysdeps/unix/sysv/linux/m68k/coldfire/libm.abilist @@ -879,6 +879,7 @@ GLIBC_2.40 logp1f32x F GLIBC_2.40 logp1f64 F GLIBC_2.40 logp1l F GLIBC_2.41 acosf F +GLIBC_2.41 acoshf F GLIBC_2.41 acospi F GLIBC_2.41 acospif F GLIBC_2.41 acospif32 F diff --git a/sysdeps/unix/sysv/linux/m68k/m680x0/libm.abilist b/sysdeps/unix/sysv/linux/m68k/m680x0/libm.abilist index 9dfc70db43..33ec1b4361 100644 --- a/sysdeps/unix/sysv/linux/m68k/m680x0/libm.abilist +++ b/sysdeps/unix/sysv/linux/m68k/m680x0/libm.abilist @@ -914,6 +914,7 @@ GLIBC_2.40 logp1f32 F GLIBC_2.40 logp1f32x F GLIBC_2.40 logp1f64 F GLIBC_2.40 logp1l F +GLIBC_2.41 acoshf F GLIBC_2.41 acospi F GLIBC_2.41 acospif F GLIBC_2.41 acospif32 F diff --git a/sysdeps/unix/sysv/linux/microblaze/be/libm.abilist b/sysdeps/unix/sysv/linux/microblaze/be/libm.abilist index f0d451d7d1..8fc18e8277 100644 --- a/sysdeps/unix/sysv/linux/microblaze/be/libm.abilist +++ b/sysdeps/unix/sysv/linux/microblaze/be/libm.abilist @@ -879,6 +879,7 @@ GLIBC_2.40 logp1f32x F GLIBC_2.40 logp1f64 F GLIBC_2.40 logp1l F GLIBC_2.41 acosf F +GLIBC_2.41 acoshf F GLIBC_2.41 acospi F GLIBC_2.41 acospif F GLIBC_2.41 acospif32 F diff --git a/sysdeps/unix/sysv/linux/microblaze/le/libm.abilist b/sysdeps/unix/sysv/linux/microblaze/le/libm.abilist index f0d451d7d1..8fc18e8277 100644 --- a/sysdeps/unix/sysv/linux/microblaze/le/libm.abilist +++ b/sysdeps/unix/sysv/linux/microblaze/le/libm.abilist @@ -879,6 +879,7 @@ GLIBC_2.40 logp1f32x F GLIBC_2.40 logp1f64 F GLIBC_2.40 logp1l F GLIBC_2.41 acosf F +GLIBC_2.41 acoshf F GLIBC_2.41 acospi F GLIBC_2.41 acospif F GLIBC_2.41 acospif32 F diff --git a/sysdeps/unix/sysv/linux/mips/mips32/libm.abilist b/sysdeps/unix/sysv/linux/mips/mips32/libm.abilist index bec657f782..8587d0aa14 100644 --- a/sysdeps/unix/sysv/linux/mips/mips32/libm.abilist +++ b/sysdeps/unix/sysv/linux/mips/mips32/libm.abilist @@ -879,6 +879,7 @@ GLIBC_2.40 logp1f32x F GLIBC_2.40 logp1f64 F GLIBC_2.40 logp1l F GLIBC_2.41 acosf F +GLIBC_2.41 acoshf F GLIBC_2.41 acospi F GLIBC_2.41 acospif F GLIBC_2.41 acospif32 F diff --git a/sysdeps/unix/sysv/linux/mips/mips64/libm.abilist b/sysdeps/unix/sysv/linux/mips/mips64/libm.abilist index 1b799c06c7..458a07084f 100644 --- a/sysdeps/unix/sysv/linux/mips/mips64/libm.abilist +++ b/sysdeps/unix/sysv/linux/mips/mips64/libm.abilist @@ -1190,6 +1190,7 @@ GLIBC_2.40 logp1f64 F GLIBC_2.40 logp1f64x F GLIBC_2.40 logp1l F GLIBC_2.41 acosf F +GLIBC_2.41 acoshf F GLIBC_2.41 acospi F GLIBC_2.41 acospif F GLIBC_2.41 acospif128 F diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libm.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libm.abilist index 89d3d18948..9c884e498d 100644 --- a/sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libm.abilist +++ b/sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libm.abilist @@ -1026,6 +1026,7 @@ GLIBC_2.40 logp1f32x F GLIBC_2.40 logp1f64 F GLIBC_2.40 logp1l F GLIBC_2.41 acosf F +GLIBC_2.41 acoshf F GLIBC_2.41 acospi F GLIBC_2.41 acospif F GLIBC_2.41 acospif32 F diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libm.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libm.abilist index 2b544a2df9..9eeca55fb9 100644 --- a/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libm.abilist +++ b/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libm.abilist @@ -1025,6 +1025,7 @@ GLIBC_2.40 logp1f32x F GLIBC_2.40 logp1f64 F GLIBC_2.40 logp1l F GLIBC_2.41 acosf F +GLIBC_2.41 acoshf F GLIBC_2.41 acospi F GLIBC_2.41 acospif F GLIBC_2.41 acospif32 F diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libm.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libm.abilist index 2749d7fd38..af946fd58f 100644 --- a/sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libm.abilist +++ b/sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libm.abilist @@ -1019,6 +1019,7 @@ GLIBC_2.40 logp1f32x F GLIBC_2.40 logp1f64 F GLIBC_2.40 logp1l F GLIBC_2.41 acosf F +GLIBC_2.41 acoshf F GLIBC_2.41 acospi F GLIBC_2.41 acospif F GLIBC_2.41 acospif32 F diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libm.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libm.abilist index fd47e9c90c..5c627183ab 100644 --- a/sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libm.abilist +++ b/sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libm.abilist @@ -1374,6 +1374,7 @@ GLIBC_2.41 __cospiieee128 F GLIBC_2.41 __sinpiieee128 F GLIBC_2.41 __tanpiieee128 F GLIBC_2.41 acosf F +GLIBC_2.41 acoshf F GLIBC_2.41 acospi F GLIBC_2.41 acospif F GLIBC_2.41 acospif128 F diff --git a/sysdeps/unix/sysv/linux/s390/s390-32/libm.abilist b/sysdeps/unix/sysv/linux/s390/s390-32/libm.abilist index c2591d5df6..aeeec34ec0 100644 --- a/sysdeps/unix/sysv/linux/s390/s390-32/libm.abilist +++ b/sysdeps/unix/sysv/linux/s390/s390-32/libm.abilist @@ -1293,6 +1293,7 @@ GLIBC_2.40 logp1f64 F GLIBC_2.40 logp1f64x F GLIBC_2.40 logp1l F GLIBC_2.41 acosf F +GLIBC_2.41 acoshf F GLIBC_2.41 acospi F GLIBC_2.41 acospif F GLIBC_2.41 acospif128 F diff --git a/sysdeps/unix/sysv/linux/s390/s390-64/libm.abilist b/sysdeps/unix/sysv/linux/s390/s390-64/libm.abilist index e9a958a3f0..b5d003b15b 100644 --- a/sysdeps/unix/sysv/linux/s390/s390-64/libm.abilist +++ b/sysdeps/unix/sysv/linux/s390/s390-64/libm.abilist @@ -1293,6 +1293,7 @@ GLIBC_2.40 logp1f64 F GLIBC_2.40 logp1f64x F GLIBC_2.40 logp1l F GLIBC_2.41 acosf F +GLIBC_2.41 acoshf F GLIBC_2.41 acospi F GLIBC_2.41 acospif F GLIBC_2.41 acospif128 F diff --git a/sysdeps/unix/sysv/linux/sh/be/libm.abilist b/sysdeps/unix/sysv/linux/sh/be/libm.abilist index 2bb4cf4710..6513301bd5 100644 --- a/sysdeps/unix/sysv/linux/sh/be/libm.abilist +++ b/sysdeps/unix/sysv/linux/sh/be/libm.abilist @@ -879,6 +879,7 @@ GLIBC_2.40 logp1f32x F GLIBC_2.40 logp1f64 F GLIBC_2.40 logp1l F GLIBC_2.41 acosf F +GLIBC_2.41 acoshf F GLIBC_2.41 acospi F GLIBC_2.41 acospif F GLIBC_2.41 acospif32 F diff --git a/sysdeps/unix/sysv/linux/sh/le/libm.abilist b/sysdeps/unix/sysv/linux/sh/le/libm.abilist index 2bb4cf4710..6513301bd5 100644 --- a/sysdeps/unix/sysv/linux/sh/le/libm.abilist +++ b/sysdeps/unix/sysv/linux/sh/le/libm.abilist @@ -879,6 +879,7 @@ GLIBC_2.40 logp1f32x F GLIBC_2.40 logp1f64 F GLIBC_2.40 logp1l F GLIBC_2.41 acosf F +GLIBC_2.41 acoshf F GLIBC_2.41 acospi F GLIBC_2.41 acospif F GLIBC_2.41 acospif32 F diff --git a/sysdeps/unix/sysv/linux/sparc/sparc32/libm.abilist b/sysdeps/unix/sysv/linux/sparc/sparc32/libm.abilist index bfc00cb587..c92cc3da68 100644 --- a/sysdeps/unix/sysv/linux/sparc/sparc32/libm.abilist +++ b/sysdeps/unix/sysv/linux/sparc/sparc32/libm.abilist @@ -1300,6 +1300,7 @@ GLIBC_2.40 logp1f64 F GLIBC_2.40 logp1f64x F GLIBC_2.40 logp1l F GLIBC_2.41 acosf F +GLIBC_2.41 acoshf F GLIBC_2.41 acospi F GLIBC_2.41 acospif F GLIBC_2.41 acospif128 F diff --git a/sysdeps/unix/sysv/linux/sparc/sparc64/libm.abilist b/sysdeps/unix/sysv/linux/sparc/sparc64/libm.abilist index 5a0af4b279..8168a21547 100644 --- a/sysdeps/unix/sysv/linux/sparc/sparc64/libm.abilist +++ b/sysdeps/unix/sysv/linux/sparc/sparc64/libm.abilist @@ -1190,6 +1190,7 @@ GLIBC_2.40 logp1f64 F GLIBC_2.40 logp1f64x F GLIBC_2.40 logp1l F GLIBC_2.41 acosf F +GLIBC_2.41 acoshf F GLIBC_2.41 acospi F GLIBC_2.41 acospif F GLIBC_2.41 acospif128 F diff --git a/sysdeps/unix/sysv/linux/x86_64/64/libm.abilist b/sysdeps/unix/sysv/linux/x86_64/64/libm.abilist index fff7ae9c3f..33d82c98fb 100644 --- a/sysdeps/unix/sysv/linux/x86_64/64/libm.abilist +++ b/sysdeps/unix/sysv/linux/x86_64/64/libm.abilist @@ -1223,6 +1223,7 @@ GLIBC_2.40 logp1f64 F GLIBC_2.40 logp1f64x F GLIBC_2.40 logp1l F GLIBC_2.41 acosf F +GLIBC_2.41 acoshf F GLIBC_2.41 acospi F GLIBC_2.41 acospif F GLIBC_2.41 acospif128 F diff --git a/sysdeps/unix/sysv/linux/x86_64/x32/libm.abilist b/sysdeps/unix/sysv/linux/x86_64/x32/libm.abilist index f7f938d60b..2bd47844a9 100644 --- a/sysdeps/unix/sysv/linux/x86_64/x32/libm.abilist +++ b/sysdeps/unix/sysv/linux/x86_64/x32/libm.abilist @@ -1223,6 +1223,7 @@ GLIBC_2.40 logp1f64 F GLIBC_2.40 logp1f64x F GLIBC_2.40 logp1l F GLIBC_2.41 acosf F +GLIBC_2.41 acoshf F GLIBC_2.41 acospi F GLIBC_2.41 acospif F GLIBC_2.41 acospif128 F From patchwork Thu Dec 19 20:13:11 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Adhemerval Zanella X-Patchwork-Id: 852054 Delivered-To: patch@linaro.org Received: by 2002:a5d:4888:0:b0:385:e875:8a9e with SMTP id g8csp1697272wrq; Thu, 19 Dec 2024 12:22:49 -0800 (PST) X-Forwarded-Encrypted: i=3; AJvYcCWUv8M/GaFg+te5Gi/945WL+R33I6p/awZEj3ZmIruZftqpn2VQHdG+LVPTC8CA9lieev323A==@linaro.org X-Google-Smtp-Source: AGHT+IF4Gd7yi0sG2mQLSE8h4fHDOpIiS1aIx7TUTbALAe0oVTY/lu8CmLAl0y0Jq5zm7U7Lp1dC X-Received: by 2002:a05:6102:2c83:b0:4af:56a8:737c with SMTP id ada2fe7eead31-4b2cc37dc54mr849856137.12.1734639769370; Thu, 19 Dec 2024 12:22:49 -0800 (PST) ARC-Seal: i=2; a=rsa-sha256; t=1734639769; cv=pass; d=google.com; s=arc-20240605; b=fLAm5fWsm4SmjChvnIl+Er8h1MJyxsz0xSJ3FHI7kaYtgi7DhUVCBZoNEmXkeYeTii XV/iQeqMnpAl2Xx+2ZwP6zVzylUZH4baH+EOJ2pjlHnU7dN6U5ARaykj3QD3HEJLVTbz +8hVc1Fv9GEuunr261FHRZLDhEwURkr6JzQBQeRTnzMWY3cOdVl1yd05De1ujuXWKaJf 4JZ6WS31yHmh/M1e2IdjU51a8Knoqe2KXXjDXZ9XyKlvHfJNNZ4qkqy+2ZcB2DIYBOJU zhrQD7v4r6mplAPb4afd8NDiPjXqP+kaSMgqgUwjQXprxM0QrqhNlrakk4w/3WzAGNZD dZZg== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20240605; h=errors-to:list-subscribe:list-help:list-post:list-archive :list-unsubscribe:list-id:precedence:content-transfer-encoding :mime-version:references:in-reply-to:message-id:date:subject:cc:to :from:dkim-signature:arc-filter:dmarc-filter:delivered-to :dkim-filter; bh=2c950i6DwEVdIvw/FXIrOMbnMVUQsXsOBCsJpyhMNgg=; fh=c0s3Uezv7Rag51rMi6q2BcriyJCPC/LMNTAVHmiKG0w=; b=fkx7StdYK26Tumdl7HWwNfTHT0hLk8jhjGu8HPRjtN+gq8rPlVRLcza8KxyneHvfaN 00J+E3iqH/pL6KfwE8clxQNDbZynjHhJxBP39hj+MFc4tjk9JIgyoFaNRcVjTXN9AOw5 luxnLoWewQl3JPhKdhIGAx0bPTnS2eEB/hbXdtL2OuDrTXO/Oc3Ku18QWIqXmugGg7Iy 8boMqIbf61MnDAVzwMxEGW0j2tC4BxI7IU7BJTOCjdtAZY0h2wnYz9Dt9gJ//A+dv6+I M2MmbdpmQAqbAvjqdCrmX5YRA9+OSI/tyaGhDZ6xqlDR5ZWOI7QeONM/2048IAtclV/N tVVg==; dara=google.com ARC-Authentication-Results: i=2; mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=SuxgZP2s; arc=pass (i=1); spf=pass (google.com: domain of libc-alpha-bounces~patch=linaro.org@sourceware.org designates 2620:52:3:1:0:246e:9693:128c as permitted sender) smtp.mailfrom="libc-alpha-bounces~patch=linaro.org@sourceware.org"; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org Return-Path: Received: from server2.sourceware.org (server2.sourceware.org. [2620:52:3:1:0:246e:9693:128c]) by mx.google.com with ESMTPS id ada2fe7eead31-4b2bfbc2004si748562137.656.2024.12.19.12.22.49 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 19 Dec 2024 12:22:49 -0800 (PST) Received-SPF: pass (google.com: domain of libc-alpha-bounces~patch=linaro.org@sourceware.org designates 2620:52:3:1:0:246e:9693:128c as permitted sender) client-ip=2620:52:3:1:0:246e:9693:128c; Authentication-Results: mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=SuxgZP2s; arc=pass (i=1); spf=pass (google.com: domain of libc-alpha-bounces~patch=linaro.org@sourceware.org designates 2620:52:3:1:0:246e:9693:128c as permitted sender) smtp.mailfrom="libc-alpha-bounces~patch=linaro.org@sourceware.org"; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: from server2.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id DCF373858D33 for ; Thu, 19 Dec 2024 20:22:48 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org DCF373858D33 Authentication-Results: sourceware.org; dkim=pass (2048-bit key, unprotected) header.d=linaro.org header.i=@linaro.org header.a=rsa-sha256 header.s=google header.b=SuxgZP2s X-Original-To: libc-alpha@sourceware.org Delivered-To: libc-alpha@sourceware.org Received: from mail-pl1-x62f.google.com (mail-pl1-x62f.google.com [IPv6:2607:f8b0:4864:20::62f]) by sourceware.org (Postfix) with ESMTPS id 9289E385840D for ; Thu, 19 Dec 2024 20:20:26 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 9289E385840D Authentication-Results: sourceware.org; dmarc=pass (p=none dis=none) header.from=linaro.org Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=linaro.org ARC-Filter: OpenARC Filter v1.0.0 sourceware.org 9289E385840D Authentication-Results: server2.sourceware.org; arc=none smtp.remote-ip=2607:f8b0:4864:20::62f ARC-Seal: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1734639626; cv=none; b=F6O2cN381lrDjLkqrTtOFNiglrZ/mY7/V1SxeP/2i1nGuKAgicdcSGQfMzl9qHeH4liaq8LUUUNGmQ5NOZpOiFLVBDlg6vKb32uLygm+rgsbkdc+UYLsVAPCufmysbrObg/o/eRGCg64oWh0AWfRULn9pcF3Q5noR76reori5ys= ARC-Message-Signature: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1734639626; c=relaxed/simple; bh=auEOSddjQew3sBhKoDjtY+e6HkcBGEP9i2zBjCOeQdY=; h=DKIM-Signature:From:To:Subject:Date:Message-ID:MIME-Version; b=C0yCkXBApzUJBk5m9DlpToP8sUkh4r0rbGMazBmxRwEyHpU9YMoKhEO44k2nP1VMeDJAEysU22g4yHmU44JF754ZFkZA3nUNHPrn7AmjJyhIPd5UIC9FPJpK4OggZ7XdYbQZd5ubznAx8F5Bx3VxelWT/6McZdzyDPVS+5Yc0Vg= ARC-Authentication-Results: i=1; server2.sourceware.org Received: by mail-pl1-x62f.google.com with SMTP id d9443c01a7336-2156e078563so11192005ad.2 for ; Thu, 19 Dec 2024 12:20:26 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1734639622; x=1735244422; darn=sourceware.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=2c950i6DwEVdIvw/FXIrOMbnMVUQsXsOBCsJpyhMNgg=; b=SuxgZP2sasT/HtMt88ZVEdnMUpanjyiZJsCLim6NGd7q54fWIXaoD/8NuwBpLsxsiX FhKvSQXF4emMH0qzPs/QSunRaS5cNZsK9wYTDRIPhY0Lxyjkwbl4JPmeyKzlRrFFfIFy xxnlKJMZPpQCvIBDE3W/ZhswF6Cq9COA3naIDNfQfA60dJTfzB9zIS5rdog5NVl6IKPC KR+4K6fsS5XsAb1HQJxkBLAeDoBMAZkcHFIQCdN24SI9waW54iPqWeEizbtGFPiSOAcv yVY9FrU2sdinalzXbAFRA5XCjaNCaYPVho6lKOZdBUyRrOrnjifKg/Cx483rvJf4mLKJ kong== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1734639622; x=1735244422; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=2c950i6DwEVdIvw/FXIrOMbnMVUQsXsOBCsJpyhMNgg=; b=OB0SQmUoS5pqlQi+dsjDvkS++qL6TtOnD4itE2pi4dqhAAg5z1mi0un2xsv9cLt2nW KaNH7j3D28lpOkjGbROph2FqpS+koxf4iF3fqs7jfSWcKbNG1OGcSxndrCMrVYCh+s74 FPOAvTsxwGuSguR5aw3/PYEbDmSfnp+QuBBmEVZ/tYRM+H5LGnR+bq1UxiISkXPE1SvC 6cSlXsLLHY7wGqhJx37ZNLsbhcw5ZpMeIUTy2HCbfYE8eeav0amjCWU9xPWGY5f3Bnvd EvCNObKV7vf+BkTw0WvJbVuTTEakfEk6kowTEGK5IeFBu4HJyRBRSlVQIInyhCUAVUKS qyYQ== X-Gm-Message-State: AOJu0Yx7wdrnogVKq53oMqQgYoMpPJWqzZRA2HSf/asBNIVGzYU7WqVL HoqyGypAjGZFlVSetwiwpSXsc5j53MFHmjCLn0wqBC7ZH3DlWA7y3AajQD9xz/lx3X96xdhwmPj b X-Gm-Gg: ASbGncvvhB1j0ZaFSz77t3yCM3NZ7aQeF8J2pPUKyCZ7FIVbsmBbhJs/i+xSGP6BFM8 Hn+Jcs3ivGCxci6P+kM7ce5NTqFM//9P3gkhQ2oxw9mYb1UGLUNiiSp0vQPwX26LgTxKcVpc7MV ONg1fbKg1NS0DsJbm6DcCN0q+zSGzQ7vKIkJDs8ae2K81J+Zu8N5lq217kQJvOIx8q9DoeBTTWN 3orynHH9IGckZmKPIazN4vBcWBnJoWWTV2XBconV38T0RrenGGSe9d5EY+aEigyoJoABQ== X-Received: by 2002:a17:902:e846:b0:20c:fb47:5c1c with SMTP id d9443c01a7336-219e6e9a438mr1200285ad.14.1734639621258; Thu, 19 Dec 2024 12:20:21 -0800 (PST) Received: from mandiga.. ([2804:1b3:a7c3:2d5b:c4ce:4df0:8543:f129]) by smtp.gmail.com with ESMTPSA id d9443c01a7336-219dca02589sm16360645ad.257.2024.12.19.12.20.19 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 19 Dec 2024 12:20:20 -0800 (PST) From: Adhemerval Zanella To: libc-alpha@sourceware.org Cc: DJ Delorie , Joseph Myers , Paul Zimmermann Subject: [PATCH 07/10] math: Remove the error handling wrapper from atan2f Date: Thu, 19 Dec 2024 17:13:11 -0300 Message-ID: <20241219202003.2651277-8-adhemerval.zanella@linaro.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20241219202003.2651277-1-adhemerval.zanella@linaro.org> References: <20241219202003.2651277-1-adhemerval.zanella@linaro.org> MIME-Version: 1.0 X-BeenThere: libc-alpha@sourceware.org X-Mailman-Version: 2.1.30 Precedence: list List-Id: Libc-alpha mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: libc-alpha-bounces~patch=linaro.org@sourceware.org It improves latency for about 3-6% and throughput for about 5-12%. --- math/Versions | 1 + math/w_atan2f.c | 8 ++++++++ math/w_atan2f_compat.c | 11 ++++++++--- sysdeps/ieee754/flt-32/e_atan2f.c | 19 ++++++++++++++++--- sysdeps/ieee754/flt-32/w_atan2f.c | 1 + sysdeps/m68k/m680x0/fpu/w_atan2f_compat.c | 8 ++++++++ sysdeps/mach/hurd/i386/libm.abilist | 1 + sysdeps/unix/sysv/linux/aarch64/libm.abilist | 1 + sysdeps/unix/sysv/linux/alpha/libm.abilist | 1 + sysdeps/unix/sysv/linux/arm/be/libm.abilist | 1 + sysdeps/unix/sysv/linux/arm/le/libm.abilist | 1 + sysdeps/unix/sysv/linux/hppa/libm.abilist | 1 + sysdeps/unix/sysv/linux/i386/libm.abilist | 1 + .../sysv/linux/m68k/coldfire/libm.abilist | 1 + .../sysv/linux/microblaze/be/libm.abilist | 1 + .../sysv/linux/microblaze/le/libm.abilist | 1 + .../unix/sysv/linux/mips/mips32/libm.abilist | 1 + .../unix/sysv/linux/mips/mips64/libm.abilist | 1 + .../linux/powerpc/powerpc32/fpu/libm.abilist | 1 + .../powerpc/powerpc32/nofpu/libm.abilist | 1 + .../linux/powerpc/powerpc64/be/libm.abilist | 1 + .../linux/powerpc/powerpc64/le/libm.abilist | 1 + .../unix/sysv/linux/s390/s390-32/libm.abilist | 1 + .../unix/sysv/linux/s390/s390-64/libm.abilist | 1 + sysdeps/unix/sysv/linux/sh/be/libm.abilist | 1 + sysdeps/unix/sysv/linux/sh/le/libm.abilist | 1 + .../sysv/linux/sparc/sparc32/libm.abilist | 1 + .../sysv/linux/sparc/sparc64/libm.abilist | 1 + .../unix/sysv/linux/x86_64/64/libm.abilist | 1 + .../unix/sysv/linux/x86_64/x32/libm.abilist | 1 + 30 files changed, 66 insertions(+), 6 deletions(-) create mode 100644 math/w_atan2f.c create mode 100644 sysdeps/ieee754/flt-32/w_atan2f.c create mode 100644 sysdeps/m68k/m680x0/fpu/w_atan2f_compat.c diff --git a/math/Versions b/math/Versions index 79c82de16e..2a3d98ed55 100644 --- a/math/Versions +++ b/math/Versions @@ -676,5 +676,6 @@ libm { acosf; asinf; acoshf; + atan2f; } } diff --git a/math/w_atan2f.c b/math/w_atan2f.c new file mode 100644 index 0000000000..4ce4020bfe --- /dev/null +++ b/math/w_atan2f.c @@ -0,0 +1,8 @@ +#include +#undef __USE_WRAPPER_TEMPLATE +#define __USE_WRAPPER_TEMPLATE 1 +#undef declare_mgen_alias +#define declare_mgen_alias(a, b) +#include +versioned_symbol (libm, __atan2f, atan2f, GLIBC_2_41); +libm_alias_float_other (__atan2f, atan2f) diff --git a/math/w_atan2f_compat.c b/math/w_atan2f_compat.c index 8864010fcb..183f36561f 100644 --- a/math/w_atan2f_compat.c +++ b/math/w_atan2f_compat.c @@ -26,9 +26,9 @@ #include -#if LIBM_SVID_COMPAT +#if LIBM_SVID_COMPAT && SHLIB_COMPAT (libm, GLIBC_2_0, GLIBC_2_41) float -__atan2f (float y, float x) +__atan2_compatf (float y, float x) { float z; @@ -40,5 +40,10 @@ __atan2f (float y, float x) __set_errno (ERANGE); return z; } -libm_alias_float (__atan2, atan2) +# ifdef NO_COMPAT_NEEDED +strong_alias (__atan2_compatf, __atan2f) +libm_alias_float (__atan2_compat, atan2) +# else +compat_symbol (libm, __atan2_compatf, atan2f, GLIBC_2_0); +# endif #endif diff --git a/sysdeps/ieee754/flt-32/e_atan2f.c b/sysdeps/ieee754/flt-32/e_atan2f.c index 82a0151293..7720b54395 100644 --- a/sysdeps/ieee754/flt-32/e_atan2f.c +++ b/sysdeps/ieee754/flt-32/e_atan2f.c @@ -3,7 +3,7 @@ Copyright (c) 2022-2024 Alexei Sibidanov and Paul Zimmermann. The original version of this file was copied from the CORE-MATH -project (file src/binary32/atan2/atan2f.c, revision 7835c5d). +project (file src/binary32/atan2/atan2f.c, revision 9b28a4a). Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal @@ -25,9 +25,12 @@ SOFTWARE. */ +#include #include #include #include +#include +#include #include "math_config.h" static inline double @@ -89,7 +92,7 @@ cr_atan2f_tiny (float y, float x) } float -__ieee754_atan2f (float y, float x) +__atan2f (float y, float x) { static const double cn[] = { @@ -269,6 +272,16 @@ __ieee754_atan2f (float y, float x) } r = th + tm; } - return r; + float rf = r; + if (__glibc_unlikely (rf == 0 && y != 0)) + __set_errno (ERANGE); + return rf; } +strong_alias (__atan2f, __ieee754_atan2f) +#if LIBM_SVID_COMPAT +versioned_symbol (libm, __atan2f, atan2f, GLIBC_2_41); +libm_alias_float_other (__atan2, atan2) +#else +libm_alias_float (__atan2, atan2) +#endif libm_alias_finite (__ieee754_atan2f, __atan2f) diff --git a/sysdeps/ieee754/flt-32/w_atan2f.c b/sysdeps/ieee754/flt-32/w_atan2f.c new file mode 100644 index 0000000000..1cc8931700 --- /dev/null +++ b/sysdeps/ieee754/flt-32/w_atan2f.c @@ -0,0 +1 @@ +/* Not needed. */ diff --git a/sysdeps/m68k/m680x0/fpu/w_atan2f_compat.c b/sysdeps/m68k/m680x0/fpu/w_atan2f_compat.c new file mode 100644 index 0000000000..ebc8035961 --- /dev/null +++ b/sysdeps/m68k/m680x0/fpu/w_atan2f_compat.c @@ -0,0 +1,8 @@ +/* m68k provides an optimized __ieee754_atan2f. */ +#ifdef SHARED +# define NO_COMPAT_NEEDED 1 +# include +#else +# include +# include +#endif diff --git a/sysdeps/mach/hurd/i386/libm.abilist b/sysdeps/mach/hurd/i386/libm.abilist index 6d315ff0d0..3db9b3adfa 100644 --- a/sysdeps/mach/hurd/i386/libm.abilist +++ b/sysdeps/mach/hurd/i386/libm.abilist @@ -1240,6 +1240,7 @@ GLIBC_2.41 asinpif32x F GLIBC_2.41 asinpif64 F GLIBC_2.41 asinpif64x F GLIBC_2.41 asinpil F +GLIBC_2.41 atan2f F GLIBC_2.41 atan2pi F GLIBC_2.41 atan2pif F GLIBC_2.41 atan2pif128 F diff --git a/sysdeps/unix/sysv/linux/aarch64/libm.abilist b/sysdeps/unix/sysv/linux/aarch64/libm.abilist index c77803f475..2a35531ea3 100644 --- a/sysdeps/unix/sysv/linux/aarch64/libm.abilist +++ b/sysdeps/unix/sysv/linux/aarch64/libm.abilist @@ -1208,6 +1208,7 @@ GLIBC_2.41 asinpif32x F GLIBC_2.41 asinpif64 F GLIBC_2.41 asinpif64x F GLIBC_2.41 asinpil F +GLIBC_2.41 atan2f F GLIBC_2.41 atan2pi F GLIBC_2.41 atan2pif F GLIBC_2.41 atan2pif128 F diff --git a/sysdeps/unix/sysv/linux/alpha/libm.abilist b/sysdeps/unix/sysv/linux/alpha/libm.abilist index 5f7a952e69..cbfe056a3c 100644 --- a/sysdeps/unix/sysv/linux/alpha/libm.abilist +++ b/sysdeps/unix/sysv/linux/alpha/libm.abilist @@ -1367,6 +1367,7 @@ GLIBC_2.41 asinpif32x F GLIBC_2.41 asinpif64 F GLIBC_2.41 asinpif64x F GLIBC_2.41 asinpil F +GLIBC_2.41 atan2f F GLIBC_2.41 atan2pi F GLIBC_2.41 atan2pif F GLIBC_2.41 atan2pif128 F diff --git a/sysdeps/unix/sysv/linux/arm/be/libm.abilist b/sysdeps/unix/sysv/linux/arm/be/libm.abilist index f62c5e656f..e0b25bc3e0 100644 --- a/sysdeps/unix/sysv/linux/arm/be/libm.abilist +++ b/sysdeps/unix/sysv/linux/arm/be/libm.abilist @@ -893,6 +893,7 @@ GLIBC_2.41 asinpif32 F GLIBC_2.41 asinpif32x F GLIBC_2.41 asinpif64 F GLIBC_2.41 asinpil F +GLIBC_2.41 atan2f F GLIBC_2.41 atan2pi F GLIBC_2.41 atan2pif F GLIBC_2.41 atan2pif32 F diff --git a/sysdeps/unix/sysv/linux/arm/le/libm.abilist b/sysdeps/unix/sysv/linux/arm/le/libm.abilist index f62c5e656f..e0b25bc3e0 100644 --- a/sysdeps/unix/sysv/linux/arm/le/libm.abilist +++ b/sysdeps/unix/sysv/linux/arm/le/libm.abilist @@ -893,6 +893,7 @@ GLIBC_2.41 asinpif32 F GLIBC_2.41 asinpif32x F GLIBC_2.41 asinpif64 F GLIBC_2.41 asinpil F +GLIBC_2.41 atan2f F GLIBC_2.41 atan2pi F GLIBC_2.41 atan2pif F GLIBC_2.41 atan2pif32 F diff --git a/sysdeps/unix/sysv/linux/hppa/libm.abilist b/sysdeps/unix/sysv/linux/hppa/libm.abilist index c5b3f68692..1424f5750d 100644 --- a/sysdeps/unix/sysv/linux/hppa/libm.abilist +++ b/sysdeps/unix/sysv/linux/hppa/libm.abilist @@ -893,6 +893,7 @@ GLIBC_2.41 asinpif32 F GLIBC_2.41 asinpif32x F GLIBC_2.41 asinpif64 F GLIBC_2.41 asinpil F +GLIBC_2.41 atan2f F GLIBC_2.41 atan2pi F GLIBC_2.41 atan2pif F GLIBC_2.41 atan2pif32 F diff --git a/sysdeps/unix/sysv/linux/i386/libm.abilist b/sysdeps/unix/sysv/linux/i386/libm.abilist index 9774e7b519..a8a721d67f 100644 --- a/sysdeps/unix/sysv/linux/i386/libm.abilist +++ b/sysdeps/unix/sysv/linux/i386/libm.abilist @@ -1247,6 +1247,7 @@ GLIBC_2.41 asinpif32x F GLIBC_2.41 asinpif64 F GLIBC_2.41 asinpif64x F GLIBC_2.41 asinpil F +GLIBC_2.41 atan2f F GLIBC_2.41 atan2pi F GLIBC_2.41 atan2pif F GLIBC_2.41 atan2pif128 F diff --git a/sysdeps/unix/sysv/linux/m68k/coldfire/libm.abilist b/sysdeps/unix/sysv/linux/m68k/coldfire/libm.abilist index f62c5e656f..e0b25bc3e0 100644 --- a/sysdeps/unix/sysv/linux/m68k/coldfire/libm.abilist +++ b/sysdeps/unix/sysv/linux/m68k/coldfire/libm.abilist @@ -893,6 +893,7 @@ GLIBC_2.41 asinpif32 F GLIBC_2.41 asinpif32x F GLIBC_2.41 asinpif64 F GLIBC_2.41 asinpil F +GLIBC_2.41 atan2f F GLIBC_2.41 atan2pi F GLIBC_2.41 atan2pif F GLIBC_2.41 atan2pif32 F diff --git a/sysdeps/unix/sysv/linux/microblaze/be/libm.abilist b/sysdeps/unix/sysv/linux/microblaze/be/libm.abilist index 8fc18e8277..542f70b72b 100644 --- a/sysdeps/unix/sysv/linux/microblaze/be/libm.abilist +++ b/sysdeps/unix/sysv/linux/microblaze/be/libm.abilist @@ -893,6 +893,7 @@ GLIBC_2.41 asinpif32 F GLIBC_2.41 asinpif32x F GLIBC_2.41 asinpif64 F GLIBC_2.41 asinpil F +GLIBC_2.41 atan2f F GLIBC_2.41 atan2pi F GLIBC_2.41 atan2pif F GLIBC_2.41 atan2pif32 F diff --git a/sysdeps/unix/sysv/linux/microblaze/le/libm.abilist b/sysdeps/unix/sysv/linux/microblaze/le/libm.abilist index 8fc18e8277..542f70b72b 100644 --- a/sysdeps/unix/sysv/linux/microblaze/le/libm.abilist +++ b/sysdeps/unix/sysv/linux/microblaze/le/libm.abilist @@ -893,6 +893,7 @@ GLIBC_2.41 asinpif32 F GLIBC_2.41 asinpif32x F GLIBC_2.41 asinpif64 F GLIBC_2.41 asinpil F +GLIBC_2.41 atan2f F GLIBC_2.41 atan2pi F GLIBC_2.41 atan2pif F GLIBC_2.41 atan2pif32 F diff --git a/sysdeps/unix/sysv/linux/mips/mips32/libm.abilist b/sysdeps/unix/sysv/linux/mips/mips32/libm.abilist index 8587d0aa14..db67a1e9b3 100644 --- a/sysdeps/unix/sysv/linux/mips/mips32/libm.abilist +++ b/sysdeps/unix/sysv/linux/mips/mips32/libm.abilist @@ -893,6 +893,7 @@ GLIBC_2.41 asinpif32 F GLIBC_2.41 asinpif32x F GLIBC_2.41 asinpif64 F GLIBC_2.41 asinpil F +GLIBC_2.41 atan2f F GLIBC_2.41 atan2pi F GLIBC_2.41 atan2pif F GLIBC_2.41 atan2pif32 F diff --git a/sysdeps/unix/sysv/linux/mips/mips64/libm.abilist b/sysdeps/unix/sysv/linux/mips/mips64/libm.abilist index 458a07084f..8c9766fdab 100644 --- a/sysdeps/unix/sysv/linux/mips/mips64/libm.abilist +++ b/sysdeps/unix/sysv/linux/mips/mips64/libm.abilist @@ -1208,6 +1208,7 @@ GLIBC_2.41 asinpif32x F GLIBC_2.41 asinpif64 F GLIBC_2.41 asinpif64x F GLIBC_2.41 asinpil F +GLIBC_2.41 atan2f F GLIBC_2.41 atan2pi F GLIBC_2.41 atan2pif F GLIBC_2.41 atan2pif128 F diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libm.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libm.abilist index 9c884e498d..714fb3e30b 100644 --- a/sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libm.abilist +++ b/sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libm.abilist @@ -1040,6 +1040,7 @@ GLIBC_2.41 asinpif32 F GLIBC_2.41 asinpif32x F GLIBC_2.41 asinpif64 F GLIBC_2.41 asinpil F +GLIBC_2.41 atan2f F GLIBC_2.41 atan2pi F GLIBC_2.41 atan2pif F GLIBC_2.41 atan2pif32 F diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libm.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libm.abilist index 9eeca55fb9..9d22bfee36 100644 --- a/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libm.abilist +++ b/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libm.abilist @@ -1039,6 +1039,7 @@ GLIBC_2.41 asinpif32 F GLIBC_2.41 asinpif32x F GLIBC_2.41 asinpif64 F GLIBC_2.41 asinpil F +GLIBC_2.41 atan2f F GLIBC_2.41 atan2pi F GLIBC_2.41 atan2pif F GLIBC_2.41 atan2pif32 F diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libm.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libm.abilist index af946fd58f..12ee8f317d 100644 --- a/sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libm.abilist +++ b/sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libm.abilist @@ -1033,6 +1033,7 @@ GLIBC_2.41 asinpif32 F GLIBC_2.41 asinpif32x F GLIBC_2.41 asinpif64 F GLIBC_2.41 asinpil F +GLIBC_2.41 atan2f F GLIBC_2.41 atan2pi F GLIBC_2.41 atan2pif F GLIBC_2.41 atan2pif32 F diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libm.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libm.abilist index 5c627183ab..cbcda8ea59 100644 --- a/sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libm.abilist +++ b/sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libm.abilist @@ -1392,6 +1392,7 @@ GLIBC_2.41 asinpif32x F GLIBC_2.41 asinpif64 F GLIBC_2.41 asinpif64x F GLIBC_2.41 asinpil F +GLIBC_2.41 atan2f F GLIBC_2.41 atan2pi F GLIBC_2.41 atan2pif F GLIBC_2.41 atan2pif128 F diff --git a/sysdeps/unix/sysv/linux/s390/s390-32/libm.abilist b/sysdeps/unix/sysv/linux/s390/s390-32/libm.abilist index aeeec34ec0..66b6d77226 100644 --- a/sysdeps/unix/sysv/linux/s390/s390-32/libm.abilist +++ b/sysdeps/unix/sysv/linux/s390/s390-32/libm.abilist @@ -1311,6 +1311,7 @@ GLIBC_2.41 asinpif32x F GLIBC_2.41 asinpif64 F GLIBC_2.41 asinpif64x F GLIBC_2.41 asinpil F +GLIBC_2.41 atan2f F GLIBC_2.41 atan2pi F GLIBC_2.41 atan2pif F GLIBC_2.41 atan2pif128 F diff --git a/sysdeps/unix/sysv/linux/s390/s390-64/libm.abilist b/sysdeps/unix/sysv/linux/s390/s390-64/libm.abilist index b5d003b15b..e93f6dd720 100644 --- a/sysdeps/unix/sysv/linux/s390/s390-64/libm.abilist +++ b/sysdeps/unix/sysv/linux/s390/s390-64/libm.abilist @@ -1311,6 +1311,7 @@ GLIBC_2.41 asinpif32x F GLIBC_2.41 asinpif64 F GLIBC_2.41 asinpif64x F GLIBC_2.41 asinpil F +GLIBC_2.41 atan2f F GLIBC_2.41 atan2pi F GLIBC_2.41 atan2pif F GLIBC_2.41 atan2pif128 F diff --git a/sysdeps/unix/sysv/linux/sh/be/libm.abilist b/sysdeps/unix/sysv/linux/sh/be/libm.abilist index 6513301bd5..df3534dd3c 100644 --- a/sysdeps/unix/sysv/linux/sh/be/libm.abilist +++ b/sysdeps/unix/sysv/linux/sh/be/libm.abilist @@ -893,6 +893,7 @@ GLIBC_2.41 asinpif32 F GLIBC_2.41 asinpif32x F GLIBC_2.41 asinpif64 F GLIBC_2.41 asinpil F +GLIBC_2.41 atan2f F GLIBC_2.41 atan2pi F GLIBC_2.41 atan2pif F GLIBC_2.41 atan2pif32 F diff --git a/sysdeps/unix/sysv/linux/sh/le/libm.abilist b/sysdeps/unix/sysv/linux/sh/le/libm.abilist index 6513301bd5..df3534dd3c 100644 --- a/sysdeps/unix/sysv/linux/sh/le/libm.abilist +++ b/sysdeps/unix/sysv/linux/sh/le/libm.abilist @@ -893,6 +893,7 @@ GLIBC_2.41 asinpif32 F GLIBC_2.41 asinpif32x F GLIBC_2.41 asinpif64 F GLIBC_2.41 asinpil F +GLIBC_2.41 atan2f F GLIBC_2.41 atan2pi F GLIBC_2.41 atan2pif F GLIBC_2.41 atan2pif32 F diff --git a/sysdeps/unix/sysv/linux/sparc/sparc32/libm.abilist b/sysdeps/unix/sysv/linux/sparc/sparc32/libm.abilist index c92cc3da68..ebed5cb2a1 100644 --- a/sysdeps/unix/sysv/linux/sparc/sparc32/libm.abilist +++ b/sysdeps/unix/sysv/linux/sparc/sparc32/libm.abilist @@ -1318,6 +1318,7 @@ GLIBC_2.41 asinpif32x F GLIBC_2.41 asinpif64 F GLIBC_2.41 asinpif64x F GLIBC_2.41 asinpil F +GLIBC_2.41 atan2f F GLIBC_2.41 atan2pi F GLIBC_2.41 atan2pif F GLIBC_2.41 atan2pif128 F diff --git a/sysdeps/unix/sysv/linux/sparc/sparc64/libm.abilist b/sysdeps/unix/sysv/linux/sparc/sparc64/libm.abilist index 8168a21547..4d35d566c3 100644 --- a/sysdeps/unix/sysv/linux/sparc/sparc64/libm.abilist +++ b/sysdeps/unix/sysv/linux/sparc/sparc64/libm.abilist @@ -1208,6 +1208,7 @@ GLIBC_2.41 asinpif32x F GLIBC_2.41 asinpif64 F GLIBC_2.41 asinpif64x F GLIBC_2.41 asinpil F +GLIBC_2.41 atan2f F GLIBC_2.41 atan2pi F GLIBC_2.41 atan2pif F GLIBC_2.41 atan2pif128 F diff --git a/sysdeps/unix/sysv/linux/x86_64/64/libm.abilist b/sysdeps/unix/sysv/linux/x86_64/64/libm.abilist index 33d82c98fb..e3c4f35dd1 100644 --- a/sysdeps/unix/sysv/linux/x86_64/64/libm.abilist +++ b/sysdeps/unix/sysv/linux/x86_64/64/libm.abilist @@ -1241,6 +1241,7 @@ GLIBC_2.41 asinpif32x F GLIBC_2.41 asinpif64 F GLIBC_2.41 asinpif64x F GLIBC_2.41 asinpil F +GLIBC_2.41 atan2f F GLIBC_2.41 atan2pi F GLIBC_2.41 atan2pif F GLIBC_2.41 atan2pif128 F diff --git a/sysdeps/unix/sysv/linux/x86_64/x32/libm.abilist b/sysdeps/unix/sysv/linux/x86_64/x32/libm.abilist index 2bd47844a9..46fca15315 100644 --- a/sysdeps/unix/sysv/linux/x86_64/x32/libm.abilist +++ b/sysdeps/unix/sysv/linux/x86_64/x32/libm.abilist @@ -1241,6 +1241,7 @@ GLIBC_2.41 asinpif32x F GLIBC_2.41 asinpif64 F GLIBC_2.41 asinpif64x F GLIBC_2.41 asinpil F +GLIBC_2.41 atan2f F GLIBC_2.41 atan2pi F GLIBC_2.41 atan2pif F GLIBC_2.41 atan2pif128 F From patchwork Thu Dec 19 20:13:12 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Adhemerval Zanella X-Patchwork-Id: 852052 Delivered-To: patch@linaro.org Received: by 2002:a5d:4888:0:b0:385:e875:8a9e with SMTP id g8csp1696859wrq; Thu, 19 Dec 2024 12:21:39 -0800 (PST) X-Forwarded-Encrypted: i=3; AJvYcCVe0bwHldYMxNIX/RDWEL5T6myOEFgR1tK49qAjXYGAWuibRFU30AJkdt9zKbEfjlg0UgsS/Q==@linaro.org X-Google-Smtp-Source: AGHT+IFFK7dDqoRNRkxt7UQGS2k94XWDZuafG+70T/BV7mTCZSAQmPXavqHL05clL66jNjkrZbUg X-Received: by 2002:a05:6214:495:b0:6d4:25c4:e77d with SMTP id 6a1803df08f44-6dd2339fe2amr4492606d6.34.1734639699084; Thu, 19 Dec 2024 12:21:39 -0800 (PST) ARC-Seal: i=2; a=rsa-sha256; t=1734639699; cv=pass; d=google.com; s=arc-20240605; b=ivm87Nl0QZWYZ7Bji3RCeJMrI/WTlqPqXAPWb+ImTb7LgQSTzku/g8HCBEG0m3yTea iAJgvr2kdRLnSvC2xVYBR5HD3oPvLssgEOIG7Wzq4Jecx3eysH3Y989wqOhArZgqHarT NbThEkv7Xayc9XSI27kwzpJijBeQjyLzmhboHO3PMk1bsu38XhIKhmgUySpL71XejJXl omDm4PiBdLU2hyjVAQHDEkDFX40La96MFyZdRAD0gsHFQGiafmsvBt5GvBPJI5Intea9 63NvbGMUv2w5bYQA42BpoPFBh/GmzOYFiGQ4S6rA4gTJi2YrlqCdL53t34hqNH5qLI8r Vcgg== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20240605; h=errors-to:list-subscribe:list-help:list-post:list-archive :list-unsubscribe:list-id:precedence:content-transfer-encoding :mime-version:references:in-reply-to:message-id:date:subject:cc:to :from:dkim-signature:arc-filter:dmarc-filter:delivered-to; bh=WsKH29d7Qq6oiVYNR9DeKUPNgO9ISjmozJDxvNLZmqY=; fh=c0s3Uezv7Rag51rMi6q2BcriyJCPC/LMNTAVHmiKG0w=; b=LR8Ktni89MaO0MMfpl4+thYsGPz/K/sI2Dxkpc1Un8IaAnrPTlSyE0lHWtWImqrdw/ Xu1uyQ0Wuga4Aqbrg49pxPwMu2CQ3hYrq3NbvfRT/77ZsjyLf92H3RsfZQOeiFoFU30r wsuZwHL/l+UOze7s6Kn8k0FbZvcCc4CLRkxbmPwU75AIow9fBCaGRkaC5N/1YnJm4A/m ZMa2YL2XGp8m14emD8CXDV5h3l4n5lD0hsLJj5aNPlzynYtznv7idHXeavrf3MIWEty7 2otHxp1qoc2pA4TfsQSh3ufxMP9ZCCUcJVLi0rfJLTnQmJm/cAtmIQVL/dN8rkxdFBKE 0FZw==; dara=google.com ARC-Authentication-Results: i=2; mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=oNhe7lZP; arc=pass (i=1); spf=pass (google.com: domain of libc-alpha-bounces~patch=linaro.org@sourceware.org designates 8.43.85.97 as permitted sender) smtp.mailfrom="libc-alpha-bounces~patch=linaro.org@sourceware.org"; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org Return-Path: Received: from server2.sourceware.org (server2.sourceware.org. [8.43.85.97]) by mx.google.com with ESMTPS id 6a1803df08f44-6dd1824ea3fsi24368946d6.324.2024.12.19.12.21.38 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 19 Dec 2024 12:21:39 -0800 (PST) Received-SPF: pass (google.com: domain of libc-alpha-bounces~patch=linaro.org@sourceware.org designates 8.43.85.97 as permitted sender) client-ip=8.43.85.97; Authentication-Results: mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=oNhe7lZP; arc=pass (i=1); spf=pass (google.com: domain of libc-alpha-bounces~patch=linaro.org@sourceware.org designates 8.43.85.97 as permitted sender) smtp.mailfrom="libc-alpha-bounces~patch=linaro.org@sourceware.org"; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: from server2.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id B15B13858C33 for ; Thu, 19 Dec 2024 20:21:38 +0000 (GMT) X-Original-To: libc-alpha@sourceware.org Delivered-To: libc-alpha@sourceware.org Received: from mail-pl1-x629.google.com (mail-pl1-x629.google.com [IPv6:2607:f8b0:4864:20::629]) by sourceware.org (Postfix) with ESMTPS id 918073858C78 for ; Thu, 19 Dec 2024 20:20:28 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 918073858C78 Authentication-Results: sourceware.org; dmarc=pass (p=none dis=none) header.from=linaro.org Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=linaro.org ARC-Filter: OpenARC Filter v1.0.0 sourceware.org 918073858C78 Authentication-Results: server2.sourceware.org; arc=none smtp.remote-ip=2607:f8b0:4864:20::629 ARC-Seal: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1734639628; cv=none; b=vs2JBYxTkudzh1XQkVmdDYg9fSSg0QOUClo50bexwRQ0u69bncnzvFRxsRf3EbxJWeua25UWtyrEZcuyVvn4FlUrWbOj66yksRA0n5Fcvw4SRxWQ1yLVfitzP23Q2QlfyKz643nWbrlKoxf5vdtR6cfR1cr9M82m+iqMUA/FXdk= ARC-Message-Signature: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1734639628; c=relaxed/simple; bh=7iCYMU+p4NGKcVzQDgjeiby+Z3Ji4JDNYS4wvvCgqEU=; h=DKIM-Signature:From:To:Subject:Date:Message-ID:MIME-Version; b=MxFUkgi2HU+vqHbJrj93D81XIbK0IDcsjBdFIUFrBR9WNSyxum1hZxXA801hcpU6DJp3/41k8PBNTwC0ooiAaw4yFxV5ffBKFJV1thCnpycbQmOKRQUGhfh9XxEzkmSUycbbTyaj4bVwCdq2a+CAkConUWH3/JNZe7pbYDt1FDE= ARC-Authentication-Results: i=1; server2.sourceware.org Received: by mail-pl1-x629.google.com with SMTP id d9443c01a7336-218c80a97caso10689705ad.0 for ; Thu, 19 Dec 2024 12:20:28 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1734639624; x=1735244424; darn=sourceware.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=WsKH29d7Qq6oiVYNR9DeKUPNgO9ISjmozJDxvNLZmqY=; b=oNhe7lZPyJDelNGKQrayoHfI/LkgmFB0PtBRcc2DHRYXtPGRyQGuSzeObE2ccTT9xw ge3YljWAtfszdVYdxUKj07x9kzy8/Mow5dBTmtqkvoZT6wHCP/6MzKDdow6ojhjkb0CI v+W/+iwhxN6bkHKVENwWnhr6X0QxUrzQdLzSHyg6eKf35xtbUVZzx7kFnOpxQLQ0SvMO IQIcwKfYo1sPQEscnecEQ9Nx0Cyep1wQwv8EVfsodvTB7Qdg45pWWaqPrK51SSYvT/6l Maut9iWpJktMs5INCWx/7Gd8FmHNtO79zR3zI0xeITR/uMRLtsNpGsmYBRKvssXsg8aG kQag== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1734639624; x=1735244424; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=WsKH29d7Qq6oiVYNR9DeKUPNgO9ISjmozJDxvNLZmqY=; b=FhS23pS3gFrcI4x91OD5PIW7Qo5cq2mXMI+D1Gj6ihVVemISeTpVDIUE2Fa8Uo5cj+ QqavHJ0SXPDrbcYPm0iSKMiNiQNJwktSnDAOt8ZF7ppLgZeAhxektLgR8tf45w1LjrqC /X177u/ZpEs0gzlzYY3zbx0YawkpuCkU+x+m9b+o79AOKu6PiZopMhLiTgEFXWNayLIM yGUj1ZpqlqZgS4DfibVT8Z0ylPYKr3aKfqMiqmtz5rDYSB/V9t42wRuVJ/VfSs6N8M18 Sq0sJka0PWy/HSGWwgHOaT41ELC0XdnS6fY60WM4LFpZDIZl1K+28zzsO+deOfx09a0/ YZyQ== X-Gm-Message-State: AOJu0YwQHl38T1ISmJEU7TxVh585wDGBYpl2042Dddx2oE5LCUGsWaUR KuAfxbR6fUSVSi8uzEbZK4Ru+1xX5jpa5/RJzAQXKK3uTu5NM+Sww2cnncoLzJ/XVo9iM+tqSbd s X-Gm-Gg: ASbGncunT9g4dHzzJ2OTDSce1C2V7oAMRS8ZbuUQLeggbqR1EHYEct0ZeCzp0GysyVB E++xXO6ZF8Rjepn1N6c1dpmORvERGrXnr2knPiiYYNC8+tDJZTR5aXO9ZmY80L35tI3TAC83jrc uvSFHwlQkR1IqqmvR/Nd3sENA6Ha5m7bGQDe+EU+8eulbh/1vFBokWazTH12R+PVojX/1DGicl+ 0OLuh6hbOD9qAPgY80lDXV1Zo8C67Jw61VWzvU+NL7OQCRueQheJndqioNEGYHs9aQDLw== X-Received: by 2002:a17:902:d4c1:b0:20c:9821:69af with SMTP id d9443c01a7336-218d7252658mr94030705ad.45.1734639623555; Thu, 19 Dec 2024 12:20:23 -0800 (PST) Received: from mandiga.. ([2804:1b3:a7c3:2d5b:c4ce:4df0:8543:f129]) by smtp.gmail.com with ESMTPSA id d9443c01a7336-219dca02589sm16360645ad.257.2024.12.19.12.20.22 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 19 Dec 2024 12:20:23 -0800 (PST) From: Adhemerval Zanella To: libc-alpha@sourceware.org Cc: DJ Delorie , Joseph Myers , Paul Zimmermann Subject: [PATCH 08/10] math: Remove the error handling wrapper from atanhf Date: Thu, 19 Dec 2024 17:13:12 -0300 Message-ID: <20241219202003.2651277-9-adhemerval.zanella@linaro.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20241219202003.2651277-1-adhemerval.zanella@linaro.org> References: <20241219202003.2651277-1-adhemerval.zanella@linaro.org> MIME-Version: 1.0 X-BeenThere: libc-alpha@sourceware.org X-Mailman-Version: 2.1.30 Precedence: list List-Id: Libc-alpha mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: libc-alpha-bounces~patch=linaro.org@sourceware.org It improves latency for about 1-10% and throughput for about 5-10%. --- math/Versions | 1 + math/w_atanhf.c | 8 ++++++++ math/w_atanhf_compat.c | 11 ++++++++--- sysdeps/ieee754/flt-32/e_atanhf.c | 11 ++++++++++- sysdeps/ieee754/flt-32/w_atanhf.c | 1 + sysdeps/m68k/m680x0/fpu/w_atanhf_compat.c | 8 ++++++++ sysdeps/mach/hurd/i386/libm.abilist | 1 + sysdeps/unix/sysv/linux/aarch64/libm.abilist | 1 + sysdeps/unix/sysv/linux/alpha/libm.abilist | 1 + sysdeps/unix/sysv/linux/arm/be/libm.abilist | 1 + sysdeps/unix/sysv/linux/arm/le/libm.abilist | 1 + sysdeps/unix/sysv/linux/hppa/libm.abilist | 1 + sysdeps/unix/sysv/linux/i386/libm.abilist | 1 + sysdeps/unix/sysv/linux/m68k/coldfire/libm.abilist | 1 + sysdeps/unix/sysv/linux/microblaze/be/libm.abilist | 1 + sysdeps/unix/sysv/linux/microblaze/le/libm.abilist | 1 + sysdeps/unix/sysv/linux/mips/mips32/libm.abilist | 1 + sysdeps/unix/sysv/linux/mips/mips64/libm.abilist | 1 + .../sysv/linux/powerpc/powerpc32/fpu/libm.abilist | 1 + .../sysv/linux/powerpc/powerpc32/nofpu/libm.abilist | 1 + .../unix/sysv/linux/powerpc/powerpc64/be/libm.abilist | 1 + .../unix/sysv/linux/powerpc/powerpc64/le/libm.abilist | 1 + sysdeps/unix/sysv/linux/s390/s390-32/libm.abilist | 1 + sysdeps/unix/sysv/linux/s390/s390-64/libm.abilist | 1 + sysdeps/unix/sysv/linux/sh/be/libm.abilist | 1 + sysdeps/unix/sysv/linux/sh/le/libm.abilist | 1 + sysdeps/unix/sysv/linux/sparc/sparc32/libm.abilist | 1 + sysdeps/unix/sysv/linux/sparc/sparc64/libm.abilist | 1 + sysdeps/unix/sysv/linux/x86_64/64/libm.abilist | 1 + sysdeps/unix/sysv/linux/x86_64/x32/libm.abilist | 1 + 30 files changed, 60 insertions(+), 4 deletions(-) create mode 100644 math/w_atanhf.c create mode 100644 sysdeps/ieee754/flt-32/w_atanhf.c create mode 100644 sysdeps/m68k/m680x0/fpu/w_atanhf_compat.c diff --git a/math/Versions b/math/Versions index 2a3d98ed55..eec40df280 100644 --- a/math/Versions +++ b/math/Versions @@ -677,5 +677,6 @@ libm { asinf; acoshf; atan2f; + atanhf; } } diff --git a/math/w_atanhf.c b/math/w_atanhf.c new file mode 100644 index 0000000000..41842a2405 --- /dev/null +++ b/math/w_atanhf.c @@ -0,0 +1,8 @@ +#include +#undef __USE_WRAPPER_TEMPLATE +#define __USE_WRAPPER_TEMPLATE 1 +#undef declare_mgen_alias +#define declare_mgen_alias(a, b) +#include +versioned_symbol (libm, __atanhf, atanhf, GLIBC_2_41); +libm_alias_float_other (__atanhf, atanhf) diff --git a/math/w_atanhf_compat.c b/math/w_atanhf_compat.c index 2f076e2c9c..7b69b5834b 100644 --- a/math/w_atanhf_compat.c +++ b/math/w_atanhf_compat.c @@ -21,10 +21,10 @@ #include -#if LIBM_SVID_COMPAT +#if LIBM_SVID_COMPAT && SHLIB_COMPAT (libm, GLIBC_2_0, GLIBC_2_41) /* wrapper atanhf */ float -__atanhf (float x) +__atanh_compatf (float x) { if (__builtin_expect (isgreaterequal (fabsf (x), 1.0f), 0) && _LIB_VERSION != _IEEE_) @@ -35,5 +35,10 @@ __atanhf (float x) return __ieee754_atanhf (x); } -libm_alias_float (__atanh, atanh) +# ifdef NO_COMPAT_NEEDED +strong_alias (__atanh_compatf, __atanhf) +libm_alias_float (__atanh_compat, atanh) +# else +compat_symbol (libm, __atanh_compatf, atanhf, GLIBC_2_0); +# endif #endif diff --git a/sysdeps/ieee754/flt-32/e_atanhf.c b/sysdeps/ieee754/flt-32/e_atanhf.c index 5138408324..ce8b5d468d 100644 --- a/sysdeps/ieee754/flt-32/e_atanhf.c +++ b/sysdeps/ieee754/flt-32/e_atanhf.c @@ -27,6 +27,8 @@ SOFTWARE. #include #include #include +#include +#include #include "math_config.h" static __attribute__((noinline)) float @@ -42,7 +44,7 @@ as_special (float x) } float -__ieee754_atanhf (float x) +__atanhf (float x) { /* Calculate atanh(x) using the difference of two logarithms -- atanh(x) = (ln(1+x) - ln(1-x))/2 */ @@ -175,4 +177,11 @@ __ieee754_atanhf (float x) } return ub; } +strong_alias (__atanhf, __ieee754_atanhf) +#if LIBM_SVID_COMPAT +versioned_symbol (libm, __atanhf, atanhf, GLIBC_2_41); +libm_alias_float_other (__atanh, atanh) +#else +libm_alias_float (__atanh, atanh) +#endif libm_alias_finite (__ieee754_atanhf, __atanhf) diff --git a/sysdeps/ieee754/flt-32/w_atanhf.c b/sysdeps/ieee754/flt-32/w_atanhf.c new file mode 100644 index 0000000000..1cc8931700 --- /dev/null +++ b/sysdeps/ieee754/flt-32/w_atanhf.c @@ -0,0 +1 @@ +/* Not needed. */ diff --git a/sysdeps/m68k/m680x0/fpu/w_atanhf_compat.c b/sysdeps/m68k/m680x0/fpu/w_atanhf_compat.c new file mode 100644 index 0000000000..1ec8434684 --- /dev/null +++ b/sysdeps/m68k/m680x0/fpu/w_atanhf_compat.c @@ -0,0 +1,8 @@ +/* m68k provides an optimized __ieee754_atanhf. */ +#ifdef SHARED +# define NO_COMPAT_NEEDED 1 +# include +#else +# include +# include +#endif diff --git a/sysdeps/mach/hurd/i386/libm.abilist b/sysdeps/mach/hurd/i386/libm.abilist index 3db9b3adfa..8a677586a4 100644 --- a/sysdeps/mach/hurd/i386/libm.abilist +++ b/sysdeps/mach/hurd/i386/libm.abilist @@ -1249,6 +1249,7 @@ GLIBC_2.41 atan2pif32x F GLIBC_2.41 atan2pif64 F GLIBC_2.41 atan2pif64x F GLIBC_2.41 atan2pil F +GLIBC_2.41 atanhf F GLIBC_2.41 atanpi F GLIBC_2.41 atanpif F GLIBC_2.41 atanpif128 F diff --git a/sysdeps/unix/sysv/linux/aarch64/libm.abilist b/sysdeps/unix/sysv/linux/aarch64/libm.abilist index 2a35531ea3..a24d8d7cc0 100644 --- a/sysdeps/unix/sysv/linux/aarch64/libm.abilist +++ b/sysdeps/unix/sysv/linux/aarch64/libm.abilist @@ -1217,6 +1217,7 @@ GLIBC_2.41 atan2pif32x F GLIBC_2.41 atan2pif64 F GLIBC_2.41 atan2pif64x F GLIBC_2.41 atan2pil F +GLIBC_2.41 atanhf F GLIBC_2.41 atanpi F GLIBC_2.41 atanpif F GLIBC_2.41 atanpif128 F diff --git a/sysdeps/unix/sysv/linux/alpha/libm.abilist b/sysdeps/unix/sysv/linux/alpha/libm.abilist index cbfe056a3c..75e23816fb 100644 --- a/sysdeps/unix/sysv/linux/alpha/libm.abilist +++ b/sysdeps/unix/sysv/linux/alpha/libm.abilist @@ -1376,6 +1376,7 @@ GLIBC_2.41 atan2pif32x F GLIBC_2.41 atan2pif64 F GLIBC_2.41 atan2pif64x F GLIBC_2.41 atan2pil F +GLIBC_2.41 atanhf F GLIBC_2.41 atanpi F GLIBC_2.41 atanpif F GLIBC_2.41 atanpif128 F diff --git a/sysdeps/unix/sysv/linux/arm/be/libm.abilist b/sysdeps/unix/sysv/linux/arm/be/libm.abilist index e0b25bc3e0..a17def2e99 100644 --- a/sysdeps/unix/sysv/linux/arm/be/libm.abilist +++ b/sysdeps/unix/sysv/linux/arm/be/libm.abilist @@ -900,6 +900,7 @@ GLIBC_2.41 atan2pif32 F GLIBC_2.41 atan2pif32x F GLIBC_2.41 atan2pif64 F GLIBC_2.41 atan2pil F +GLIBC_2.41 atanhf F GLIBC_2.41 atanpi F GLIBC_2.41 atanpif F GLIBC_2.41 atanpif32 F diff --git a/sysdeps/unix/sysv/linux/arm/le/libm.abilist b/sysdeps/unix/sysv/linux/arm/le/libm.abilist index e0b25bc3e0..a17def2e99 100644 --- a/sysdeps/unix/sysv/linux/arm/le/libm.abilist +++ b/sysdeps/unix/sysv/linux/arm/le/libm.abilist @@ -900,6 +900,7 @@ GLIBC_2.41 atan2pif32 F GLIBC_2.41 atan2pif32x F GLIBC_2.41 atan2pif64 F GLIBC_2.41 atan2pil F +GLIBC_2.41 atanhf F GLIBC_2.41 atanpi F GLIBC_2.41 atanpif F GLIBC_2.41 atanpif32 F diff --git a/sysdeps/unix/sysv/linux/hppa/libm.abilist b/sysdeps/unix/sysv/linux/hppa/libm.abilist index 1424f5750d..3a1a59941b 100644 --- a/sysdeps/unix/sysv/linux/hppa/libm.abilist +++ b/sysdeps/unix/sysv/linux/hppa/libm.abilist @@ -900,6 +900,7 @@ GLIBC_2.41 atan2pif32 F GLIBC_2.41 atan2pif32x F GLIBC_2.41 atan2pif64 F GLIBC_2.41 atan2pil F +GLIBC_2.41 atanhf F GLIBC_2.41 atanpi F GLIBC_2.41 atanpif F GLIBC_2.41 atanpif32 F diff --git a/sysdeps/unix/sysv/linux/i386/libm.abilist b/sysdeps/unix/sysv/linux/i386/libm.abilist index a8a721d67f..258ac73394 100644 --- a/sysdeps/unix/sysv/linux/i386/libm.abilist +++ b/sysdeps/unix/sysv/linux/i386/libm.abilist @@ -1256,6 +1256,7 @@ GLIBC_2.41 atan2pif32x F GLIBC_2.41 atan2pif64 F GLIBC_2.41 atan2pif64x F GLIBC_2.41 atan2pil F +GLIBC_2.41 atanhf F GLIBC_2.41 atanpi F GLIBC_2.41 atanpif F GLIBC_2.41 atanpif128 F diff --git a/sysdeps/unix/sysv/linux/m68k/coldfire/libm.abilist b/sysdeps/unix/sysv/linux/m68k/coldfire/libm.abilist index e0b25bc3e0..a17def2e99 100644 --- a/sysdeps/unix/sysv/linux/m68k/coldfire/libm.abilist +++ b/sysdeps/unix/sysv/linux/m68k/coldfire/libm.abilist @@ -900,6 +900,7 @@ GLIBC_2.41 atan2pif32 F GLIBC_2.41 atan2pif32x F GLIBC_2.41 atan2pif64 F GLIBC_2.41 atan2pil F +GLIBC_2.41 atanhf F GLIBC_2.41 atanpi F GLIBC_2.41 atanpif F GLIBC_2.41 atanpif32 F diff --git a/sysdeps/unix/sysv/linux/microblaze/be/libm.abilist b/sysdeps/unix/sysv/linux/microblaze/be/libm.abilist index 542f70b72b..25c8973206 100644 --- a/sysdeps/unix/sysv/linux/microblaze/be/libm.abilist +++ b/sysdeps/unix/sysv/linux/microblaze/be/libm.abilist @@ -900,6 +900,7 @@ GLIBC_2.41 atan2pif32 F GLIBC_2.41 atan2pif32x F GLIBC_2.41 atan2pif64 F GLIBC_2.41 atan2pil F +GLIBC_2.41 atanhf F GLIBC_2.41 atanpi F GLIBC_2.41 atanpif F GLIBC_2.41 atanpif32 F diff --git a/sysdeps/unix/sysv/linux/microblaze/le/libm.abilist b/sysdeps/unix/sysv/linux/microblaze/le/libm.abilist index 542f70b72b..25c8973206 100644 --- a/sysdeps/unix/sysv/linux/microblaze/le/libm.abilist +++ b/sysdeps/unix/sysv/linux/microblaze/le/libm.abilist @@ -900,6 +900,7 @@ GLIBC_2.41 atan2pif32 F GLIBC_2.41 atan2pif32x F GLIBC_2.41 atan2pif64 F GLIBC_2.41 atan2pil F +GLIBC_2.41 atanhf F GLIBC_2.41 atanpi F GLIBC_2.41 atanpif F GLIBC_2.41 atanpif32 F diff --git a/sysdeps/unix/sysv/linux/mips/mips32/libm.abilist b/sysdeps/unix/sysv/linux/mips/mips32/libm.abilist index db67a1e9b3..17e652a194 100644 --- a/sysdeps/unix/sysv/linux/mips/mips32/libm.abilist +++ b/sysdeps/unix/sysv/linux/mips/mips32/libm.abilist @@ -900,6 +900,7 @@ GLIBC_2.41 atan2pif32 F GLIBC_2.41 atan2pif32x F GLIBC_2.41 atan2pif64 F GLIBC_2.41 atan2pil F +GLIBC_2.41 atanhf F GLIBC_2.41 atanpi F GLIBC_2.41 atanpif F GLIBC_2.41 atanpif32 F diff --git a/sysdeps/unix/sysv/linux/mips/mips64/libm.abilist b/sysdeps/unix/sysv/linux/mips/mips64/libm.abilist index 8c9766fdab..96fd6402a1 100644 --- a/sysdeps/unix/sysv/linux/mips/mips64/libm.abilist +++ b/sysdeps/unix/sysv/linux/mips/mips64/libm.abilist @@ -1217,6 +1217,7 @@ GLIBC_2.41 atan2pif32x F GLIBC_2.41 atan2pif64 F GLIBC_2.41 atan2pif64x F GLIBC_2.41 atan2pil F +GLIBC_2.41 atanhf F GLIBC_2.41 atanpi F GLIBC_2.41 atanpif F GLIBC_2.41 atanpif128 F diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libm.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libm.abilist index 714fb3e30b..67a2149329 100644 --- a/sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libm.abilist +++ b/sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libm.abilist @@ -1047,6 +1047,7 @@ GLIBC_2.41 atan2pif32 F GLIBC_2.41 atan2pif32x F GLIBC_2.41 atan2pif64 F GLIBC_2.41 atan2pil F +GLIBC_2.41 atanhf F GLIBC_2.41 atanpi F GLIBC_2.41 atanpif F GLIBC_2.41 atanpif32 F diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libm.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libm.abilist index 9d22bfee36..7e208298a8 100644 --- a/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libm.abilist +++ b/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libm.abilist @@ -1046,6 +1046,7 @@ GLIBC_2.41 atan2pif32 F GLIBC_2.41 atan2pif32x F GLIBC_2.41 atan2pif64 F GLIBC_2.41 atan2pil F +GLIBC_2.41 atanhf F GLIBC_2.41 atanpi F GLIBC_2.41 atanpif F GLIBC_2.41 atanpif32 F diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libm.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libm.abilist index 12ee8f317d..e2398bbaf2 100644 --- a/sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libm.abilist +++ b/sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libm.abilist @@ -1040,6 +1040,7 @@ GLIBC_2.41 atan2pif32 F GLIBC_2.41 atan2pif32x F GLIBC_2.41 atan2pif64 F GLIBC_2.41 atan2pil F +GLIBC_2.41 atanhf F GLIBC_2.41 atanpi F GLIBC_2.41 atanpif F GLIBC_2.41 atanpif32 F diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libm.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libm.abilist index cbcda8ea59..f79497406e 100644 --- a/sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libm.abilist +++ b/sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libm.abilist @@ -1401,6 +1401,7 @@ GLIBC_2.41 atan2pif32x F GLIBC_2.41 atan2pif64 F GLIBC_2.41 atan2pif64x F GLIBC_2.41 atan2pil F +GLIBC_2.41 atanhf F GLIBC_2.41 atanpi F GLIBC_2.41 atanpif F GLIBC_2.41 atanpif128 F diff --git a/sysdeps/unix/sysv/linux/s390/s390-32/libm.abilist b/sysdeps/unix/sysv/linux/s390/s390-32/libm.abilist index 66b6d77226..cd0a0aaf74 100644 --- a/sysdeps/unix/sysv/linux/s390/s390-32/libm.abilist +++ b/sysdeps/unix/sysv/linux/s390/s390-32/libm.abilist @@ -1320,6 +1320,7 @@ GLIBC_2.41 atan2pif32x F GLIBC_2.41 atan2pif64 F GLIBC_2.41 atan2pif64x F GLIBC_2.41 atan2pil F +GLIBC_2.41 atanhf F GLIBC_2.41 atanpi F GLIBC_2.41 atanpif F GLIBC_2.41 atanpif128 F diff --git a/sysdeps/unix/sysv/linux/s390/s390-64/libm.abilist b/sysdeps/unix/sysv/linux/s390/s390-64/libm.abilist index e93f6dd720..c942a3feb3 100644 --- a/sysdeps/unix/sysv/linux/s390/s390-64/libm.abilist +++ b/sysdeps/unix/sysv/linux/s390/s390-64/libm.abilist @@ -1320,6 +1320,7 @@ GLIBC_2.41 atan2pif32x F GLIBC_2.41 atan2pif64 F GLIBC_2.41 atan2pif64x F GLIBC_2.41 atan2pil F +GLIBC_2.41 atanhf F GLIBC_2.41 atanpi F GLIBC_2.41 atanpif F GLIBC_2.41 atanpif128 F diff --git a/sysdeps/unix/sysv/linux/sh/be/libm.abilist b/sysdeps/unix/sysv/linux/sh/be/libm.abilist index df3534dd3c..63df58337b 100644 --- a/sysdeps/unix/sysv/linux/sh/be/libm.abilist +++ b/sysdeps/unix/sysv/linux/sh/be/libm.abilist @@ -900,6 +900,7 @@ GLIBC_2.41 atan2pif32 F GLIBC_2.41 atan2pif32x F GLIBC_2.41 atan2pif64 F GLIBC_2.41 atan2pil F +GLIBC_2.41 atanhf F GLIBC_2.41 atanpi F GLIBC_2.41 atanpif F GLIBC_2.41 atanpif32 F diff --git a/sysdeps/unix/sysv/linux/sh/le/libm.abilist b/sysdeps/unix/sysv/linux/sh/le/libm.abilist index df3534dd3c..63df58337b 100644 --- a/sysdeps/unix/sysv/linux/sh/le/libm.abilist +++ b/sysdeps/unix/sysv/linux/sh/le/libm.abilist @@ -900,6 +900,7 @@ GLIBC_2.41 atan2pif32 F GLIBC_2.41 atan2pif32x F GLIBC_2.41 atan2pif64 F GLIBC_2.41 atan2pil F +GLIBC_2.41 atanhf F GLIBC_2.41 atanpi F GLIBC_2.41 atanpif F GLIBC_2.41 atanpif32 F diff --git a/sysdeps/unix/sysv/linux/sparc/sparc32/libm.abilist b/sysdeps/unix/sysv/linux/sparc/sparc32/libm.abilist index ebed5cb2a1..7c5b14aac8 100644 --- a/sysdeps/unix/sysv/linux/sparc/sparc32/libm.abilist +++ b/sysdeps/unix/sysv/linux/sparc/sparc32/libm.abilist @@ -1327,6 +1327,7 @@ GLIBC_2.41 atan2pif32x F GLIBC_2.41 atan2pif64 F GLIBC_2.41 atan2pif64x F GLIBC_2.41 atan2pil F +GLIBC_2.41 atanhf F GLIBC_2.41 atanpi F GLIBC_2.41 atanpif F GLIBC_2.41 atanpif128 F diff --git a/sysdeps/unix/sysv/linux/sparc/sparc64/libm.abilist b/sysdeps/unix/sysv/linux/sparc/sparc64/libm.abilist index 4d35d566c3..ea6cb72a4f 100644 --- a/sysdeps/unix/sysv/linux/sparc/sparc64/libm.abilist +++ b/sysdeps/unix/sysv/linux/sparc/sparc64/libm.abilist @@ -1217,6 +1217,7 @@ GLIBC_2.41 atan2pif32x F GLIBC_2.41 atan2pif64 F GLIBC_2.41 atan2pif64x F GLIBC_2.41 atan2pil F +GLIBC_2.41 atanhf F GLIBC_2.41 atanpi F GLIBC_2.41 atanpif F GLIBC_2.41 atanpif128 F diff --git a/sysdeps/unix/sysv/linux/x86_64/64/libm.abilist b/sysdeps/unix/sysv/linux/x86_64/64/libm.abilist index e3c4f35dd1..afba1055e8 100644 --- a/sysdeps/unix/sysv/linux/x86_64/64/libm.abilist +++ b/sysdeps/unix/sysv/linux/x86_64/64/libm.abilist @@ -1250,6 +1250,7 @@ GLIBC_2.41 atan2pif32x F GLIBC_2.41 atan2pif64 F GLIBC_2.41 atan2pif64x F GLIBC_2.41 atan2pil F +GLIBC_2.41 atanhf F GLIBC_2.41 atanpi F GLIBC_2.41 atanpif F GLIBC_2.41 atanpif128 F diff --git a/sysdeps/unix/sysv/linux/x86_64/x32/libm.abilist b/sysdeps/unix/sysv/linux/x86_64/x32/libm.abilist index 46fca15315..5164a53b43 100644 --- a/sysdeps/unix/sysv/linux/x86_64/x32/libm.abilist +++ b/sysdeps/unix/sysv/linux/x86_64/x32/libm.abilist @@ -1250,6 +1250,7 @@ GLIBC_2.41 atan2pif32x F GLIBC_2.41 atan2pif64 F GLIBC_2.41 atan2pif64x F GLIBC_2.41 atan2pil F +GLIBC_2.41 atanhf F GLIBC_2.41 atanpi F GLIBC_2.41 atanpif F GLIBC_2.41 atanpif128 F From patchwork Thu Dec 19 20:13:13 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Adhemerval Zanella X-Patchwork-Id: 852057 Delivered-To: patch@linaro.org Received: by 2002:a5d:4888:0:b0:385:e875:8a9e with SMTP id g8csp1697986wrq; Thu, 19 Dec 2024 12:24:59 -0800 (PST) X-Forwarded-Encrypted: i=3; AJvYcCXAT2Zz6UwOk/At4JUXvTqtWG3ZOSMIgntnxJCmds7IX80Z36f+MU2Fmz/EIJuHD5PYAV9mLA==@linaro.org X-Google-Smtp-Source: AGHT+IEoWM2yKsqpM1Wz6l4G02jCikzuiYMw3WZFToITX97FlnHtKdLx2TxYLqdI9BnajfVvMste X-Received: by 2002:a05:6102:548d:b0:4b1:1b67:6a5c with SMTP id ada2fe7eead31-4b2cc44935emr709266137.18.1734639899568; Thu, 19 Dec 2024 12:24:59 -0800 (PST) ARC-Seal: i=2; a=rsa-sha256; t=1734639899; cv=pass; d=google.com; s=arc-20240605; b=RhsyUxxXYwWwsxpgWqilkmYAwGrLueYkNJGy1rLRuEYYl7yP9aOOlU/imAVlh4aY9V 9zIx3UISJTMl5ikfahMABFv+eKpsgbqn/ST/cv8oklxB5uVTZ6ZNpm7gJlGuDgFIZTjf 75e72tkivo3hbaP1Yx3inGSpQ81voV2WVQQ0R1/saAFRlur8z6TGHjmJO7suQSPZvWiJ fU5NR9UTw/U9EhJIQAk7QHj8adPVM3NaODSnuVDC+SPFEAVwMqPr3G+9WND1FdSHVyJ3 9uh7pcTJCuPWyoVXpmkowdP9bFjty9iOb/3qvqy6ChlXRIPtOvVUwJFavTiQjMAg31Eg nftA== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20240605; h=errors-to:list-subscribe:list-help:list-post:list-archive :list-unsubscribe:list-id:precedence:content-transfer-encoding :mime-version:references:in-reply-to:message-id:date:subject:cc:to :from:dkim-signature:dkim-filter:arc-filter:dmarc-filter :delivered-to:dkim-filter; bh=Dyp9kriqFoz9+S5xNkCyh4poqjkDI1PJvSYFiJBKH04=; fh=c0s3Uezv7Rag51rMi6q2BcriyJCPC/LMNTAVHmiKG0w=; b=FCNAa+lsJJ+6qMPxHYbxBPaduI4fyfUGcFNEUJLw/12AiSI7W+kBLYcz60+o4HohMO hPHc8MIBq/Ogs9JrFCD7sMA6R7uaajs+9dm68WOHqjFXkm8Bls5FvDtTnRB4mlaW3KPG 9xoUw4Km8katdAZ4LZkKtE6dRiHlQELJMV9edDyPnUMeSTwUaH04/gr/Kyu1UYBf1AFu vom69r8NZ5p87ZpR5WrZ8mSfaMHadiCFnGihKSqMypANBOWjO1ORVCQOt1neWfXshTti spsmz1wt8hGea6F9/evhiYUxigFZBdaU0dH5H7jILroLOITMT/wVkKubjXBR1ApGiX6V 95Kw==; dara=google.com ARC-Authentication-Results: i=2; mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=Z1RlPwnB; arc=pass (i=1); spf=pass (google.com: domain of libc-alpha-bounces~patch=linaro.org@sourceware.org designates 8.43.85.97 as permitted sender) smtp.mailfrom="libc-alpha-bounces~patch=linaro.org@sourceware.org"; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org Return-Path: Received: from server2.sourceware.org (server2.sourceware.org. [8.43.85.97]) by mx.google.com with ESMTPS id ada2fe7eead31-4b2bfb73913si791573137.487.2024.12.19.12.24.59 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 19 Dec 2024 12:24:59 -0800 (PST) Received-SPF: pass (google.com: domain of libc-alpha-bounces~patch=linaro.org@sourceware.org designates 8.43.85.97 as permitted sender) client-ip=8.43.85.97; Authentication-Results: mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=Z1RlPwnB; arc=pass (i=1); spf=pass (google.com: domain of libc-alpha-bounces~patch=linaro.org@sourceware.org designates 8.43.85.97 as permitted sender) smtp.mailfrom="libc-alpha-bounces~patch=linaro.org@sourceware.org"; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: from server2.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id 16E403858C51 for ; Thu, 19 Dec 2024 20:24:59 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 16E403858C51 Authentication-Results: sourceware.org; dkim=pass (2048-bit key, unprotected) header.d=linaro.org header.i=@linaro.org header.a=rsa-sha256 header.s=google header.b=Z1RlPwnB X-Original-To: libc-alpha@sourceware.org Delivered-To: libc-alpha@sourceware.org Received: from mail-pl1-x631.google.com (mail-pl1-x631.google.com [IPv6:2607:f8b0:4864:20::631]) by sourceware.org (Postfix) with ESMTPS id 8BD033858C98 for ; Thu, 19 Dec 2024 20:20:35 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 8BD033858C98 Authentication-Results: sourceware.org; dmarc=pass (p=none dis=none) header.from=linaro.org Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=linaro.org ARC-Filter: OpenARC Filter v1.0.0 sourceware.org 8BD033858C98 Authentication-Results: server2.sourceware.org; arc=none smtp.remote-ip=2607:f8b0:4864:20::631 ARC-Seal: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1734639635; cv=none; b=eJ9iqRrFqKms5tMTz3Ul4qe2K39vZJeHL+zO9pmTXMQdeWq0PEzmGxwT+iUPdHEavzzqwOpn3fRPUDwN5gquJo0t7sMX8AleQijspF53IC1ljVztQHsAVLh+MHvknASIMdBZZd8whgRQ/7XZXqUeHq/7sa2QDmg8dbKZDVTvn9Q= ARC-Message-Signature: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1734639635; c=relaxed/simple; bh=RBPG2vCt1Yh/uE04XJvljHPbOPPNV4ruOemuByhSGa4=; h=DKIM-Signature:From:To:Subject:Date:Message-ID:MIME-Version; b=Voo8NjW+VIWJ+PVuGOZbjAoM8RmTfLHqQWM4rTM5RCecg3Zl/DW7WGFU0qcAq35RrsWs46iP9sCr+r+BJOAueDsapp86QT9xkb7FPE51iXoZNUTnDWXALPcMc/JRavOqvhwBX7lWwPhNSY7Oxx5iMFdq/6pdDPza7MoBqnsZkgg= ARC-Authentication-Results: i=1; server2.sourceware.org DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 8BD033858C98 Received: by mail-pl1-x631.google.com with SMTP id d9443c01a7336-2156e078563so11192535ad.2 for ; Thu, 19 Dec 2024 12:20:35 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1734639626; x=1735244426; darn=sourceware.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=Dyp9kriqFoz9+S5xNkCyh4poqjkDI1PJvSYFiJBKH04=; b=Z1RlPwnBtzxGsnsDu7Uq8NUjqVkVJvWVJlzUDJyexnTauZQDHLPUAsfqfyWmKZi6hF +hIONN3BwgyPJy26/jyyHivUCClFdRSk8VD4UYH3HnGh7GAM0tKmMthvV8Lf2ZongHnT vEymMtQKxTGQwg3rV8RnFoAI3dVgRH5rhhwwcbEoVzRvSv7mihokFC+mYgHlxDb383eb 7UpQqdhlYUUK3beUx+nnv4JEKyTV3t3XBdyYKev9DClQpMyJ3vJxXH3M6vumLzXN7hJ6 EgcX7ozH6wJmUytwZdIt1IVkC1YpE4BiJqd/vuJ+65BdewG+0nBCkpLXx7/BAqSQuR8T 7j+A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1734639626; x=1735244426; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=Dyp9kriqFoz9+S5xNkCyh4poqjkDI1PJvSYFiJBKH04=; b=Wc6XOcFspFeQ16V1akvpd8Rxi993tnFkVD0a1xc7M4nX3bMSNg+qjv7qNfemrWoTm8 Q/YFzwy5lqhz0hh5pse2Pkoz11u9KTa6kop89VuYWm2IVrue67Qp5AnviPvesO0wqANk bWzh3XfjWJOvS0O5R+vXIyJrPqgVWk2mbrZLgVcahUe+uA+r9sN7q2VOlO/Ui2e84z1l xhh4WVn2jTP8BbyzevGkhsDjs0MGYO/z+hNMQ1dmj4HnKSPhc8qIbQX1rLkrGLgpYINF Y8y0SW4ivtWr7oJQS/RafFkssJVp4DuH1DA9DkC/5u9F3RD32Dgx8boVY+M9jNbgrOH7 oD2Q== X-Gm-Message-State: AOJu0Yxgn0PNloN2Ij4uSnYj4KGjTcNvuHej+/9qbOoa1iUddLqQcK3G t6PRJTGT7xoABYo+8m1El9v10kgX2WLk6NjmPiwlegbAopKQZ9fePEnZ33KcRVNws8N4U0PsazZ m X-Gm-Gg: ASbGncsT7/LBx+anj3YD5COTTW2mjLDKPiyBoCTQznCWQeN5S59jTcVXzZb6BZvAhpl QXsxRDipopO0mQatDbYw1r3UDP5DdKtuIBUti6gTMTbn/qjHK3q+EvlIS5LOcKpF1qHC8KmyN+e HRjHFMxaQVhAESU7ZGvEk+9Z1+nDfh6XybZnwlpA8DL7+QZnW225OnJwjf9mK3usqJIgxqQeSFm LuiaBcUc1SmbylA58GZtSIXpCsZ5GuOHl6rG/oqAqBpy9QMZ9IdG5wqrYE2Bvyt3o4r+w== X-Received: by 2002:a17:902:d4c6:b0:211:e812:3948 with SMTP id d9443c01a7336-219e6cc87f4mr1548805ad.0.1734639625450; Thu, 19 Dec 2024 12:20:25 -0800 (PST) Received: from mandiga.. ([2804:1b3:a7c3:2d5b:c4ce:4df0:8543:f129]) by smtp.gmail.com with ESMTPSA id d9443c01a7336-219dca02589sm16360645ad.257.2024.12.19.12.20.23 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 19 Dec 2024 12:20:25 -0800 (PST) From: Adhemerval Zanella To: libc-alpha@sourceware.org Cc: DJ Delorie , Joseph Myers , Paul Zimmermann Subject: [PATCH 09/10] math: Remove the error handling wrapper from coshf Date: Thu, 19 Dec 2024 17:13:13 -0300 Message-ID: <20241219202003.2651277-10-adhemerval.zanella@linaro.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20241219202003.2651277-1-adhemerval.zanella@linaro.org> References: <20241219202003.2651277-1-adhemerval.zanella@linaro.org> MIME-Version: 1.0 X-BeenThere: libc-alpha@sourceware.org X-Mailman-Version: 2.1.30 Precedence: list List-Id: Libc-alpha mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: libc-alpha-bounces~patch=linaro.org@sourceware.org It improves latency for about 3-10% and throughput for about 5-15%. --- math/Versions | 1 + math/w_coshf.c | 8 ++++++++ math/w_coshf_compat.c | 12 +++++++++--- sysdeps/ieee754/flt-32/e_coshf.c | 11 ++++++++++- sysdeps/ieee754/flt-32/w_coshf.c | 1 + sysdeps/m68k/m680x0/fpu/w_coshf_compat.c | 8 ++++++++ sysdeps/mach/hurd/i386/libm.abilist | 1 + sysdeps/unix/sysv/linux/aarch64/libm.abilist | 1 + sysdeps/unix/sysv/linux/alpha/libm.abilist | 1 + sysdeps/unix/sysv/linux/arm/be/libm.abilist | 1 + sysdeps/unix/sysv/linux/arm/le/libm.abilist | 1 + sysdeps/unix/sysv/linux/hppa/libm.abilist | 1 + sysdeps/unix/sysv/linux/i386/libm.abilist | 1 + sysdeps/unix/sysv/linux/m68k/coldfire/libm.abilist | 1 + sysdeps/unix/sysv/linux/microblaze/be/libm.abilist | 1 + sysdeps/unix/sysv/linux/microblaze/le/libm.abilist | 1 + sysdeps/unix/sysv/linux/mips/mips32/libm.abilist | 1 + sysdeps/unix/sysv/linux/mips/mips64/libm.abilist | 1 + .../sysv/linux/powerpc/powerpc32/fpu/libm.abilist | 1 + .../sysv/linux/powerpc/powerpc32/nofpu/libm.abilist | 1 + .../sysv/linux/powerpc/powerpc64/be/libm.abilist | 1 + .../sysv/linux/powerpc/powerpc64/le/libm.abilist | 1 + sysdeps/unix/sysv/linux/s390/s390-32/libm.abilist | 1 + sysdeps/unix/sysv/linux/s390/s390-64/libm.abilist | 1 + sysdeps/unix/sysv/linux/sh/be/libm.abilist | 1 + sysdeps/unix/sysv/linux/sh/le/libm.abilist | 1 + sysdeps/unix/sysv/linux/sparc/sparc32/libm.abilist | 1 + sysdeps/unix/sysv/linux/sparc/sparc64/libm.abilist | 1 + sysdeps/unix/sysv/linux/x86_64/64/libm.abilist | 1 + sysdeps/unix/sysv/linux/x86_64/x32/libm.abilist | 1 + 30 files changed, 61 insertions(+), 4 deletions(-) create mode 100644 math/w_coshf.c create mode 100644 sysdeps/ieee754/flt-32/w_coshf.c create mode 100644 sysdeps/m68k/m680x0/fpu/w_coshf_compat.c diff --git a/math/Versions b/math/Versions index eec40df280..056fc19634 100644 --- a/math/Versions +++ b/math/Versions @@ -678,5 +678,6 @@ libm { acoshf; atan2f; atanhf; + coshf; } } diff --git a/math/w_coshf.c b/math/w_coshf.c new file mode 100644 index 0000000000..1a90c234ff --- /dev/null +++ b/math/w_coshf.c @@ -0,0 +1,8 @@ +#include +#undef __USE_WRAPPER_TEMPLATE +#define __USE_WRAPPER_TEMPLATE 1 +#undef declare_mgen_alias +#define declare_mgen_alias(a, b) +#include +versioned_symbol (libm, __coshf, coshf, GLIBC_2_41); +libm_alias_float_other (__coshf, coshf) diff --git a/math/w_coshf_compat.c b/math/w_coshf_compat.c index ce5e196c07..72f6c1de84 100644 --- a/math/w_coshf_compat.c +++ b/math/w_coshf_compat.c @@ -20,10 +20,11 @@ #include #include #include +#include -#if LIBM_SVID_COMPAT +#if LIBM_SVID_COMPAT && SHLIB_COMPAT (libm, GLIBC_2_0, GLIBC_2_41) float -__coshf (float x) +__cosh_compatf (float x) { float z = __ieee754_coshf (x); if (__builtin_expect (!isfinite (z), 0) && isfinite (x) @@ -32,5 +33,10 @@ __coshf (float x) return z; } -libm_alias_float (__cosh, cosh) +# ifdef NO_COMPAT_NEEDED +strong_alias (__cosh_compatf, __coshf) +libm_alias_float (__cosh_compat, cosh) +# else +compat_symbol (libm, __cosh_compatf, coshf, GLIBC_2_0); +# endif #endif diff --git a/sysdeps/ieee754/flt-32/e_coshf.c b/sysdeps/ieee754/flt-32/e_coshf.c index 602d2b413f..0f8b5b60fe 100644 --- a/sysdeps/ieee754/flt-32/e_coshf.c +++ b/sysdeps/ieee754/flt-32/e_coshf.c @@ -27,10 +27,12 @@ SOFTWARE. #include #include #include +#include +#include #include "math_config.h" float -__ieee754_coshf (float x) +__coshf (float x) { static const double c[] = { @@ -114,4 +116,11 @@ __ieee754_coshf (float x) } return ub; } +strong_alias (__coshf, __ieee754_coshf) +#if LIBM_SVID_COMPAT +versioned_symbol (libm, __coshf, coshf, GLIBC_2_41); +libm_alias_float_other (__cosh, cosh) +#else +libm_alias_float (__cosh, cosh) +#endif libm_alias_finite (__ieee754_coshf, __coshf) diff --git a/sysdeps/ieee754/flt-32/w_coshf.c b/sysdeps/ieee754/flt-32/w_coshf.c new file mode 100644 index 0000000000..1cc8931700 --- /dev/null +++ b/sysdeps/ieee754/flt-32/w_coshf.c @@ -0,0 +1 @@ +/* Not needed. */ diff --git a/sysdeps/m68k/m680x0/fpu/w_coshf_compat.c b/sysdeps/m68k/m680x0/fpu/w_coshf_compat.c new file mode 100644 index 0000000000..14444a9f0c --- /dev/null +++ b/sysdeps/m68k/m680x0/fpu/w_coshf_compat.c @@ -0,0 +1,8 @@ +/* m68k provides an optimized __ieee754_coshhf. */ +#ifdef SHARED +# define NO_COMPAT_NEEDED 1 +# include +#else +# include +# include +#endif diff --git a/sysdeps/mach/hurd/i386/libm.abilist b/sysdeps/mach/hurd/i386/libm.abilist index 8a677586a4..65a28fea55 100644 --- a/sysdeps/mach/hurd/i386/libm.abilist +++ b/sysdeps/mach/hurd/i386/libm.abilist @@ -1258,6 +1258,7 @@ GLIBC_2.41 atanpif32x F GLIBC_2.41 atanpif64 F GLIBC_2.41 atanpif64x F GLIBC_2.41 atanpil F +GLIBC_2.41 coshf F GLIBC_2.41 cospi F GLIBC_2.41 cospif F GLIBC_2.41 cospif128 F diff --git a/sysdeps/unix/sysv/linux/aarch64/libm.abilist b/sysdeps/unix/sysv/linux/aarch64/libm.abilist index a24d8d7cc0..cd233f1f14 100644 --- a/sysdeps/unix/sysv/linux/aarch64/libm.abilist +++ b/sysdeps/unix/sysv/linux/aarch64/libm.abilist @@ -1226,6 +1226,7 @@ GLIBC_2.41 atanpif32x F GLIBC_2.41 atanpif64 F GLIBC_2.41 atanpif64x F GLIBC_2.41 atanpil F +GLIBC_2.41 coshf F GLIBC_2.41 cospi F GLIBC_2.41 cospif F GLIBC_2.41 cospif128 F diff --git a/sysdeps/unix/sysv/linux/alpha/libm.abilist b/sysdeps/unix/sysv/linux/alpha/libm.abilist index 75e23816fb..9447358ece 100644 --- a/sysdeps/unix/sysv/linux/alpha/libm.abilist +++ b/sysdeps/unix/sysv/linux/alpha/libm.abilist @@ -1385,6 +1385,7 @@ GLIBC_2.41 atanpif32x F GLIBC_2.41 atanpif64 F GLIBC_2.41 atanpif64x F GLIBC_2.41 atanpil F +GLIBC_2.41 coshf F GLIBC_2.41 cospi F GLIBC_2.41 cospif F GLIBC_2.41 cospif128 F diff --git a/sysdeps/unix/sysv/linux/arm/be/libm.abilist b/sysdeps/unix/sysv/linux/arm/be/libm.abilist index a17def2e99..31ec45ce5f 100644 --- a/sysdeps/unix/sysv/linux/arm/be/libm.abilist +++ b/sysdeps/unix/sysv/linux/arm/be/libm.abilist @@ -907,6 +907,7 @@ GLIBC_2.41 atanpif32 F GLIBC_2.41 atanpif32x F GLIBC_2.41 atanpif64 F GLIBC_2.41 atanpil F +GLIBC_2.41 coshf F GLIBC_2.41 cospi F GLIBC_2.41 cospif F GLIBC_2.41 cospif32 F diff --git a/sysdeps/unix/sysv/linux/arm/le/libm.abilist b/sysdeps/unix/sysv/linux/arm/le/libm.abilist index a17def2e99..31ec45ce5f 100644 --- a/sysdeps/unix/sysv/linux/arm/le/libm.abilist +++ b/sysdeps/unix/sysv/linux/arm/le/libm.abilist @@ -907,6 +907,7 @@ GLIBC_2.41 atanpif32 F GLIBC_2.41 atanpif32x F GLIBC_2.41 atanpif64 F GLIBC_2.41 atanpil F +GLIBC_2.41 coshf F GLIBC_2.41 cospi F GLIBC_2.41 cospif F GLIBC_2.41 cospif32 F diff --git a/sysdeps/unix/sysv/linux/hppa/libm.abilist b/sysdeps/unix/sysv/linux/hppa/libm.abilist index 3a1a59941b..0c099cf351 100644 --- a/sysdeps/unix/sysv/linux/hppa/libm.abilist +++ b/sysdeps/unix/sysv/linux/hppa/libm.abilist @@ -907,6 +907,7 @@ GLIBC_2.41 atanpif32 F GLIBC_2.41 atanpif32x F GLIBC_2.41 atanpif64 F GLIBC_2.41 atanpil F +GLIBC_2.41 coshf F GLIBC_2.41 cospi F GLIBC_2.41 cospif F GLIBC_2.41 cospif32 F diff --git a/sysdeps/unix/sysv/linux/i386/libm.abilist b/sysdeps/unix/sysv/linux/i386/libm.abilist index 258ac73394..7caa63a837 100644 --- a/sysdeps/unix/sysv/linux/i386/libm.abilist +++ b/sysdeps/unix/sysv/linux/i386/libm.abilist @@ -1265,6 +1265,7 @@ GLIBC_2.41 atanpif32x F GLIBC_2.41 atanpif64 F GLIBC_2.41 atanpif64x F GLIBC_2.41 atanpil F +GLIBC_2.41 coshf F GLIBC_2.41 cospi F GLIBC_2.41 cospif F GLIBC_2.41 cospif128 F diff --git a/sysdeps/unix/sysv/linux/m68k/coldfire/libm.abilist b/sysdeps/unix/sysv/linux/m68k/coldfire/libm.abilist index a17def2e99..31ec45ce5f 100644 --- a/sysdeps/unix/sysv/linux/m68k/coldfire/libm.abilist +++ b/sysdeps/unix/sysv/linux/m68k/coldfire/libm.abilist @@ -907,6 +907,7 @@ GLIBC_2.41 atanpif32 F GLIBC_2.41 atanpif32x F GLIBC_2.41 atanpif64 F GLIBC_2.41 atanpil F +GLIBC_2.41 coshf F GLIBC_2.41 cospi F GLIBC_2.41 cospif F GLIBC_2.41 cospif32 F diff --git a/sysdeps/unix/sysv/linux/microblaze/be/libm.abilist b/sysdeps/unix/sysv/linux/microblaze/be/libm.abilist index 25c8973206..a8992cc5ed 100644 --- a/sysdeps/unix/sysv/linux/microblaze/be/libm.abilist +++ b/sysdeps/unix/sysv/linux/microblaze/be/libm.abilist @@ -907,6 +907,7 @@ GLIBC_2.41 atanpif32 F GLIBC_2.41 atanpif32x F GLIBC_2.41 atanpif64 F GLIBC_2.41 atanpil F +GLIBC_2.41 coshf F GLIBC_2.41 cospi F GLIBC_2.41 cospif F GLIBC_2.41 cospif32 F diff --git a/sysdeps/unix/sysv/linux/microblaze/le/libm.abilist b/sysdeps/unix/sysv/linux/microblaze/le/libm.abilist index 25c8973206..a8992cc5ed 100644 --- a/sysdeps/unix/sysv/linux/microblaze/le/libm.abilist +++ b/sysdeps/unix/sysv/linux/microblaze/le/libm.abilist @@ -907,6 +907,7 @@ GLIBC_2.41 atanpif32 F GLIBC_2.41 atanpif32x F GLIBC_2.41 atanpif64 F GLIBC_2.41 atanpil F +GLIBC_2.41 coshf F GLIBC_2.41 cospi F GLIBC_2.41 cospif F GLIBC_2.41 cospif32 F diff --git a/sysdeps/unix/sysv/linux/mips/mips32/libm.abilist b/sysdeps/unix/sysv/linux/mips/mips32/libm.abilist index 17e652a194..087faf1860 100644 --- a/sysdeps/unix/sysv/linux/mips/mips32/libm.abilist +++ b/sysdeps/unix/sysv/linux/mips/mips32/libm.abilist @@ -907,6 +907,7 @@ GLIBC_2.41 atanpif32 F GLIBC_2.41 atanpif32x F GLIBC_2.41 atanpif64 F GLIBC_2.41 atanpil F +GLIBC_2.41 coshf F GLIBC_2.41 cospi F GLIBC_2.41 cospif F GLIBC_2.41 cospif32 F diff --git a/sysdeps/unix/sysv/linux/mips/mips64/libm.abilist b/sysdeps/unix/sysv/linux/mips/mips64/libm.abilist index 96fd6402a1..b6f6a024ce 100644 --- a/sysdeps/unix/sysv/linux/mips/mips64/libm.abilist +++ b/sysdeps/unix/sysv/linux/mips/mips64/libm.abilist @@ -1226,6 +1226,7 @@ GLIBC_2.41 atanpif32x F GLIBC_2.41 atanpif64 F GLIBC_2.41 atanpif64x F GLIBC_2.41 atanpil F +GLIBC_2.41 coshf F GLIBC_2.41 cospi F GLIBC_2.41 cospif F GLIBC_2.41 cospif128 F diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libm.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libm.abilist index 67a2149329..bb30867687 100644 --- a/sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libm.abilist +++ b/sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libm.abilist @@ -1054,6 +1054,7 @@ GLIBC_2.41 atanpif32 F GLIBC_2.41 atanpif32x F GLIBC_2.41 atanpif64 F GLIBC_2.41 atanpil F +GLIBC_2.41 coshf F GLIBC_2.41 cospi F GLIBC_2.41 cospif F GLIBC_2.41 cospif32 F diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libm.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libm.abilist index 7e208298a8..1ab0727602 100644 --- a/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libm.abilist +++ b/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libm.abilist @@ -1053,6 +1053,7 @@ GLIBC_2.41 atanpif32 F GLIBC_2.41 atanpif32x F GLIBC_2.41 atanpif64 F GLIBC_2.41 atanpil F +GLIBC_2.41 coshf F GLIBC_2.41 cospi F GLIBC_2.41 cospif F GLIBC_2.41 cospif32 F diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libm.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libm.abilist index e2398bbaf2..9ff3aeb577 100644 --- a/sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libm.abilist +++ b/sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libm.abilist @@ -1047,6 +1047,7 @@ GLIBC_2.41 atanpif32 F GLIBC_2.41 atanpif32x F GLIBC_2.41 atanpif64 F GLIBC_2.41 atanpil F +GLIBC_2.41 coshf F GLIBC_2.41 cospi F GLIBC_2.41 cospif F GLIBC_2.41 cospif32 F diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libm.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libm.abilist index f79497406e..664416d9c1 100644 --- a/sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libm.abilist +++ b/sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libm.abilist @@ -1410,6 +1410,7 @@ GLIBC_2.41 atanpif32x F GLIBC_2.41 atanpif64 F GLIBC_2.41 atanpif64x F GLIBC_2.41 atanpil F +GLIBC_2.41 coshf F GLIBC_2.41 cospi F GLIBC_2.41 cospif F GLIBC_2.41 cospif128 F diff --git a/sysdeps/unix/sysv/linux/s390/s390-32/libm.abilist b/sysdeps/unix/sysv/linux/s390/s390-32/libm.abilist index cd0a0aaf74..f1c7ccbcc1 100644 --- a/sysdeps/unix/sysv/linux/s390/s390-32/libm.abilist +++ b/sysdeps/unix/sysv/linux/s390/s390-32/libm.abilist @@ -1329,6 +1329,7 @@ GLIBC_2.41 atanpif32x F GLIBC_2.41 atanpif64 F GLIBC_2.41 atanpif64x F GLIBC_2.41 atanpil F +GLIBC_2.41 coshf F GLIBC_2.41 cospi F GLIBC_2.41 cospif F GLIBC_2.41 cospif128 F diff --git a/sysdeps/unix/sysv/linux/s390/s390-64/libm.abilist b/sysdeps/unix/sysv/linux/s390/s390-64/libm.abilist index c942a3feb3..fb3a37fef4 100644 --- a/sysdeps/unix/sysv/linux/s390/s390-64/libm.abilist +++ b/sysdeps/unix/sysv/linux/s390/s390-64/libm.abilist @@ -1329,6 +1329,7 @@ GLIBC_2.41 atanpif32x F GLIBC_2.41 atanpif64 F GLIBC_2.41 atanpif64x F GLIBC_2.41 atanpil F +GLIBC_2.41 coshf F GLIBC_2.41 cospi F GLIBC_2.41 cospif F GLIBC_2.41 cospif128 F diff --git a/sysdeps/unix/sysv/linux/sh/be/libm.abilist b/sysdeps/unix/sysv/linux/sh/be/libm.abilist index 63df58337b..cf6351a5e0 100644 --- a/sysdeps/unix/sysv/linux/sh/be/libm.abilist +++ b/sysdeps/unix/sysv/linux/sh/be/libm.abilist @@ -907,6 +907,7 @@ GLIBC_2.41 atanpif32 F GLIBC_2.41 atanpif32x F GLIBC_2.41 atanpif64 F GLIBC_2.41 atanpil F +GLIBC_2.41 coshf F GLIBC_2.41 cospi F GLIBC_2.41 cospif F GLIBC_2.41 cospif32 F diff --git a/sysdeps/unix/sysv/linux/sh/le/libm.abilist b/sysdeps/unix/sysv/linux/sh/le/libm.abilist index 63df58337b..cf6351a5e0 100644 --- a/sysdeps/unix/sysv/linux/sh/le/libm.abilist +++ b/sysdeps/unix/sysv/linux/sh/le/libm.abilist @@ -907,6 +907,7 @@ GLIBC_2.41 atanpif32 F GLIBC_2.41 atanpif32x F GLIBC_2.41 atanpif64 F GLIBC_2.41 atanpil F +GLIBC_2.41 coshf F GLIBC_2.41 cospi F GLIBC_2.41 cospif F GLIBC_2.41 cospif32 F diff --git a/sysdeps/unix/sysv/linux/sparc/sparc32/libm.abilist b/sysdeps/unix/sysv/linux/sparc/sparc32/libm.abilist index 7c5b14aac8..c0b1c5af7f 100644 --- a/sysdeps/unix/sysv/linux/sparc/sparc32/libm.abilist +++ b/sysdeps/unix/sysv/linux/sparc/sparc32/libm.abilist @@ -1336,6 +1336,7 @@ GLIBC_2.41 atanpif32x F GLIBC_2.41 atanpif64 F GLIBC_2.41 atanpif64x F GLIBC_2.41 atanpil F +GLIBC_2.41 coshf F GLIBC_2.41 cospi F GLIBC_2.41 cospif F GLIBC_2.41 cospif128 F diff --git a/sysdeps/unix/sysv/linux/sparc/sparc64/libm.abilist b/sysdeps/unix/sysv/linux/sparc/sparc64/libm.abilist index ea6cb72a4f..6bb1b6e27f 100644 --- a/sysdeps/unix/sysv/linux/sparc/sparc64/libm.abilist +++ b/sysdeps/unix/sysv/linux/sparc/sparc64/libm.abilist @@ -1226,6 +1226,7 @@ GLIBC_2.41 atanpif32x F GLIBC_2.41 atanpif64 F GLIBC_2.41 atanpif64x F GLIBC_2.41 atanpil F +GLIBC_2.41 coshf F GLIBC_2.41 cospi F GLIBC_2.41 cospif F GLIBC_2.41 cospif128 F diff --git a/sysdeps/unix/sysv/linux/x86_64/64/libm.abilist b/sysdeps/unix/sysv/linux/x86_64/64/libm.abilist index afba1055e8..c39d4ae4a3 100644 --- a/sysdeps/unix/sysv/linux/x86_64/64/libm.abilist +++ b/sysdeps/unix/sysv/linux/x86_64/64/libm.abilist @@ -1259,6 +1259,7 @@ GLIBC_2.41 atanpif32x F GLIBC_2.41 atanpif64 F GLIBC_2.41 atanpif64x F GLIBC_2.41 atanpil F +GLIBC_2.41 coshf F GLIBC_2.41 cospi F GLIBC_2.41 cospif F GLIBC_2.41 cospif128 F diff --git a/sysdeps/unix/sysv/linux/x86_64/x32/libm.abilist b/sysdeps/unix/sysv/linux/x86_64/x32/libm.abilist index 5164a53b43..d7e991a8b6 100644 --- a/sysdeps/unix/sysv/linux/x86_64/x32/libm.abilist +++ b/sysdeps/unix/sysv/linux/x86_64/x32/libm.abilist @@ -1259,6 +1259,7 @@ GLIBC_2.41 atanpif32x F GLIBC_2.41 atanpif64 F GLIBC_2.41 atanpif64x F GLIBC_2.41 atanpil F +GLIBC_2.41 coshf F GLIBC_2.41 cospi F GLIBC_2.41 cospif F GLIBC_2.41 cospif128 F From patchwork Thu Dec 19 20:13:14 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Adhemerval Zanella X-Patchwork-Id: 852058 Delivered-To: patch@linaro.org Received: by 2002:a5d:4888:0:b0:385:e875:8a9e with SMTP id g8csp1698012wrq; Thu, 19 Dec 2024 12:25:02 -0800 (PST) X-Forwarded-Encrypted: i=3; AJvYcCWxYSS186b2y1LLuL/3llIIBQwChkUWtXTf23oc21sOw7UWBSRypnEdn5KA9x9MgqU5oefg4A==@linaro.org X-Google-Smtp-Source: AGHT+IGnW7d81vm1su4QCfiychvo4PxloBq41SysFmeBtLReNYbfFlTtAdmVcYzhy8uZtg0UevC9 X-Received: by 2002:a05:620a:4556:b0:7b6:e8d4:9b86 with SMTP id af79cd13be357-7b9ba881fb5mr29048485a.57.1734639902491; Thu, 19 Dec 2024 12:25:02 -0800 (PST) ARC-Seal: i=2; a=rsa-sha256; t=1734639902; cv=pass; d=google.com; s=arc-20240605; b=FMp2Qx/Ftp/hmithOAF1pa16Jf6ZZ+k6exnHAptT8vfwHQxJxCf/6+TWu8go1enmoc mYONUEAuoraM8ggypC6g8i7ncMAEVSGdvGQeNj0rC0iKVvOS6OKZ0hv9/tPrHijX3RLK xcL/jOXzsiFi3spAu9uGYqtLA6fGJMKhr+C5vVItGlskAVC55jbsoNCXEf2REK7wU9ug 3lPFP9G5XUMObFi2nUXUylfCYWTqvOhAC4FUf729T2UAA5HdFHSMTRA/Muxusvw1rXJ9 jut9R+xBb4F8RP24iQEGSPMLksSYrdnpMiT7MvVwRhYLF+fcM0W0raNqbW+2Ng120C2q eZLA== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20240605; h=errors-to:list-subscribe:list-help:list-post:list-archive :list-unsubscribe:list-id:precedence:content-transfer-encoding :mime-version:references:in-reply-to:message-id:date:subject:cc:to :from:dkim-signature:arc-filter:dmarc-filter:delivered-to :dkim-filter; bh=HKpyXx6gHppQos7E/EF4xLAvkeBhbR5ozk82TXw8m20=; fh=c0s3Uezv7Rag51rMi6q2BcriyJCPC/LMNTAVHmiKG0w=; b=FUqrZFdRJ9LKmnyBlrLjyAtWACtG3HyeU5D6Am0uSIKkOvFyL9RGqx50/wtQyU6gNX bccIqVqGLP+AdJ8Z7B6qzwVnI64iRJnrAYANQKPW5oJMZoOnlZNd1RyLpA2M0RVGBcOb V9OBZ0vN+9CDxDffXz6QRZahvPFnN6fYpRtgxre0WX9sHJUhuS80YD/6MYC7ByV5iBk9 QqJEK30Qw2ReOxLfF58Se9ag2EafslqsF/ix2y1uglqxa9mXaXlmfD5PHAD3Hjpdf121 IAQMp9xP8N3oR3a0UrHxzWamlX///QM7WB9d6T5kWcj3diSVG9G0ozxRjf7ekBpdmCnA n0Tw==; dara=google.com ARC-Authentication-Results: i=2; mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b="p/JIf52Z"; arc=pass (i=1); spf=pass (google.com: domain of libc-alpha-bounces~patch=linaro.org@sourceware.org designates 2620:52:3:1:0:246e:9693:128c as permitted sender) smtp.mailfrom="libc-alpha-bounces~patch=linaro.org@sourceware.org"; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org Return-Path: Received: from server2.sourceware.org (server2.sourceware.org. [2620:52:3:1:0:246e:9693:128c]) by mx.google.com with ESMTPS id af79cd13be357-7b9ac2ab70bsi260249785a.31.2024.12.19.12.25.02 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 19 Dec 2024 12:25:02 -0800 (PST) Received-SPF: pass (google.com: domain of libc-alpha-bounces~patch=linaro.org@sourceware.org designates 2620:52:3:1:0:246e:9693:128c as permitted sender) client-ip=2620:52:3:1:0:246e:9693:128c; Authentication-Results: mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b="p/JIf52Z"; arc=pass (i=1); spf=pass (google.com: domain of libc-alpha-bounces~patch=linaro.org@sourceware.org designates 2620:52:3:1:0:246e:9693:128c as permitted sender) smtp.mailfrom="libc-alpha-bounces~patch=linaro.org@sourceware.org"; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: from server2.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id 185E53858D20 for ; Thu, 19 Dec 2024 20:25:02 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 185E53858D20 Authentication-Results: sourceware.org; dkim=pass (2048-bit key, unprotected) header.d=linaro.org header.i=@linaro.org header.a=rsa-sha256 header.s=google header.b=p/JIf52Z X-Original-To: libc-alpha@sourceware.org Delivered-To: libc-alpha@sourceware.org Received: from mail-pl1-x631.google.com (mail-pl1-x631.google.com [IPv6:2607:f8b0:4864:20::631]) by sourceware.org (Postfix) with ESMTPS id 8DA163858403 for ; Thu, 19 Dec 2024 20:20:35 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 8DA163858403 Authentication-Results: sourceware.org; dmarc=pass (p=none dis=none) header.from=linaro.org Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=linaro.org ARC-Filter: OpenARC Filter v1.0.0 sourceware.org 8DA163858403 Authentication-Results: server2.sourceware.org; arc=none smtp.remote-ip=2607:f8b0:4864:20::631 ARC-Seal: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1734639635; cv=none; b=cywinsC/bsA5x8tML2Y21DUjRnnGU8Qnhkr3I50qFtN/Ym95UWRvY9YYTsfo2cjiI+9AQD4TKloVno5feWfw4DmLSIBF6Xnhlbt6Imrr6DOzE5cc7gSf6F69BSoIWsaHAUhEcPOK6ZgMWF24bmeAIJDI/ztkk2UqzdSZRKOvqOQ= ARC-Message-Signature: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1734639635; c=relaxed/simple; bh=epVm/RMHum7ebQwdWTpQPAy3j1GYJm6HrI8q6yfryxM=; h=DKIM-Signature:From:To:Subject:Date:Message-ID:MIME-Version; b=HW56aVhYzfzc9S39v8jeKURlZUnZpXVM0kQZ7EthGO8vzVZTdK9WBQedEUKvVgERKYPpbrNGTxsGfBSfWLazpZACgjrhZjD0R3vxwwG7hIRgcIw6TUGcErtuShg8ohPYx+/CSiP+nKnBkCdcd38+9o8kaEeDHEP0UhSmqqkPKzc= ARC-Authentication-Results: i=1; server2.sourceware.org Received: by mail-pl1-x631.google.com with SMTP id d9443c01a7336-21634338cfdso16014235ad.2 for ; Thu, 19 Dec 2024 12:20:35 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1734639627; x=1735244427; darn=sourceware.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=HKpyXx6gHppQos7E/EF4xLAvkeBhbR5ozk82TXw8m20=; b=p/JIf52Zhf+4t8/kbgC5mnMog+Xz4OGgDY5zppStYb7pSfkX0e6ZrwS3nMysPlcO/t J2Vhwg8RLxPNZtGvOTcLu5JRDVzApcQNtVXlCGuaWOdazToVvtIrtb58PrUDN5FJWL2R 44Ikn3C4Y4F/BBWanTx0sZeo5/3UOOEio9dd7nwHybQKBcO9R/IXzv5E8kMN7S4/g1dY fNKTu7Tqc10rUAvTKlYmiL7Vvpu9SkKLcl02tIkRMmz+KOP3OLdb1cBVZHUts+ASY40S G3H8U4jTL8HqPOU/dwpiCWUkDsO/D8jmqREog0kLGsDDbsh1nlY36T7zVQ30hcW3b5je 2NTA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1734639627; x=1735244427; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=HKpyXx6gHppQos7E/EF4xLAvkeBhbR5ozk82TXw8m20=; b=dtJV0gbH0TMp4FYamSEKIWh/kRktnjzj40k8zTzcbJ+FxEiPvm5wTU9aLsqjfOyEzh 0TKzcHHtT2mCwKifncsuQUlNbVeEqi3qhoDhf+hFsinJ+ZMTj+jtfOO77Fejahq/Qq59 WTNUXPK0gd6qIqUCIA8Pn2fJKaX7RXApWEN78rBx6j3g8HsJjEXAI3JIo94oLyLzTg40 9CdbtkOqXl7yQwTvXuPiLQTL/hn/EAD7IP44HoDMc2wAfJlQH7lXfGY37J0x/RCOZ32f ZnoczkiC+zP5xijc99sLJA3x5SnkI5qaxA1Eat5u0nqHq0whVhBnI44TZL9lwd7aFDVv hVIw== X-Gm-Message-State: AOJu0Ywvn82y4e0U6+TQejbG7DDPYj+teW9qnYb+D7iWSt4wVu6Oh1F8 yyrKrjkjXKENVaMzOVhUEDm+t9VchZ7yai2YWC3f6FgGDu0ilu0dUdhuBmXxNsFGqePHE74m93W q X-Gm-Gg: ASbGncvXE6lKLBlZYFp1N9AbBwaDfEYH2lQ0tG/GOUVmQPpNPxFtBYfEb2ZP/bxLj+z KawyyF1+jpcnh/PAInooDWNFm+n4+pOg6pMX5Bkeaug9lLc9V7o9nfnhIJFhHvHPCMmTQeKEm6x qck1Qd6q4aotzFDGErd/7UYjBw8BV0sndrlIiq11k7vLnim9O7PJ1SWvdg58oPh294Q4uDu+sh4 WNcgfM1zCqR2Knq+1AbWGHk8Ym9OMRb9onYKm5RZmGR/bIpHIgHKMLGwN6BomFnLL5xRw== X-Received: by 2002:a17:902:ce92:b0:215:a179:14ca with SMTP id d9443c01a7336-219e6e8c35amr1220705ad.2.1734639627349; Thu, 19 Dec 2024 12:20:27 -0800 (PST) Received: from mandiga.. ([2804:1b3:a7c3:2d5b:c4ce:4df0:8543:f129]) by smtp.gmail.com with ESMTPSA id d9443c01a7336-219dca02589sm16360645ad.257.2024.12.19.12.20.25 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 19 Dec 2024 12:20:26 -0800 (PST) From: Adhemerval Zanella To: libc-alpha@sourceware.org Cc: DJ Delorie , Joseph Myers , Paul Zimmermann Subject: [PATCH 10/10] math: Remove the error handling wrapper from sinhf Date: Thu, 19 Dec 2024 17:13:14 -0300 Message-ID: <20241219202003.2651277-11-adhemerval.zanella@linaro.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20241219202003.2651277-1-adhemerval.zanella@linaro.org> References: <20241219202003.2651277-1-adhemerval.zanella@linaro.org> MIME-Version: 1.0 X-BeenThere: libc-alpha@sourceware.org X-Mailman-Version: 2.1.30 Precedence: list List-Id: Libc-alpha mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: libc-alpha-bounces~patch=linaro.org@sourceware.org It improves latency for about 3-10% and throughput for about 5-15%. --- math/Versions | 1 + math/w_sinhf.c | 8 ++++++++ math/w_sinhf_compat.c | 11 ++++++++--- sysdeps/ieee754/flt-32/e_sinhf.c | 13 ++++++++++++- sysdeps/ieee754/flt-32/w_sinhf.c | 1 + sysdeps/m68k/m680x0/fpu/w_sinhf_compat.c | 8 ++++++++ sysdeps/mach/hurd/i386/libm.abilist | 1 + sysdeps/unix/sysv/linux/aarch64/libm.abilist | 1 + sysdeps/unix/sysv/linux/alpha/libm.abilist | 1 + sysdeps/unix/sysv/linux/arm/be/libm.abilist | 1 + sysdeps/unix/sysv/linux/arm/le/libm.abilist | 1 + sysdeps/unix/sysv/linux/hppa/libm.abilist | 1 + sysdeps/unix/sysv/linux/i386/libm.abilist | 1 + sysdeps/unix/sysv/linux/m68k/coldfire/libm.abilist | 1 + sysdeps/unix/sysv/linux/microblaze/be/libm.abilist | 1 + sysdeps/unix/sysv/linux/microblaze/le/libm.abilist | 1 + sysdeps/unix/sysv/linux/mips/mips32/libm.abilist | 1 + sysdeps/unix/sysv/linux/mips/mips64/libm.abilist | 1 + .../sysv/linux/powerpc/powerpc32/fpu/libm.abilist | 1 + .../sysv/linux/powerpc/powerpc32/nofpu/libm.abilist | 1 + .../sysv/linux/powerpc/powerpc64/be/libm.abilist | 1 + .../sysv/linux/powerpc/powerpc64/le/libm.abilist | 1 + sysdeps/unix/sysv/linux/s390/s390-32/libm.abilist | 1 + sysdeps/unix/sysv/linux/s390/s390-64/libm.abilist | 1 + sysdeps/unix/sysv/linux/sh/be/libm.abilist | 1 + sysdeps/unix/sysv/linux/sh/le/libm.abilist | 1 + sysdeps/unix/sysv/linux/sparc/sparc32/libm.abilist | 1 + sysdeps/unix/sysv/linux/sparc/sparc64/libm.abilist | 1 + sysdeps/unix/sysv/linux/x86_64/64/libm.abilist | 1 + sysdeps/unix/sysv/linux/x86_64/x32/libm.abilist | 1 + 30 files changed, 62 insertions(+), 4 deletions(-) create mode 100644 math/w_sinhf.c create mode 100644 sysdeps/ieee754/flt-32/w_sinhf.c create mode 100644 sysdeps/m68k/m680x0/fpu/w_sinhf_compat.c diff --git a/math/Versions b/math/Versions index 056fc19634..a295cb6617 100644 --- a/math/Versions +++ b/math/Versions @@ -679,5 +679,6 @@ libm { atan2f; atanhf; coshf; + sinhf; } } diff --git a/math/w_sinhf.c b/math/w_sinhf.c new file mode 100644 index 0000000000..e4034ff0be --- /dev/null +++ b/math/w_sinhf.c @@ -0,0 +1,8 @@ +#include +#undef __USE_WRAPPER_TEMPLATE +#define __USE_WRAPPER_TEMPLATE 1 +#undef declare_mgen_alias +#define declare_mgen_alias(a, b) +#include +versioned_symbol (libm, __sinhf, sinhf, GLIBC_2_41); +libm_alias_float_other (__sinhf, sinhf) diff --git a/math/w_sinhf_compat.c b/math/w_sinhf_compat.c index e8de6675af..85af046f78 100644 --- a/math/w_sinhf_compat.c +++ b/math/w_sinhf_compat.c @@ -21,9 +21,9 @@ #include #include -#if LIBM_SVID_COMPAT +#if LIBM_SVID_COMPAT && SHLIB_COMPAT (libm, GLIBC_2_0, GLIBC_2_41) float -__sinhf (float x) +__sinh_compatf (float x) { float z = __ieee754_sinhf (x); if (__builtin_expect (!isfinite (z), 0) && isfinite (x) @@ -32,5 +32,10 @@ __sinhf (float x) return z; } -libm_alias_float (__sinh, sinh) +# ifdef NO_COMPAT_NEEDED +strong_alias (__sinh_compatf, __sinhf) +libm_alias_float (__sinh_compat, sinh) +# else +compat_symbol (libm, __sinh_compatf, sinhf, GLIBC_2_0); +# endif #endif diff --git a/sysdeps/ieee754/flt-32/e_sinhf.c b/sysdeps/ieee754/flt-32/e_sinhf.c index c007c7d174..4f75845446 100644 --- a/sysdeps/ieee754/flt-32/e_sinhf.c +++ b/sysdeps/ieee754/flt-32/e_sinhf.c @@ -24,14 +24,17 @@ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */ +#include #include #include #include +#include +#include #include #include "math_config.h" float -__ieee754_sinhf (float x) +__sinhf (float x) { static const double c[] = { @@ -75,6 +78,7 @@ __ieee754_sinhf (float x) return copysignf (INFINITY, x); /* +-inf */ } float r = math_narrow_eval (sgn * 0x1.fffffep127f); + __set_errno (ERANGE); return r; } if (__glibc_unlikely (ux < 0x7c000000u)) @@ -128,4 +132,11 @@ __ieee754_sinhf (float x) } return ub; } +strong_alias (__sinhf, __ieee754_sinhf) +#if LIBM_SVID_COMPAT +versioned_symbol (libm, __sinhf, sinhf, GLIBC_2_41); +libm_alias_float_other (__sinh, sinh) +#else +libm_alias_float (__sinh, sinh) +#endif libm_alias_finite (__ieee754_sinhf, __sinhf) diff --git a/sysdeps/ieee754/flt-32/w_sinhf.c b/sysdeps/ieee754/flt-32/w_sinhf.c new file mode 100644 index 0000000000..1cc8931700 --- /dev/null +++ b/sysdeps/ieee754/flt-32/w_sinhf.c @@ -0,0 +1 @@ +/* Not needed. */ diff --git a/sysdeps/m68k/m680x0/fpu/w_sinhf_compat.c b/sysdeps/m68k/m680x0/fpu/w_sinhf_compat.c new file mode 100644 index 0000000000..e8e4bc9326 --- /dev/null +++ b/sysdeps/m68k/m680x0/fpu/w_sinhf_compat.c @@ -0,0 +1,8 @@ +/* m68k provides an optimized __ieee754_sinhhf. */ +#ifdef SHARED +# define NO_COMPAT_NEEDED 1 +# include +#else +# include +# include +#endif diff --git a/sysdeps/mach/hurd/i386/libm.abilist b/sysdeps/mach/hurd/i386/libm.abilist index 65a28fea55..98b0b703a3 100644 --- a/sysdeps/mach/hurd/i386/libm.abilist +++ b/sysdeps/mach/hurd/i386/libm.abilist @@ -1270,6 +1270,7 @@ GLIBC_2.41 cospil F GLIBC_2.41 lgammaf F GLIBC_2.41 lgammaf_r F GLIBC_2.41 log10f F +GLIBC_2.41 sinhf F GLIBC_2.41 sinpi F GLIBC_2.41 sinpif F GLIBC_2.41 sinpif128 F diff --git a/sysdeps/unix/sysv/linux/aarch64/libm.abilist b/sysdeps/unix/sysv/linux/aarch64/libm.abilist index cd233f1f14..c2b16090ef 100644 --- a/sysdeps/unix/sysv/linux/aarch64/libm.abilist +++ b/sysdeps/unix/sysv/linux/aarch64/libm.abilist @@ -1238,6 +1238,7 @@ GLIBC_2.41 cospil F GLIBC_2.41 lgammaf F GLIBC_2.41 lgammaf_r F GLIBC_2.41 log10f F +GLIBC_2.41 sinhf F GLIBC_2.41 sinpi F GLIBC_2.41 sinpif F GLIBC_2.41 sinpif128 F diff --git a/sysdeps/unix/sysv/linux/alpha/libm.abilist b/sysdeps/unix/sysv/linux/alpha/libm.abilist index 9447358ece..49894c1292 100644 --- a/sysdeps/unix/sysv/linux/alpha/libm.abilist +++ b/sysdeps/unix/sysv/linux/alpha/libm.abilist @@ -1397,6 +1397,7 @@ GLIBC_2.41 cospil F GLIBC_2.41 lgammaf F GLIBC_2.41 lgammaf_r F GLIBC_2.41 log10f F +GLIBC_2.41 sinhf F GLIBC_2.41 sinpi F GLIBC_2.41 sinpif F GLIBC_2.41 sinpif128 F diff --git a/sysdeps/unix/sysv/linux/arm/be/libm.abilist b/sysdeps/unix/sysv/linux/arm/be/libm.abilist index 31ec45ce5f..1f679b77b7 100644 --- a/sysdeps/unix/sysv/linux/arm/be/libm.abilist +++ b/sysdeps/unix/sysv/linux/arm/be/libm.abilist @@ -917,6 +917,7 @@ GLIBC_2.41 cospil F GLIBC_2.41 lgammaf F GLIBC_2.41 lgammaf_r F GLIBC_2.41 log10f F +GLIBC_2.41 sinhf F GLIBC_2.41 sinpi F GLIBC_2.41 sinpif F GLIBC_2.41 sinpif32 F diff --git a/sysdeps/unix/sysv/linux/arm/le/libm.abilist b/sysdeps/unix/sysv/linux/arm/le/libm.abilist index 31ec45ce5f..1f679b77b7 100644 --- a/sysdeps/unix/sysv/linux/arm/le/libm.abilist +++ b/sysdeps/unix/sysv/linux/arm/le/libm.abilist @@ -917,6 +917,7 @@ GLIBC_2.41 cospil F GLIBC_2.41 lgammaf F GLIBC_2.41 lgammaf_r F GLIBC_2.41 log10f F +GLIBC_2.41 sinhf F GLIBC_2.41 sinpi F GLIBC_2.41 sinpif F GLIBC_2.41 sinpif32 F diff --git a/sysdeps/unix/sysv/linux/hppa/libm.abilist b/sysdeps/unix/sysv/linux/hppa/libm.abilist index 0c099cf351..bb8f3bad43 100644 --- a/sysdeps/unix/sysv/linux/hppa/libm.abilist +++ b/sysdeps/unix/sysv/linux/hppa/libm.abilist @@ -917,6 +917,7 @@ GLIBC_2.41 cospil F GLIBC_2.41 lgammaf F GLIBC_2.41 lgammaf_r F GLIBC_2.41 log10f F +GLIBC_2.41 sinhf F GLIBC_2.41 sinpi F GLIBC_2.41 sinpif F GLIBC_2.41 sinpif32 F diff --git a/sysdeps/unix/sysv/linux/i386/libm.abilist b/sysdeps/unix/sysv/linux/i386/libm.abilist index 7caa63a837..db5ca197a8 100644 --- a/sysdeps/unix/sysv/linux/i386/libm.abilist +++ b/sysdeps/unix/sysv/linux/i386/libm.abilist @@ -1277,6 +1277,7 @@ GLIBC_2.41 cospil F GLIBC_2.41 lgammaf F GLIBC_2.41 lgammaf_r F GLIBC_2.41 log10f F +GLIBC_2.41 sinhf F GLIBC_2.41 sinpi F GLIBC_2.41 sinpif F GLIBC_2.41 sinpif128 F diff --git a/sysdeps/unix/sysv/linux/m68k/coldfire/libm.abilist b/sysdeps/unix/sysv/linux/m68k/coldfire/libm.abilist index 31ec45ce5f..1f679b77b7 100644 --- a/sysdeps/unix/sysv/linux/m68k/coldfire/libm.abilist +++ b/sysdeps/unix/sysv/linux/m68k/coldfire/libm.abilist @@ -917,6 +917,7 @@ GLIBC_2.41 cospil F GLIBC_2.41 lgammaf F GLIBC_2.41 lgammaf_r F GLIBC_2.41 log10f F +GLIBC_2.41 sinhf F GLIBC_2.41 sinpi F GLIBC_2.41 sinpif F GLIBC_2.41 sinpif32 F diff --git a/sysdeps/unix/sysv/linux/microblaze/be/libm.abilist b/sysdeps/unix/sysv/linux/microblaze/be/libm.abilist index a8992cc5ed..34c1f088c2 100644 --- a/sysdeps/unix/sysv/linux/microblaze/be/libm.abilist +++ b/sysdeps/unix/sysv/linux/microblaze/be/libm.abilist @@ -917,6 +917,7 @@ GLIBC_2.41 cospil F GLIBC_2.41 lgammaf F GLIBC_2.41 lgammaf_r F GLIBC_2.41 log10f F +GLIBC_2.41 sinhf F GLIBC_2.41 sinpi F GLIBC_2.41 sinpif F GLIBC_2.41 sinpif32 F diff --git a/sysdeps/unix/sysv/linux/microblaze/le/libm.abilist b/sysdeps/unix/sysv/linux/microblaze/le/libm.abilist index a8992cc5ed..34c1f088c2 100644 --- a/sysdeps/unix/sysv/linux/microblaze/le/libm.abilist +++ b/sysdeps/unix/sysv/linux/microblaze/le/libm.abilist @@ -917,6 +917,7 @@ GLIBC_2.41 cospil F GLIBC_2.41 lgammaf F GLIBC_2.41 lgammaf_r F GLIBC_2.41 log10f F +GLIBC_2.41 sinhf F GLIBC_2.41 sinpi F GLIBC_2.41 sinpif F GLIBC_2.41 sinpif32 F diff --git a/sysdeps/unix/sysv/linux/mips/mips32/libm.abilist b/sysdeps/unix/sysv/linux/mips/mips32/libm.abilist index 087faf1860..554e3329b4 100644 --- a/sysdeps/unix/sysv/linux/mips/mips32/libm.abilist +++ b/sysdeps/unix/sysv/linux/mips/mips32/libm.abilist @@ -917,6 +917,7 @@ GLIBC_2.41 cospil F GLIBC_2.41 lgammaf F GLIBC_2.41 lgammaf_r F GLIBC_2.41 log10f F +GLIBC_2.41 sinhf F GLIBC_2.41 sinpi F GLIBC_2.41 sinpif F GLIBC_2.41 sinpif32 F diff --git a/sysdeps/unix/sysv/linux/mips/mips64/libm.abilist b/sysdeps/unix/sysv/linux/mips/mips64/libm.abilist index b6f6a024ce..57d725f4f0 100644 --- a/sysdeps/unix/sysv/linux/mips/mips64/libm.abilist +++ b/sysdeps/unix/sysv/linux/mips/mips64/libm.abilist @@ -1238,6 +1238,7 @@ GLIBC_2.41 cospil F GLIBC_2.41 lgammaf F GLIBC_2.41 lgammaf_r F GLIBC_2.41 log10f F +GLIBC_2.41 sinhf F GLIBC_2.41 sinpi F GLIBC_2.41 sinpif F GLIBC_2.41 sinpif128 F diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libm.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libm.abilist index bb30867687..d088953433 100644 --- a/sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libm.abilist +++ b/sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libm.abilist @@ -1064,6 +1064,7 @@ GLIBC_2.41 cospil F GLIBC_2.41 lgammaf F GLIBC_2.41 lgammaf_r F GLIBC_2.41 log10f F +GLIBC_2.41 sinhf F GLIBC_2.41 sinpi F GLIBC_2.41 sinpif F GLIBC_2.41 sinpif32 F diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libm.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libm.abilist index 1ab0727602..ebec189cc9 100644 --- a/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libm.abilist +++ b/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libm.abilist @@ -1063,6 +1063,7 @@ GLIBC_2.41 cospil F GLIBC_2.41 lgammaf F GLIBC_2.41 lgammaf_r F GLIBC_2.41 log10f F +GLIBC_2.41 sinhf F GLIBC_2.41 sinpi F GLIBC_2.41 sinpif F GLIBC_2.41 sinpif32 F diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libm.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libm.abilist index 9ff3aeb577..cf61cc0fb9 100644 --- a/sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libm.abilist +++ b/sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libm.abilist @@ -1057,6 +1057,7 @@ GLIBC_2.41 cospil F GLIBC_2.41 lgammaf F GLIBC_2.41 lgammaf_r F GLIBC_2.41 log10f F +GLIBC_2.41 sinhf F GLIBC_2.41 sinpi F GLIBC_2.41 sinpif F GLIBC_2.41 sinpif32 F diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libm.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libm.abilist index 664416d9c1..686c9dc01a 100644 --- a/sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libm.abilist +++ b/sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libm.abilist @@ -1422,6 +1422,7 @@ GLIBC_2.41 cospil F GLIBC_2.41 lgammaf F GLIBC_2.41 lgammaf_r F GLIBC_2.41 log10f F +GLIBC_2.41 sinhf F GLIBC_2.41 sinpi F GLIBC_2.41 sinpif F GLIBC_2.41 sinpif128 F diff --git a/sysdeps/unix/sysv/linux/s390/s390-32/libm.abilist b/sysdeps/unix/sysv/linux/s390/s390-32/libm.abilist index f1c7ccbcc1..4a31376e2f 100644 --- a/sysdeps/unix/sysv/linux/s390/s390-32/libm.abilist +++ b/sysdeps/unix/sysv/linux/s390/s390-32/libm.abilist @@ -1341,6 +1341,7 @@ GLIBC_2.41 cospil F GLIBC_2.41 lgammaf F GLIBC_2.41 lgammaf_r F GLIBC_2.41 log10f F +GLIBC_2.41 sinhf F GLIBC_2.41 sinpi F GLIBC_2.41 sinpif F GLIBC_2.41 sinpif128 F diff --git a/sysdeps/unix/sysv/linux/s390/s390-64/libm.abilist b/sysdeps/unix/sysv/linux/s390/s390-64/libm.abilist index fb3a37fef4..1a30a61fd4 100644 --- a/sysdeps/unix/sysv/linux/s390/s390-64/libm.abilist +++ b/sysdeps/unix/sysv/linux/s390/s390-64/libm.abilist @@ -1341,6 +1341,7 @@ GLIBC_2.41 cospil F GLIBC_2.41 lgammaf F GLIBC_2.41 lgammaf_r F GLIBC_2.41 log10f F +GLIBC_2.41 sinhf F GLIBC_2.41 sinpi F GLIBC_2.41 sinpif F GLIBC_2.41 sinpif128 F diff --git a/sysdeps/unix/sysv/linux/sh/be/libm.abilist b/sysdeps/unix/sysv/linux/sh/be/libm.abilist index cf6351a5e0..80c1c3841d 100644 --- a/sysdeps/unix/sysv/linux/sh/be/libm.abilist +++ b/sysdeps/unix/sysv/linux/sh/be/libm.abilist @@ -917,6 +917,7 @@ GLIBC_2.41 cospil F GLIBC_2.41 lgammaf F GLIBC_2.41 lgammaf_r F GLIBC_2.41 log10f F +GLIBC_2.41 sinhf F GLIBC_2.41 sinpi F GLIBC_2.41 sinpif F GLIBC_2.41 sinpif32 F diff --git a/sysdeps/unix/sysv/linux/sh/le/libm.abilist b/sysdeps/unix/sysv/linux/sh/le/libm.abilist index cf6351a5e0..80c1c3841d 100644 --- a/sysdeps/unix/sysv/linux/sh/le/libm.abilist +++ b/sysdeps/unix/sysv/linux/sh/le/libm.abilist @@ -917,6 +917,7 @@ GLIBC_2.41 cospil F GLIBC_2.41 lgammaf F GLIBC_2.41 lgammaf_r F GLIBC_2.41 log10f F +GLIBC_2.41 sinhf F GLIBC_2.41 sinpi F GLIBC_2.41 sinpif F GLIBC_2.41 sinpif32 F diff --git a/sysdeps/unix/sysv/linux/sparc/sparc32/libm.abilist b/sysdeps/unix/sysv/linux/sparc/sparc32/libm.abilist index c0b1c5af7f..53c9af7fab 100644 --- a/sysdeps/unix/sysv/linux/sparc/sparc32/libm.abilist +++ b/sysdeps/unix/sysv/linux/sparc/sparc32/libm.abilist @@ -1348,6 +1348,7 @@ GLIBC_2.41 cospil F GLIBC_2.41 lgammaf F GLIBC_2.41 lgammaf_r F GLIBC_2.41 log10f F +GLIBC_2.41 sinhf F GLIBC_2.41 sinpi F GLIBC_2.41 sinpif F GLIBC_2.41 sinpif128 F diff --git a/sysdeps/unix/sysv/linux/sparc/sparc64/libm.abilist b/sysdeps/unix/sysv/linux/sparc/sparc64/libm.abilist index 6bb1b6e27f..f68911359e 100644 --- a/sysdeps/unix/sysv/linux/sparc/sparc64/libm.abilist +++ b/sysdeps/unix/sysv/linux/sparc/sparc64/libm.abilist @@ -1238,6 +1238,7 @@ GLIBC_2.41 cospil F GLIBC_2.41 lgammaf F GLIBC_2.41 lgammaf_r F GLIBC_2.41 log10f F +GLIBC_2.41 sinhf F GLIBC_2.41 sinpi F GLIBC_2.41 sinpif F GLIBC_2.41 sinpif128 F diff --git a/sysdeps/unix/sysv/linux/x86_64/64/libm.abilist b/sysdeps/unix/sysv/linux/x86_64/64/libm.abilist index c39d4ae4a3..b6345c8747 100644 --- a/sysdeps/unix/sysv/linux/x86_64/64/libm.abilist +++ b/sysdeps/unix/sysv/linux/x86_64/64/libm.abilist @@ -1271,6 +1271,7 @@ GLIBC_2.41 cospil F GLIBC_2.41 lgammaf F GLIBC_2.41 lgammaf_r F GLIBC_2.41 log10f F +GLIBC_2.41 sinhf F GLIBC_2.41 sinpi F GLIBC_2.41 sinpif F GLIBC_2.41 sinpif128 F diff --git a/sysdeps/unix/sysv/linux/x86_64/x32/libm.abilist b/sysdeps/unix/sysv/linux/x86_64/x32/libm.abilist index d7e991a8b6..1d6d324f4d 100644 --- a/sysdeps/unix/sysv/linux/x86_64/x32/libm.abilist +++ b/sysdeps/unix/sysv/linux/x86_64/x32/libm.abilist @@ -1271,6 +1271,7 @@ GLIBC_2.41 cospil F GLIBC_2.41 lgammaf F GLIBC_2.41 lgammaf_r F GLIBC_2.41 log10f F +GLIBC_2.41 sinhf F GLIBC_2.41 sinpi F GLIBC_2.41 sinpif F GLIBC_2.41 sinpif128 F