From nobody Sun Apr 12 04:22:09 2026 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=reject dis=none) header.from=sifive.com ARC-Seal: i=1; a=rsa-sha256; t=1772017757; cv=none; d=zohomail.com; s=zohoarc; b=KdHsfCiErAZjY2aOSnCQm/9Yu25vTl/L9qB+mW7rO6WUuvDeNsARPc1+/gvlxx+Um+TENkEzdnx7zZjLbqsPvc2FqbWC+S+8jUhzACwvpwCuU2hFSHafM5A/ZrsJYbYtfeu4lTNd3UpGrhyRvUp6zuxThXTmgNKuSgSYmYEOsYw= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1772017757; h=Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=Gddfzyp6SM5HJwk8s9N36VD15VTno9sNX2Z0ZJUILfE=; b=mbmoBnCFTr2TZXDjOWuKzVMMYxWq9P3mcwmcuYuG2X1AwLmHUAy1Veyhs+kUqoFZODkBvhmI3Xk2qRdzaVXywIfVOjaOqxzUUDR31mE454On0ptcxjmQhDBi2fKJtR6VAJZm4+NHDPeZ05wKy/9kim8yK8yXcHFOu80lH+Wpsio= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=reject dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1772017757503943.2878397500969; Wed, 25 Feb 2026 03:09:17 -0800 (PST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1vvClJ-0007v7-HG; Wed, 25 Feb 2026 06:09:01 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1vvClI-0007uD-8T for qemu-devel@nongnu.org; Wed, 25 Feb 2026 06:09:00 -0500 Received: from mail-pl1-x62a.google.com ([2607:f8b0:4864:20::62a]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1vvClG-0003gM-Oo for qemu-devel@nongnu.org; Wed, 25 Feb 2026 06:09:00 -0500 Received: by mail-pl1-x62a.google.com with SMTP id d9443c01a7336-2aad1dc8856so49976215ad.1 for ; Wed, 25 Feb 2026 03:08:58 -0800 (PST) Received: from duncan.localdomain (114-35-142-126.hinet-ip.hinet.net. [114.35.142.126]) by smtp.gmail.com with ESMTPSA id d9443c01a7336-2ad74e35133sm140452665ad.9.2026.02.25.03.08.55 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 25 Feb 2026 03:08:56 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=sifive.com; s=google; t=1772017737; x=1772622537; darn=nongnu.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=Gddfzyp6SM5HJwk8s9N36VD15VTno9sNX2Z0ZJUILfE=; b=GpeS7qO8uxYls5Fg+8nHnVn0/98nMX0XgHkFJnFB1gPKLLObaFv6Rdm1Qp5ITMUOBn oypT1MBqKwTBp+hjbnHdGTmtHhDs2V+JPZ9W7Obrcjy4HtIxgeTL6ILfrDRE25zHDAr3 wNVqd6zgeInCitFNe34FZ8fHxH65vw1Gd6Qcrb5fqK1NibSUEdUWtVjiB1F2dqDj31Zs iuQItU7kXLZ6e0E20GC+ETJ5JllaMuiExT7tHeLaZb3DYc+Eht9JEcWFwB7J4Mi/IS75 OwCLuQkv327pCC3xy0LVzcTXbgJn5NX2G4Wt9EREXd8TJ48yCrB8xp49Bv9S03vk3cC+ 3sQw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1772017737; x=1772622537; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=Gddfzyp6SM5HJwk8s9N36VD15VTno9sNX2Z0ZJUILfE=; b=qtCQOOIsA5ESW1V7ZjQKhzIsmNp2AAG3tQ9q062K9uvsHCZ4/7y4zWptDOclYUR75m 0dnS++dTJHjlxzLbxN939GAbIQQWMbEW0VV0nJOZokn0Ec5z3lr9+EkV1UExZbAO1Tej Sa74XFMMGcfp55DdYCTzOrERClH9lqUp7UAYcoyWFxdLVwka6LNgu06bkTnvtXR4w38d ZwvXOSdHVITus/vqWsCLF6cMRKwnV0FPfWkOO7oCtqSNfuCkeuaGlkbXuvnHdJCWIVux bNP4rwYR/jaBdb4CAqdVZLSBh09Kfto/Qs+enwNIluFbmRbxBzqvD/7f55X3W+CQRBLj y4zw== X-Gm-Message-State: AOJu0YwDmofn5L6gJ/ZFyjM4qhZI3iSmwGUDtrLw95cg1RDM3Awg36L7 XK15uadEcxDFHWO1Ohhqfw3salMZmyPTABxvav2BQzRKINACQ2WF88rQzw5Xe8kYbln20GDqi96 Et6ZjUmFWphZlXFeluZbt3JFMUijr5tk99CfaFbtfzBMawx66S4QpkkBGA1NHLvxhWYMDeT+GwG B9QxBtqcYjftO5HboGDBpK5WP+l4vm8oMZll7/ipP8A7b/ X-Gm-Gg: ATEYQzwuSL67wcpN3lDnYEavJWTZrKfdVtLS5ZeSqs21GktY9WrFLVmC9W5upHxOrbl Bd/4ky/THrb+4yP3DtBWVbphbSD+tFIH3Gk7yx6IAVnRvHtludIOtdRLE3FuzF0XHz4WV+7pRYU DloBUFTalb+df60atkgBtWqK+heiHTiMNP/jj/qOherHx0tFdrcmyueFxsF/lugOymG+DPYkNDj muPRz3gi47CAXz/QNUVxwRsmMjAOfS5mmMxBHd43PFOM6OUp0GvmoVrtlK1V0RYY+9MDQ37sEre 26zwxlxta8S0KqZHgR0QN9kzZJYDjJEqIzfrYsCzLyHoB5B4ZgCC40nhprbdC5IGILm0+bXt7Hv DRfiQNxcp1T3Nn6/CyzwTUf1nHBZrtQxa8BCJY82ChRyU/eoCluQHfhSIy8+h4iLlUizbWSsx30 h/bRwQeYMIRMDLPcZZWtn2IDCUEDIpm8cWiPEtRgdSParUIxoiKZQgH8HfSpbXYfr7ugiaVvztd 3OoN+e3nSIsq3267svVSj3ssaY= X-Received: by 2002:a17:902:cccd:b0:2aa:e3d1:1438 with SMTP id d9443c01a7336-2add11bb978mr22387405ad.12.1772017736891; Wed, 25 Feb 2026 03:08:56 -0800 (PST) From: Max Chou To: qemu-devel@nongnu.org, qemu-riscv@nongnu.org Cc: Aurelien Jarno , Peter Maydell , =?UTF-8?q?Alex=20Benn=C3=A9e?= , richard.henderson@linaro.org, Max Chou Subject: [PATCH 1/3] fpu: Fix repacking issues in the uncanonical step for E4M3 overflow Date: Wed, 25 Feb 2026 19:08:00 +0800 Message-ID: <20260225110802.1217946-2-max.chou@sifive.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20260225110802.1217946-1-max.chou@sifive.com> References: <20260225110802.1217946-1-max.chou@sifive.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=2607:f8b0:4864:20::62a; envelope-from=max.chou@sifive.com; helo=mail-pl1-x62a.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=unavailable autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: qemu development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @sifive.com) X-ZM-MESSAGEID: 1772017759674158500 Content-Type: text/plain; charset="utf-8" In the uncanonical step, the input FloatParts will be repacked to the target FloatFmt. This commit fixes following issues after calling uncanon_e4m3_overflow in the uncanon/uncanon_normal functions. - Add the local exp update after calling uncanon_e4m3_overflow in the parts_uncanon_normal function. - Add the fraction shift after calling uncanon_e4m3_overflow in the parts_uncanon function. Fixes: 27e989f99c ("fpu: Add conversion routines for OCP FP8 E4M3") Signed-off-by: Max Chou Reviewed-by: Chao Liu Reviewed-by: Richard Henderson --- fpu/softfloat-parts.c.inc | 2 ++ 1 file changed, 2 insertions(+) diff --git a/fpu/softfloat-parts.c.inc b/fpu/softfloat-parts.c.inc index 61b07307bf..a738758aee 100644 --- a/fpu/softfloat-parts.c.inc +++ b/fpu/softfloat-parts.c.inc @@ -387,6 +387,7 @@ static void partsN(uncanon_normal)(FloatPartsN *p, floa= t_status *s, case float_expmax_e4m3: if (exp > exp_max || p->frac_hi > E4M3_NORMAL_FRAC_MAX) { partsN(uncanon_e4m3_overflow)(p, s, fmt, overflow_norm= ); + exp =3D p->exp; } break; =20 @@ -496,6 +497,7 @@ static void partsN(uncanon)(FloatPartsN *p, float_statu= s *s, break; case float_expmax_e4m3: partsN(uncanon_e4m3_overflow)(p, s, fmt, saturate); + frac_shr(p, fmt->frac_shift); break; case float_expmax_normal: default: --=20 2.52.0 From nobody Sun Apr 12 04:22:09 2026 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=reject dis=none) header.from=sifive.com ARC-Seal: i=1; a=rsa-sha256; t=1772017756; cv=none; d=zohomail.com; s=zohoarc; b=HCl4+Pc9Vc8AGUY0glrRKKl60x+Bx1siT1l+Q+l8dAQwo13Y/eXChsqvAGKon2dqQWz9VnYlCWAuSBeDlOJpZY3E9Dp0lIFxHkrc02igNnstYQJtdtRQXQ6tuE9Fyu+KSA02c11Z0cbbJYgjA4G4EO0K2pNjM9RoVmtcePcv+dI= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1772017756; h=Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=qjuwdpdQeEsHuCFiNGe8ard4PSb9WYSbM0q1xrkNAdU=; b=BVuTTL9La7TOf3Uwzn9cqEr7Nuf1/rqai0la4CI42APeX9JaClDVd5K4L35nI8yVlv3DTL3EAwnjDWC0cnVNE5VsltN2XHO8hQEcPTdydBBx+W+wun/fuFoHl8xpCRwXYu+APfF1EIJDjSVSZVqnpISDjQFhvxhTxI3IufHzIxs= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=reject dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1772017756704912.6215453167389; Wed, 25 Feb 2026 03:09:16 -0800 (PST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1vvClN-0007vz-29; Wed, 25 Feb 2026 06:09:05 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1vvClM-0007ve-55 for qemu-devel@nongnu.org; Wed, 25 Feb 2026 06:09:04 -0500 Received: from mail-pl1-x635.google.com ([2607:f8b0:4864:20::635]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1vvClK-0003gh-0q for qemu-devel@nongnu.org; Wed, 25 Feb 2026 06:09:03 -0500 Received: by mail-pl1-x635.google.com with SMTP id d9443c01a7336-2aaecf9c325so5241965ad.1 for ; Wed, 25 Feb 2026 03:09:01 -0800 (PST) Received: from duncan.localdomain (114-35-142-126.hinet-ip.hinet.net. [114.35.142.126]) by smtp.gmail.com with ESMTPSA id d9443c01a7336-2ad74e35133sm140452665ad.9.2026.02.25.03.08.57 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 25 Feb 2026 03:08:59 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=sifive.com; s=google; t=1772017740; x=1772622540; darn=nongnu.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=qjuwdpdQeEsHuCFiNGe8ard4PSb9WYSbM0q1xrkNAdU=; b=YfruUqahVQE3VwFtMCIA9bvpFgIDplXOn1FuVJtIX0S+xzt4RKFUYXYiTtX0ut5GKX NHZ+182usBOR3JZbp46ad0HaJhLVoG5SgU1OPjAx+XQuIVltnBcX92wiC92IbQMFh25x ZvJhWKFBpLYNYdD2PGr6rhqLtx7ZYYQy6OLVr0lHs/8Rw27NfJqXIXhINo4IQ+xPnD/9 mdLyUA6rh6WiyWOdNRDQLZQVrzmqoIkiFVmR90VH/aEQsDxakvyceooN2dAgJHn9pNai iVYOX3msfPMPqPmDa0ViBAPw1S4547rJHyEOpgaKs3v2UsLnruh19PxVkorMXR86KylY xIug== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1772017740; x=1772622540; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=qjuwdpdQeEsHuCFiNGe8ard4PSb9WYSbM0q1xrkNAdU=; b=U1IQlgrcz1pFT5SVSYntPD5zY/Hyeb1fmJDWQc69OTRY/ZFks0VGClYdPGPxj3ba/Z OHFgRYoQ/Ut9dNDSF/ZKeALL+KLsPsYOrPEZYhHz2DdoeiQKUGQ21IbLGJ+XfbpFYfx5 z19ip7UHZurPimRzEu67a1gKyPXUKJdvZgrXzHS2j7pznLNy6coqQD1MK9lscD15Gk6D lnLISZfSboxJFBro9waq06Td/4WrEHJwAK5mkcKjHYU3RKeCu/x3ds4ZGuoH++Iz5b2n adYV21/A2nTL3EQx6wuNhOBEY1/exJ9QqZXTU6g7jDdkQ/jGKrHUIAgmZMsdEEqbfro7 J/uw== X-Gm-Message-State: AOJu0YzIy7SoFrssqZgaKrPmff4Hl2RSm/SWrOeeHrvTWcp0ielwirM0 oxr1tYaUbq5nMNSRrdai3pTdAOqIo/YEynksUyjW5KfUE0qJT4hrHN05ncRlouH1ufyPZ1dxtTr sjSDXH495/ZMtqr+em6ASgzsa0Ayxe46CG2THXG/Ybp6j7K1f/96Ow//lJ7xn9MVuv4JGWKkh4s kEOKstQmQP/Jdc06/XWv3fGhF2Acn1xWi1IcLRU9F7BdHq X-Gm-Gg: ATEYQzzkKDsOYkjzQDjdVewfP6QLXN2tjsZ4z3EaWGTOpVy1MAsr05MY4iFx2IUVPV5 vFXYvcaFg95T6W4uly/nBOfeRCPkdk8smTxDObsBYmaZEgx9lJsZg74XcZJU5cSA4E2BfDii0sU 9JXBbq4QkFG5cln8iJ+JC19ZvntWU/y28wJjDAcjPBZjvTXEUFuChQbbQ2TDAmyKGPH1/pFZefN u+5GEOao/LVErNe92yaqnY8paK5HvrW/aStiLcjvuWTOB5W4/XPu22MySVvGyAWCQeBDZ4jTz6b T60Z+a2cUT7OurJ0kCcNtgfllXzIMFrQnZc585hPIic5OrgimYHTcdvEKfssBcNZMjmaFqe73Tj 67q7qJQXieKr0eiwZ3K5CEN0RvDeWnVmVQn/lvKFTDvmcDrO5EqcMPK+0mIWz/adSELjej7N+33 8FaQy82N//HHJM3g8m+a1Ihd5W26w4E/PeYcZtmvchtlKFionkGTP+sMDEJiIDM5FEEG+orbCMB S6+t/X7bFIErC/vfYYB3KiyauDLlkJtlDAqEA== X-Received: by 2002:a17:903:2350:b0:2aa:e238:e20c with SMTP id d9443c01a7336-2adbdcd8822mr34166335ad.19.1772017739483; Wed, 25 Feb 2026 03:08:59 -0800 (PST) From: Max Chou To: qemu-devel@nongnu.org, qemu-riscv@nongnu.org Cc: Aurelien Jarno , Peter Maydell , =?UTF-8?q?Alex=20Benn=C3=A9e?= , richard.henderson@linaro.org, Max Chou Subject: [PATCH 2/3] fpu: Fix unexpected exception flags when converting infinity to OCP E4M3 Date: Wed, 25 Feb 2026 19:08:01 +0800 Message-ID: <20260225110802.1217946-3-max.chou@sifive.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20260225110802.1217946-1-max.chou@sifive.com> References: <20260225110802.1217946-1-max.chou@sifive.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=2607:f8b0:4864:20::635; envelope-from=max.chou@sifive.com; helo=mail-pl1-x635.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=unavailable autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: qemu development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @sifive.com) X-ZM-MESSAGEID: 1772017758362158500 Content-Type: text/plain; charset="utf-8" Infinity is a special case distinct from numeric overflow: - Numeric overflow: finite value exceeds format's max normal -> overflow|inexact - Infinity conversion: input is already infinite -> no flags This commit fixes the unexpect exception flags by relocating the float exception flag update flow to be outside the uncanon_e4m3_overflow. And raising the overflow|inexact for numeric overflow in uncanon_normal. Fixes: 27e989f99c ("fpu: Add conversion routines for OCP FP8 E4M3") Signed-off-by: Max Chou Reviewed-by: Chao Liu Reviewed-by: Richard Henderson --- fpu/softfloat-parts.c.inc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/fpu/softfloat-parts.c.inc b/fpu/softfloat-parts.c.inc index a738758aee..3c323c0cec 100644 --- a/fpu/softfloat-parts.c.inc +++ b/fpu/softfloat-parts.c.inc @@ -277,7 +277,6 @@ static void partsN(uncanon_e4m3_overflow)(FloatPartsN *= p, float_status *s, const FloatFmt *fmt, bool satura= te) { assert(N =3D=3D 64); - float_raise(float_flag_overflow | float_flag_inexact, s); if (saturate) { p->exp =3D fmt->exp_max; p->frac_hi =3D E4M3_NORMAL_FRAC_MAX; @@ -388,6 +387,7 @@ static void partsN(uncanon_normal)(FloatPartsN *p, floa= t_status *s, if (exp > exp_max || p->frac_hi > E4M3_NORMAL_FRAC_MAX) { partsN(uncanon_e4m3_overflow)(p, s, fmt, overflow_norm= ); exp =3D p->exp; + flags |=3D (float_flag_overflow | float_flag_inexact); } break; =20 --=20 2.52.0 From nobody Sun Apr 12 04:22:09 2026 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=reject dis=none) header.from=sifive.com ARC-Seal: i=1; a=rsa-sha256; t=1772017793; cv=none; d=zohomail.com; s=zohoarc; b=K9QMkhmlPlkC/H/c0rJcfG3K85RZ8eIeocJxaTmokl1+zn/2O+s51SOKso7UpciZ5QerqGX7YW3snORUp17x77g1w/ER3gc85uHMJneVrwqh7x9HeWAobhFJVc3myaDq3Rf2xdwbVG9rYq0/Eb0svV8VJnEmKSdnnVZy5pPTI20= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1772017793; h=Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=zGwKFeH5vaILGERB4AfQ4Ozm11H1PzIMpFkkBkAn/V0=; b=IIdROHJZL88gnMdZHM7HxViRFP3zJZfSAZrVMe5bS6rKTFv3EAej1QLatIw7hqhKt/hkHOZckFFqdLoJwBst5CfUjX7QAD39dgXN7HImxX153xqxv+vp3LMpoRpxi5vFT6qsCU0zI7TGchjOewvf2bwvdfqQYLBZyi/mdk3Z8IY= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=reject dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1772017793932237.11687452282786; Wed, 25 Feb 2026 03:09:53 -0800 (PST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1vvClO-0007xE-Tr; Wed, 25 Feb 2026 06:09:06 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1vvClN-0007wW-Bn for qemu-devel@nongnu.org; Wed, 25 Feb 2026 06:09:05 -0500 Received: from mail-pl1-x644.google.com ([2607:f8b0:4864:20::644]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1vvClL-0003gz-U8 for qemu-devel@nongnu.org; Wed, 25 Feb 2026 06:09:05 -0500 Received: by mail-pl1-x644.google.com with SMTP id d9443c01a7336-2ad9f2ee29aso12480425ad.1 for ; Wed, 25 Feb 2026 03:09:03 -0800 (PST) Received: from duncan.localdomain (114-35-142-126.hinet-ip.hinet.net. [114.35.142.126]) by smtp.gmail.com with ESMTPSA id d9443c01a7336-2ad74e35133sm140452665ad.9.2026.02.25.03.09.00 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 25 Feb 2026 03:09:01 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=sifive.com; s=google; t=1772017742; x=1772622542; darn=nongnu.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=zGwKFeH5vaILGERB4AfQ4Ozm11H1PzIMpFkkBkAn/V0=; b=W2JIcvpHHDlH+1/1/zWp7+YafJNfDmC4eV4zZpVdRgVtCRCIT5aaSHFqUMwjYCXdVb RQyHvNPSXlu5o/qcEzNvediCVrNJGgI+QtDHgs1SI6PiPwJhMwjwq+Z99feldQ5o0rUp u5DgDD3b/K8nwBPN9Kmaq2v0GJxdpnxMuNsi/oHJt8U5z/fY5mlCWankPizdkBudOFM6 QN+DCACBDIyLyvvWGm2+0NEYv8tzHb+3SfCgWgnjENQm8Zq9WTVX5FkvcGGmvotiBIx7 3LLllKCkN43wphW3EvFfM6Rkxlb3AaAsPeLJhZGQwLa6ldinmjIQJ8JLZ+n+ZmS8JRH1 VRGA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1772017742; x=1772622542; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=zGwKFeH5vaILGERB4AfQ4Ozm11H1PzIMpFkkBkAn/V0=; b=BBLZteb84Nx7rIeG3t+xDX7ZUX8efVnWOxiT6t3Cz6ogLr0emVb8NdX7FwOfDZCQM7 bacwtljZL+ai++g3kVGIQ1Ax3ZONYF03aNrAW1V+VPG/aoImaoHPTDeJwh/kkh3/yLRr pmOTkkoo/8AFI0H6iiWKKpnvtjOcno50uZxf/6w7UDTw9C6cN0jcoBYabVfEvzV8lJVf mBs8uCnTW9FyhMGyQK8Gq99N9gauQQKq2H31wJUjl2sC0/2QwPd1ZzyOtjDFVNbqqnFf Sl1MHJsTyDF+Z6QNGR4mxaih/2u72yZwJJDgqVG3Mz/8WlLzR/6Tl+uWaNhdUouj5LvC 6a1A== X-Gm-Message-State: AOJu0YwjTSMgPBPOsJ4NIQ7pwU6aUQMoFOJq5T+2qwjwP/VuPWB60lJI rMYViKfvctrGcsxlR81/JOKRVybLA/rX+feZ5cRX3VFhmIRq2atzDSeylfD82zqZu9O0HRPC9MR flML57cuqmZaZK/Yn9wcL7y5zkTa/sYeSSm2Agt/8JOAii+bmZCcNRISyO4IUR4xa1Rn7itPXiv VhT//ArblEYy9MDCKploa8MVIQDsB4DWtIPHzdag+tEZhp0vk= X-Gm-Gg: ATEYQzxBXY7fTEHKcV1eNZ7mMtY1Kv2L2V/CGCgfZiIEEtAJgUjyxi8nPNaFz5FoOCm RXWzP4WgIS7srvAs6GEjd5QUl12VLjQYxM7NxKbCpZY9wJcNDQG+d7AUbubudYAsLJGavRL4878 5yDVDz8mPZza/ojMdnKJvroy2F3lPkMHCDzY5bRG6JKknj/RB1JhjPBZhQZyJ6BCzpUTDN5dvM+ h8EhYRPvc3061XtcpZgPODuMKsojibUfNGhx1alO4Gwsb3y2s0aELQ1+KUS9neYjrWZsroTzD6m 3/2CYvDrlMIxAY27eYbpsdyw6W0RAO5tgSc8fxGDoU7uomeu5+udT0ryD0awvj78PDD0oKV54eC xDsGXbbqe0B4Cm6/8jI8hT92GXa8+CMx3Nd7r9Ipahfs8Xx0N9X7STlN0y4crR4rOZ/APZ900HS F2F/rWgGq9xAr5akpZVZIA1vxoNl4ESuho8kyBvDtgeOikJevWX7WRMm5ue1+i++JFGwXypO3wC jDABG5AHiVukfmDorjCrZRPjPQ= X-Received: by 2002:a17:903:2ece:b0:2a7:63dd:349b with SMTP id d9443c01a7336-2ad7441b1c7mr152066225ad.10.1772017742085; Wed, 25 Feb 2026 03:09:02 -0800 (PST) From: Max Chou To: qemu-devel@nongnu.org, qemu-riscv@nongnu.org Cc: Aurelien Jarno , Peter Maydell , =?UTF-8?q?Alex=20Benn=C3=A9e?= , richard.henderson@linaro.org, Max Chou Subject: [PATCH 3/3] fpu: Simplify OCP FP8 E4M3 NaN classification in parts_canonicalize Date: Wed, 25 Feb 2026 19:08:02 +0800 Message-ID: <20260225110802.1217946-4-max.chou@sifive.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20260225110802.1217946-1-max.chou@sifive.com> References: <20260225110802.1217946-1-max.chou@sifive.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=2607:f8b0:4864:20::644; envelope-from=max.chou@sifive.com; helo=mail-pl1-x644.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: qemu development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @sifive.com) X-ZM-MESSAGEID: 1772017796134158500 Content-Type: text/plain; charset="utf-8" The OCP FP8 E4M3 format has only a single NaN encoding (0x7F/0xFF), Replace the indirect check via parts_is_snan_frac with a direct check of no_signaling_nans to make the intent clearer. Signed-off-by: Max Chou Reviewed-by: Chao Liu --- fpu/softfloat-parts.c.inc | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/fpu/softfloat-parts.c.inc b/fpu/softfloat-parts.c.inc index 3c323c0cec..5ef7e2d921 100644 --- a/fpu/softfloat-parts.c.inc +++ b/fpu/softfloat-parts.c.inc @@ -245,8 +245,8 @@ static void partsN(canonicalize)(FloatPartsN *p, float_= status *status, case float_expmax_e4m3: if (p->frac_hi =3D=3D 0b111) { frac_shl(p, fmt->frac_shift); - p->cls =3D (parts_is_snan_frac(p->frac_hi, status) - ? float_class_snan : float_class_qnan); + p->cls =3D no_signaling_nans(status) ? float_class_qnan : + float_class_snan; return; } /* otherwise normal */ --=20 2.52.0