From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from EUR05-AM6-obe.outbound.protection.outlook.com (mail-am6eur05on2043.outbound.protection.outlook.com [40.107.22.43]) by sourceware.org (Postfix) with ESMTPS id 3A97A3860753 for ; Fri, 14 Oct 2022 14:31:57 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org 3A97A3860753 Authentication-Results: sourceware.org; dmarc=pass (p=none dis=none) header.from=arm.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=arm.com ARC-Seal: i=2; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=pass; b=GsT+a8thb0V5q/6KtXPUH5l3Nzr9arwUaTb0RiV0difEGiQ6AlQMyViW2Ry4cSZt4qHZPvF8+QJ8KP10/l8jgrjgi75FF2V3GbA6tjOSGHi5y4l4UGfx8s0MaIuZqCBzV5VYVnZfgQvBtkRyJY7/VmyNUe+YVxmiuoY54fwnDKlkX6RG4DRroH8tyGgd5WriVBaQb2TYUiqMtZ1cDCOm6wXPSS5DS9vXnA5UNG0ZY4eOEqri5nul/oe3tC1QBXFMs17fShG2uVrsQdAl5h8Wu7+1mSqgfj5eSgDkekrWE2Mi1+xDhcpmkhz3sI+kCT7oBwMFooSQduOGsRdO8zoT5Q== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=OtZkRumGOk7+Reb4PvMgNUYCNuNP4n4tNwTaY+pBIKQ=; b=LVBquCem5UL6VXeptCedRITXZN2uePzioJ1ucudmYZxyGdVVBE7fQmZMSv6Qzh0zv1eA1GKkpQJXtbBAH8ZU0gBxLZV06FTy7tMZAs9pdSBX4s/nACPGunXLKB7MRVgSxsyWzESlWmw8OXEsreqU3Dqv1qDRBZ8Su223OdHGfELtZptEVOj4Fk/m200aevw1YL95aR33Elg5Q4/w2OFCRSQZLxh3YEnH1Ln4NAsOBSfvOffgNJ9vp192SPSzFDoNaMX9OaPujLqSoPytfIrSBa2OLlM/q5UkSX1p8zewuAx6Wi9kklTzXUnmcMGUuMbXqN6IhYCDAc2q5lBzphcXPg== ARC-Authentication-Results: i=2; mx.microsoft.com 1; spf=pass (sender ip is 63.35.35.123) smtp.rcpttodomain=sourceware.org smtp.mailfrom=arm.com; dmarc=pass (p=none sp=none pct=100) action=none header.from=arm.com; dkim=pass (signature was verified) header.d=armh.onmicrosoft.com; arc=pass (0 oda=1 ltdi=1 spf=[1,1,smtp.mailfrom=arm.com] dkim=[1,1,header.d=arm.com] dmarc=[1,1,header.from=arm.com]) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=OtZkRumGOk7+Reb4PvMgNUYCNuNP4n4tNwTaY+pBIKQ=; b=ntZi65uTD3O9ij/ntCpXAwI7rxBjRo1iiG6joCY4kbyUZUpIeNydI0syCvvObJTcaUturvSs/FORP6qszkXMTBLB3hH9OU0wO+2lsGFfNGFvQXeHAuzV54vvZ42J6C8SEcHvodpGxbVW/67D3heofnvjqqbcByWBWMwp/9+GalE= Received: from AM6P193CA0088.EURP193.PROD.OUTLOOK.COM (2603:10a6:209:88::29) by DBBPR08MB6315.eurprd08.prod.outlook.com (2603:10a6:10:209::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5723.26; Fri, 14 Oct 2022 14:31:54 +0000 Received: from AM7EUR03FT008.eop-EUR03.prod.protection.outlook.com (2603:10a6:209:88:cafe::89) by AM6P193CA0088.outlook.office365.com (2603:10a6:209:88::29) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5723.29 via Frontend Transport; Fri, 14 Oct 2022 14:31:54 +0000 X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123) smtp.mailfrom=arm.com; dkim=pass (signature was verified) header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com; Received-SPF: Pass (protection.outlook.com: domain of arm.com designates 63.35.35.123 as permitted sender) receiver=protection.outlook.com; client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com; pr=C Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by AM7EUR03FT008.mail.protection.outlook.com (100.127.141.25) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5709.10 via Frontend Transport; Fri, 14 Oct 2022 14:31:54 +0000 Received: ("Tessian outbound aeae1c7b66fd:v130"); Fri, 14 Oct 2022 14:31:54 +0000 X-CheckRecipientChecked: true X-CR-MTA-CID: 1e438b4626e162a6 X-CR-MTA-TID: 64aa7808 Received: from e8da6c45747f.2 by 64aa7808-outbound-1.mta.getcheckrecipient.com id B1BC88DA-08D7-4509-8A50-7D45190DE1B3.1; Fri, 14 Oct 2022 14:31:47 +0000 Received: from EUR03-AM7-obe.outbound.protection.outlook.com by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id e8da6c45747f.2 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384); Fri, 14 Oct 2022 14:31:47 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=R0aJjGqqcBq4yYxYyxGswrjJwNTySDgR3FKMnKCvd+AhSyc5n7xE9QeKyKhJ2A5+Meuq2SBljFpjkyrG2JL87Plhrv6OhEaGpo86B7PA7pYDzh9GlcuhZjN/fpFBEnX8qo/jIlb5O9IGM1KYss7aKTiTznP4YtyqMsApzQ8wY0JGrqyiERmVWMfP4+A8irGXH1c3QgtU8myyb2GXMYFsYu85atbdhk0BLWfwITV38efztQrlw4glhH68vqdt1T2aTQcbeCw1EndZ3Iy6PXOmBRCau0Kr0vFJ32Dh+yFRl9pn7/dBlArQUbASLt1mOtpkghioa37dY62s9a+zFbxMnQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=OtZkRumGOk7+Reb4PvMgNUYCNuNP4n4tNwTaY+pBIKQ=; b=oCBulNOEFKgp3igM0syDOFsc0Ol22Y//6gOq6vOzUeBrMbCGG3wIIHNz58lnYHb05mvV+q1h+m0JlvgladxxhfFgS94IHHxqk96O/JLsGNFUW/j0EhCScs/m1m7RvhhVrxyn83osDByux2eoakJPjqk3za5ThfvnneaJ+OeAV+YdG2yaB653sobM96hXbaMTAzrdJpt4R8iotfPPOyQCAJ6jjC14JGeeJc8fnDQJR8SjAlv7TOOPHoLx60IP4JIgjFXQQuhhUKv0GkLc4KBNj12E6K39+0ppG+XjwCrAcIXCyJrDiqeyoR0llS68ag9172FAvSug1myzcYVupz7JcA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass header.d=arm.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=OtZkRumGOk7+Reb4PvMgNUYCNuNP4n4tNwTaY+pBIKQ=; b=ntZi65uTD3O9ij/ntCpXAwI7rxBjRo1iiG6joCY4kbyUZUpIeNydI0syCvvObJTcaUturvSs/FORP6qszkXMTBLB3hH9OU0wO+2lsGFfNGFvQXeHAuzV54vvZ42J6C8SEcHvodpGxbVW/67D3heofnvjqqbcByWBWMwp/9+GalE= Received: from AS4PR08MB7901.eurprd08.prod.outlook.com (2603:10a6:20b:51c::16) by GV1PR08MB7875.eurprd08.prod.outlook.com (2603:10a6:150:5e::9) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5723.26; Fri, 14 Oct 2022 14:31:45 +0000 Received: from AS4PR08MB7901.eurprd08.prod.outlook.com ([fe80::3991:ebed:c15b:de1e]) by AS4PR08MB7901.eurprd08.prod.outlook.com ([fe80::3991:ebed:c15b:de1e%5]) with mapi id 15.20.5723.026; Fri, 14 Oct 2022 14:31:45 +0000 From: Wilco Dijkstra To: Szabolcs Nagy CC: 'GNU C Library' Subject: [PATCH] math: Fix asin and acos invalid exception with old gcc Thread-Topic: [PATCH] math: Fix asin and acos invalid exception with old gcc Thread-Index: AQHY39htPV/DgcJ2WkWVCpkd2IWFSA== Date: Fri, 14 Oct 2022 14:31:45 +0000 Message-ID: Accept-Language: en-GB, en-US Content-Language: en-GB X-MS-Has-Attach: X-MS-TNEF-Correlator: msip_labels: Authentication-Results-Original: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; x-ms-traffictypediagnostic: AS4PR08MB7901:EE_|GV1PR08MB7875:EE_|AM7EUR03FT008:EE_|DBBPR08MB6315:EE_ X-MS-Office365-Filtering-Correlation-Id: 2a580900-db96-4dde-4d9e-08daadf0d73f x-checkrecipientrouted: true nodisclaimer: true X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam-Untrusted: BCL:0; X-Microsoft-Antispam-Message-Info-Original: WD4iB11NQjZfV1Dxg8o00rptfEdrTfAxNt5RJSbAdmKfbHiOjQS/E4aDJJraM+eR7T+VHv5JYV3HM/olcm3pnbRJnKyfLKDIDat3NkdBDkOx1+/Vc+vtx3wCt0+UyYvY9QTQnmb1WAhVYBqy2LTv+Xe75+79NeE+Wi5TJVP4EjAODH8V8wVUYFHPinIbhtvWR38VQ4BTazyxPPvl7fASAwZKPGZTMvrIuMJcEM4wco+bFCcvtBMalTXyOOFh8iE1uaw8HCGLod+GOVyRw8n4Vo49JdugW5MkyvAmQAbBxOFB+fDLmXvYUkXU0G1unzMUNYaPVsmjB6fPf8Mmz/OYUKpPczRlZYG8FNxrcExtkasm9Nk9m69RfD1gfgMLMzyIHS7enInCshxachwB6R/S0XVMUV+YgwJ0xLnNp63GQVp1lQWURadCTOc2w3LKGIccdF0X+ELUVSvnAo5wtfokzjSfHZlgw/2HvX06MJejXKapeWULH1xhphSn5LOMF54/VG6/j2FgKQQQV0w6btsmLWEcxYdvD8blxzOtuDPCdjSo4I3pZmvIdtC6zLK8HoqvVqcwajD22YA27+5VXvDoeCIK68ppmCVNFTwXROoTWd9ER+3Lm3i6r8m1lSXrJ/BOkWobMxGyfxdthcA/xY76H/dfDxmZ5C4gQ34Cq3qNEjw4wi3IyQMpoAqjkawFP+yGxt55vRzedM4WRK+lX91TxY2pr1uJWG04dK+DE4teNSCqqF5WevzJRmn5kI+0T82ch5z/FtNz/XRcjdOLYPJOrFW8ThNVXWOWueVxBEfHgbA= X-Forefront-Antispam-Report-Untrusted: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AS4PR08MB7901.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230022)(4636009)(396003)(376002)(346002)(136003)(39860400002)(366004)(451199015)(66946007)(478600001)(71200400001)(122000001)(38070700005)(966005)(86362001)(38100700002)(83380400001)(41300700001)(8676002)(66446008)(66476007)(76116006)(6506007)(7696005)(64756008)(26005)(4326008)(66556008)(55016003)(316002)(91956017)(186003)(9686003)(52536014)(6636002)(5660300002)(2906002)(8936002)(33656002)(6862004);DIR:OUT;SFP:1101; Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-MS-Exchange-Transport-CrossTenantHeadersStamped: GV1PR08MB7875 Original-Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; X-EOPAttributedMessage: 0 X-MS-Exchange-Transport-CrossTenantHeadersStripped: AM7EUR03FT008.eop-EUR03.prod.protection.outlook.com X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id-Prvs: 0f7b9b61-b0ec-41ce-d0ae-08daadf0d1f9 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: DwQApE114WDk8VqfpqlrBYL2aVX37cRjOMnue/Y9IxPyG7ItiIOtLLvOkax2gpv3tiaYuIlYkmBNB2sXmAKY4b4adKcqxdAHQYede9qGU93d3vrDU8c0njwqbUpUrqvkbUnRL37bDNT43rNtRfzP5ETbttkUWMI5W/Nw1VCAtacvlKq1jMVLiXAwlyHE9qdELds34N683vTlcyqY4HLoZK0Oh2rw5Kp8c6G8VKaUqqJiZDePfHp6kMnZIHZJXLgXoF46okYd+VKb1dXGEanb+rG/v+LCjaw5BKvnf9coNJ+tilJu2V4RGx7XkH23rpE/yknyjmPI8tb1hzrweI0RohYIhZCVJxejKGu/dW4JEs/B4NR1lkCGwKwY2XpH/dOM/91B7emKkLHhVE0Iz38K3y40ud8QzJltPr1A2+p6xrMmKNhAg1MLsLskInAaX5WAGQUq5XfJ09SP2Z27oNCvkXbWWlyqfEbbrXChR+sv7K61iWXdHanD+Pa+E/SJPyAprbE9gPmNZtXAqr+wuK+bUcMDCULDZk3tFOMfa9vYRZVM5DlGspNwYeRbshKUd+UGSH0gZ+qDxlToYmaRot+aiALbt9zPC0qVPwa87snJ73zT03iZQ5NOU+4gxT0Gr/fLckq1nBBlkwPU+SWiuJ0GUeIKucbLI18/6ZQrShYS/EaqFTBv+rULE5qDS7H1cvUtarziGe66AJEMjCuAvUVvZVmAL2KBnGXcmoKcORZqwfdqC2sD55DM5dNLK3vXgkrHSCd4zRR7UeMCUzzntfAfv+BsSWGDqmFjHh+9bB+wuVC9nYBKo1p2Yv90O/A/v7+2 X-Forefront-Antispam-Report: CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230022)(4636009)(136003)(346002)(376002)(39860400002)(396003)(451199015)(40470700004)(36840700001)(46966006)(81166007)(478600001)(316002)(6636002)(966005)(70206006)(4326008)(70586007)(8676002)(9686003)(8936002)(26005)(41300700001)(6862004)(356005)(5660300002)(186003)(336012)(7696005)(6506007)(2906002)(82310400005)(47076005)(83380400001)(40460700003)(86362001)(82740400003)(36860700001)(52536014)(33656002)(55016003)(40480700001);DIR:OUT;SFP:1101; X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 14 Oct 2022 14:31:54.0884 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 2a580900-db96-4dde-4d9e-08daadf0d73f X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com] X-MS-Exchange-CrossTenant-AuthSource: AM7EUR03FT008.eop-EUR03.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: DBBPR08MB6315 X-Spam-Status: No, score=-11.2 required=5.0 tests=BAYES_00,DKIM_SIGNED,DKIM_VALID,FORGED_SPF_HELO,GIT_PATCH_0,KAM_DMARC_NONE,KAM_SHORT,RCVD_IN_DNSWL_NONE,RCVD_IN_MSPIKE_H2,SPF_HELO_PASS,SPF_NONE,TXREP,UNPARSEABLE_RELAY autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org List-Id: Hi Szabolcs,=0A= =0A= > This works around a gcc issue where it const folded inf/inf into nan,=0A= > preventing the invalid exception to be signalled.=0A= >=0A= > (x-x)/(x-x) is more robust against optimizations and works for all=0A= > out of bounds values including x=3D=3Dnan.=0A= >=0A= > The gcc issue https://gcc.gnu.org/bugzilla/show_bug.cgi?id=3D95115=0A= > should be fixed on release branches starting from gcc-10, but it is=0A= > better to change the code in case glibc is built with older gcc.=0A= =0A= LGTM.=0A= =0A= Reviewed-by: Wilco Dijkstra =0A= =0A= Cheers,=0A= Wilco=0A= =0A= =0A= ---=0A= =A0sysdeps/ieee754/dbl-64/e_asin.c | 18 ++----------------=0A= =A01 file changed, 2 insertions(+), 16 deletions(-)=0A= =0A= diff --git a/sysdeps/ieee754/dbl-64/e_asin.c b/sysdeps/ieee754/dbl-64/e_asi= n.c=0A= index e7ea0cbe8f..6b7c971e76 100644=0A= --- a/sysdeps/ieee754/dbl-64/e_asin.c=0A= +++ b/sysdeps/ieee754/dbl-64/e_asin.c=0A= @@ -165,14 +165,7 @@ __ieee754_asin(double x){=0A= =A0 =A0/*---------------------------- |x|>=3D1 ----------------------------= ---*/=0A= =A0 =A0else if (k=3D=3D0x3ff00000 && u.i[LOW_HALF]=3D=3D0) return (m>0)?hp0= .x:-hp0.x;=0A= =A0 =A0else=0A= - =A0if (k>0x7ff00000 || (k =3D=3D 0x7ff00000 && u.i[LOW_HALF] !=3D 0)) ret= urn x + x;=0A= - =A0else {=0A= - =A0 =A0u.i[HIGH_HALF]=3D0x7ff00000;=0A= - =A0 =A0v.i[HIGH_HALF]=3D0x7ff00000;=0A= - =A0 =A0u.i[LOW_HALF]=3D0;=0A= - =A0 =A0v.i[LOW_HALF]=3D0;=0A= - =A0 =A0return u.x/v.x; =A0/* NaN */=0A= - }=0A= + =A0 =A0return (x - x) / (x - x);=0A= =A0}=0A= =A0#ifndef __ieee754_asin=0A= =A0libm_alias_finite (__ieee754_asin, __asin)=0A= @@ -334,14 +327,7 @@ __ieee754_acos(double x)=0A= =A0 =A0else=0A= =A0 =A0if (k=3D=3D0x3ff00000 && u.i[LOW_HALF]=3D=3D0) return (m>0)?0:2.0*hp= 0.x;=0A= =A0 =A0else=0A= - =A0if (k>0x7ff00000 || (k =3D=3D 0x7ff00000 && u.i[LOW_HALF] !=3D 0)) ret= urn x + x;=0A= - =A0else {=0A= - =A0 =A0u.i[HIGH_HALF]=3D0x7ff00000;=0A= - =A0 =A0v.i[HIGH_HALF]=3D0x7ff00000;=0A= - =A0 =A0u.i[LOW_HALF]=3D0;=0A= - =A0 =A0v.i[LOW_HALF]=3D0;=0A= - =A0 =A0return u.x/v.x;=0A= - =A0}=0A= + =A0 =A0return (x - x) / (x - x);=0A= =A0}=0A= =A0#ifndef __ieee754_acos=0A= =A0libm_alias_finite (__ieee754_acos, __acos)=0A=