From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from EUR02-VI1-obe.outbound.protection.outlook.com (mail-vi1eur02on2088.outbound.protection.outlook.com [40.107.241.88]) by sourceware.org (Postfix) with ESMTPS id 11FB43858D39 for ; Mon, 27 Mar 2023 09:54:31 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 11FB43858D39 Authentication-Results: sourceware.org; dmarc=pass (p=quarantine dis=none) header.from=suse.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=suse.com ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=SpRHBEAukUt/E8S1nfUDJPCq6i0LpdR007JRJgxAeGI/YOkrmrxp2VE/WyH8TOOyNaCp4/UXy4jmXcARMGZuFWk9cmus4nOFKllvkxsRM0YigBi32/xKU1lkTbHbdQbM8Z1n/lUE5xYwmtdcyw8bEUIx29wtSaGrRyF+H9F1DMz2cxJqUf5vf6qNCei0VfOnNeQTlAxrRKwLjk6005/YEHnKdC4CrGfTRIpxJ0WXsbdiUXxJiKRRE536nH5KvPNMOSakgT0/2M67pLS2uoIahyIU7BLaQtjNNGoZ3SgQh9/05pNSrOlm5QPR8GfVJgrPeltJ5unbWEM5T5cA8YJcSw== 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=vb67N+8m2phoevN5GIQdOAzCheWT12d6buUtKXAU4nQ=; b=Hoe1u7pXSRhjFbfQMLwto+wwd5+sP1O2Qd1jXUqPHzPDmjeThUInbgn/aomO8px8u3s1W1UlcKvBQumDLV7DPbG2rjcBQPfAXCg7Ymd6Vni20GbY0hHn3obgf4xnEsm2v1NAucFT/saFE08uuCs0LlY4yotGvBpAY1FoAA6COMiOU3SDji1R6BiVuipdB8dKjiyZGEjdWLlymxR04VRSOiWh9kB/TJH6V13cEHSR61ltOFqkKsBNQjq/s2bI/8lpAsVTVarH/znt2DK7hd3czSks+qbzgdHM36cJnQPUMqf37HTNlQz1D3XRoMLnZh2ongAQjIYxBK876M2q+5gsSQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=vb67N+8m2phoevN5GIQdOAzCheWT12d6buUtKXAU4nQ=; b=pB6UJLsZRul5JB0vEo0WdyMF1FWQpavpr2S70k5MTq/OkokE146hNbiw3YQbBMhqAB7sefkf3Ud47RATfCLiUqenjGjWqUEZX3bcJfAY3FVNxsrRdG3pJ0hJeqCYtWJL1otD6a81iYLqxG+UqQL1mzNYpsU52qC06CX37ZMstX1u7V/ICp6Oo5YM4wHfzTXGCSsHFinYZFgM1kMX6F4cnuuVujMidPhoU9fDRPXaox5fwN0O6Zqtcz/sxL5PWDUSLH0OdAwuOW55G6zih0gF4n5OjsupsEuclZeO+nS6nZvqtoU2P8GE4KXjlOixue8yEd0JTr06i7s/jBObLHsxPw== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by PAWPR04MB9863.eurprd04.prod.outlook.com (2603:10a6:102:37f::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6178.38; Mon, 27 Mar 2023 09:54:28 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::154e:166d:ec25:531b]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::154e:166d:ec25:531b%6]) with mapi id 15.20.6222.029; Mon, 27 Mar 2023 09:54:28 +0000 Message-ID: Date: Mon, 27 Mar 2023 11:54:29 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.9.0 Subject: Re: [RFC PATCH v2 2/2] RISC-V: Add support for the Zfa extension Content-Language: en-US To: Kito Cheng Cc: Christoph Muellner , binutils@sourceware.org, Nelson Chu , Andrew Waterman , Palmer Dabbelt , Jim Wilson , Philipp Tomsich , Jeff Law , Tsukasa OI References: <20230327080107.3266866-1-christoph.muellner@vrull.eu> <20230327080107.3266866-3-christoph.muellner@vrull.eu> <981c0ad5-3e84-d2f3-c14a-4c7bb70749a9@suse.com> From: Jan Beulich In-Reply-To: Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-ClientProxiedBy: FR3P281CA0086.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:1f::13) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|PAWPR04MB9863:EE_ X-MS-Office365-Filtering-Correlation-Id: 980b6592-c387-48f3-610c-08db2ea9412f X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: YD9Nl2N9iFmT9AbUROKLSGi/wsG2MSY+hYQX0feqkLyTx0d3tvtZeseZJ0SFmCU6iIY4bZE/o+Lr7a/cWbjWFfElSSOJOygfEmsUafcxvklOtZwt7hLx/4eEy2PE+7LD8hND+mvtjdkA339hE7habkw8WaiSlTp8y9oWqNaKzPdxAeLRRHobpSzGVnmT9tQiP/08fPl+SiBDZ4oLGWYYLnL8hr+VCH7bEQiFvZ+zoE1u79JU14zOjjmv2NqbZ/EGy0ZXw01zJmywsQ3/2ZCwKGcsqN2XdcVyJQid31o62ESIflLf1oFO6HyRUrI/VfnoNUDOPSHN5of56rjmpAe1cNMTVhkPLQQXnIxSSa+fZ+DxD0pISuuxpqRYKykDMa3Ov9KwA8mLlZPd0E/sZXlmOylJlwobvQ/DquLyJ8YRnrQKEHANJjKu165wyNeAEtN7XKkjJrmUF2HcO1YwyzfDkVd/cT9g1MhGhTRfuQouGZXvnZpd2jzL8miRY6JH3j0gD4hvGot/WJKSj8H36Yo0xCS3hTFjfkBPGcwkrCIlYMcCXYwE+rI8jn/h5erscKsCEqrGScM+3u+CtPZwqMHeovC1y15bMZ4tGLQc/42CCX/BmW1zeYU98Zynct/A58sD X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(396003)(366004)(376002)(136003)(39860400002)(346002)(451199021)(36756003)(2906002)(31686004)(66556008)(7416002)(4326008)(8676002)(41300700001)(316002)(6512007)(2616005)(53546011)(5660300002)(8936002)(186003)(66476007)(66946007)(26005)(31696002)(966005)(6506007)(83380400001)(478600001)(6486002)(54906003)(86362001)(38100700002)(6916009)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?MHNHUFFJdmlTUElNbWxrbjJVcG9iSUU0eC9UUGQvRDdySmMrVnZlaEV0cVp1?= =?utf-8?B?VVNJdUdGUjZWSDVBeEhPQmZuSDhBWk5FM0xWVlNMa1J3cHlIM2JkYzdNd1M5?= =?utf-8?B?SG5CNExVSTAvV21xTWQybmU1Qks4U1A0aHV1ZERqVWhCUWtMTXZ4VklpbHlY?= =?utf-8?B?a3RiVW8xdGV6YXNFNUljc2IyNjl4ZUNsb0pRKzBvYXovWW9mb21MVFNvZDMw?= =?utf-8?B?YnNzR1dWMFQ1VlY1ajEzNkRtbFdJR2dsdld4VEZoZXJ0SHYrMENBZy9rQnB6?= =?utf-8?B?aVRsSHBMNFNBR2hrbTlpb29scVBBbCsvdWtJSzZtZERpVjFvVmFCNENLczZP?= =?utf-8?B?U3ROOUc2Rms2aXhmeVQ0RWY4RU8yUHhWOXlMKzdrQ2krY1krL0pVTVZTNkp3?= =?utf-8?B?VEhCdDU2aGI1R0NXdVJ1MU9aZWJBdzBBMk1pRzd4b290Qi9vQTRWdzRJOStq?= =?utf-8?B?aG9tUVg4eWNWTVdqOTc1SzlPMnFCWWJOZU1nckkrM21jVFF3U3BUaU13cEF3?= =?utf-8?B?azBDQXova0V2amt5Q3RCWGZCSS9JSVU3UGhWOExtTW5xUXp6Y1l0TmJkNEts?= =?utf-8?B?aHhJb2NLRkpyYUJwUlk3aStjUEZ4NUVjNjZHZmpMR0lZZm1RbDZNVVZIdDhO?= =?utf-8?B?eW1FWVBxZUhsWldpZmRBYjVMbzN0bml4ODhCL3RmdkhlbVJXN0N1cDRMMjA3?= =?utf-8?B?Wjkxazk1NStSbTZJS2xtd2lKMUtHTnFEN2t5ck44dTFLMUtWcS8yRXhQZmQv?= =?utf-8?B?RWl2eW9Ubk1iYU9lL3N0WTBNbTA4STNZVE9ZMUVqVGoxUEEzaHIvYlRtTllV?= =?utf-8?B?Z0VGdVQyMmNFOGFldTdzeU84aWdMUHRHWW9wTFVhUFQ0VWtSOTJIdm4yR1lS?= =?utf-8?B?QnBsaVVKRER4S0VReE5rYmFWNEtiaUorWnZobnBLekFUbHZDcUdHL1dTbGpE?= =?utf-8?B?cXZkTkV5VnJ2R0hvVzlDOW56RVhlY2NCSVRvSVVjZFBiK0dnWW1RQmVwNktX?= =?utf-8?B?b3ZGSkhGblVobm82c284VHB2WDI2TjdnL2VpVWtFTkY3V29LT2tiTUhIaVE1?= =?utf-8?B?bEhBOEROcWcvK2hKczlLZ1lUcjFNSmErY21yQVM0ZTdRM1B6TXNSSDN1K0kv?= =?utf-8?B?enVWNGhTWUd2Z2MvME5WV0dmTkI4amRVRTFuYi9yYkVmUFppRW1YeEhWa0ZB?= =?utf-8?B?Tk9UbGVwdUNpR0RaaXBvdnVhYW5ZaU5EMVBkU3FPU1dKYUt2VUJrVHpzeDRp?= =?utf-8?B?V3c0QUxsbm82M2ExRzZpNTBRc3VnNEJQa1ZaaTlEellCWU1TM2QwYTVsS2ZX?= =?utf-8?B?c2IwWnFZaFBrMGQxYUVBVXpCVjBRL3hiamtuNVJJcGdMQlNFWHlWd2NWZHBs?= =?utf-8?B?ZG5lYjJZemFCaW5jZ0Vxa0YvZVM3WHVsRUM4ZGMvK2VXWlZkZzNRenJRWUxB?= =?utf-8?B?NjViVExlV3ZmVHJUVXJWRnFGZmVmdXJVbWdXd3dqa2hjdXNLYXJoMmFJTS9X?= =?utf-8?B?WnlJMkE3cDlTZ2hYMnIxS2pCQUJnZFJRT2NXc0QzVmNpRE9ZZUtoUXJYenN2?= =?utf-8?B?b0k4bWNCcm1EWFpFeWNCc0h6VHZJTWFLdndtN0xKalM0MmhCRWRLM1Zwbkpv?= =?utf-8?B?TkpFbG9LbVpsS0pIdC9tc2NDTy9DVzJrWmt6dy9lOTJCRmhBem1uSHhKcjdV?= =?utf-8?B?WXpSRUNXMmpiWXdWVW80OUh2RTJ2eWZGbERQWnh3cjhLYVltalRsZkUvd1VL?= =?utf-8?B?YTR4dE5YMnJXQVNBSkNuaWljd0JQNENzdWRzNFVlZndMeitlbnl1dnVRaGVS?= =?utf-8?B?YnpSR1o3UnhadTlpayt5emtCeWw5aHhScTFWRXFzN3UyNTdUdWlyZG9pWFcw?= =?utf-8?B?SWlyMURtWVpmVnBvakduRHpPaXhSdzFmaUdaY0JtdVdSMlBSa2FjYnVsdW5C?= =?utf-8?B?QTR2WlRqNVRtWkxUb0lNcXZnd3ZDZ1FFTGhjdnRVRis0bFpuNlg3RWVBaTg5?= =?utf-8?B?VE5oa0NNbVpZc01odW1TaVpJNTZGT2g4UnBocWYyckJlV2I1SVRuREdVQTNL?= =?utf-8?B?ZVZzYnA3a3haMTZmcTVUNG5YV0IzYnpnL1dUYW4zSW5DT1Zmb2dTbTQzc25B?= =?utf-8?Q?Di5UL6tL825SHx7eOEmndN7Yb?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 980b6592-c387-48f3-610c-08db2ea9412f X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 27 Mar 2023 09:54:28.2697 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: bTXlm117QjFhRzltuag8reoxXfiHscRM4LPZm11nnkSKUeYS0IlkrKaTKa0bq/OnW8nJwJNmRZ+rQPzsWi9PTg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAWPR04MB9863 X-Spam-Status: No, score=-3028.1 required=5.0 tests=BAYES_00,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,KAM_SHORT,NICE_REPLY_A,RCVD_IN_DNSWL_NONE,RCVD_IN_MSPIKE_H2,SPF_HELO_PASS,SPF_PASS,TXREP 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: On 27.03.2023 10:53, Kito Cheng wrote: > Wait, I mean the hex floating point format defined in C99/C++17, not > the raw hex value. > so something like 0x1p-16 (0.0000152587890625), 0x1p-2 (0.25) 0x1p+0, > -0x1p+0 could be used for fli.* instruction. > > You could use printf with %a to get those values. > > https://gcc.gnu.org/onlinedocs/gcc/Hex-Floats.html > https://developer.arm.com/documentation/dui0375/latest/Compiler-Coding-Practices/Hexadecimal-floating-point-numbers-in-C99 Sure, my (secondary) suggestion ... > On Mon, Mar 27, 2023 at 4:39 PM Jan Beulich via Binutils > wrote: >> >> On 27.03.2023 10:01, Christoph Muellner wrote: >>> --- a/opcodes/riscv-opc.c >>> +++ b/opcodes/riscv-opc.c >>> @@ -110,6 +110,16 @@ const char * const riscv_vma[2] = >>> "mu", "ma" >>> }; >>> >>> +/* The FLI.[HSDQ] value constants. */ >>> +const char * const riscv_fli_value[32] = >>> +{ >>> + "-1.0", "min", "0.0000152587890625", "0.000030517578125", >>> + "0.00390625", "0.0078125", "0.0625", "0.125", >>> + "0.25", "0.3125", "0.375", "0.4375", "0.5", "0.625", "0.75", "0.875", >>> + "1.0", "1.25", "1.5", "1.75", "2.0", "2.5", "3.0", "4.0", >>> + "8.0", "16.0", "128.0", "256.0", "32768.0", "65536.0", "inf", "nan", >>> +}; >> >> Especially for values like 1.0x2^^-n (entries 2 and onwards) I question >> the spelled out numbers to be the most suitable ones usability wise. At >> least some alternative spelling (e.g. 2.e-16) ought to be recognized as >> well. But since there are meany reasonable spellings (leading 0 omitted >> in 0. or trailing zero omitted in .0), I guess I'd prefer >> if values were actually parsed as a floating point number (e.g. via >> ieee_md_atof()), and then matched against values stored in the table. >> One might further consider to also permit the 2nd form accepted >> elsewhere, see read.c:parse_one_float(). ... here wasn't meant to collide with yours. What you're asking for is covered by my primary suggestion (to actually parse the values), extended by the need to actually recognize C99 hex float in the parser then (leaving aside for now whether that's feasible in the first place). Jan