From nobody Tue Jul 28 17:21:41 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=none dis=none) header.from=linaro.org ARC-Seal: i=1; a=rsa-sha256; t=1777211777; cv=none; d=zohomail.com; s=zohoarc; b=iWKIzJ8tkVT8v+15JVUfBXjvkp6hA2gVsiSwwZFPT/VPu44/AO9CVx4kjeiCEeBSZarnKVsoLJ/JNko+8u1KoqvkaiAiGG3fNcCK9+PUv5mQYgvIO8b4MbqRCULmlyRh7OSbGCyb2wHMRv/QXVqQWpLXR05KT/PbfVpqRKU4xYo= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1777211777; 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=9GMWNSvP4+a2tsIwQ0vCb3/nsg3VFSARC/RvRT7Zej8=; b=D6z3mNiADUwnM+Hv11k3kHJ5h0bwZqH8naGy04pmbWsaGsvGWNQ5dU0dy3z3+6Ec26OnIg0HM7uNcDJfbUdrZC94KpdIltQGS4eVFA0+NVtvqZenOKUr/yH5VZi66Uv/fWfj8DJs8ioW4k8MByBiVFHtpFWJGjvVDL0FhroUb1g= 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=none dis=none) Return-Path: Received: from lists1p.gnu.org (lists1p.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1777211777669207.86882887948025; Sun, 26 Apr 2026 06:56:17 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists1p.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1wGzpg-0000R0-FP; Sun, 26 Apr 2026 09:47:36 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists1p.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1wGzoW-00066e-8z for qemu-devel@nongnu.org; Sun, 26 Apr 2026 09:46:25 -0400 Received: from mail-pl1-x630.google.com ([2607:f8b0:4864:20::630]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1wGzoS-0001c8-4u for qemu-devel@nongnu.org; Sun, 26 Apr 2026 09:46:23 -0400 Received: by mail-pl1-x630.google.com with SMTP id d9443c01a7336-2b7adb38d65so31865565ad.2 for ; Sun, 26 Apr 2026 06:46:14 -0700 (PDT) Received: from stoup.. ([180.233.125.15]) by smtp.gmail.com with ESMTPSA id d9443c01a7336-2b5faa34ea7sm280544085ad.34.2026.04.26.06.46.11 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 26 Apr 2026 06:46:12 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1777211173; x=1777815973; 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=9GMWNSvP4+a2tsIwQ0vCb3/nsg3VFSARC/RvRT7Zej8=; b=OAGpptCybT/1mnTvThTfSF6pApZhBRNaEbCz60urCQwxxBZICn4zWrarSQFj+PrwzM 8kcctc6EsKxnqe8Px5tHfcoFohQ55A8h+S68MufhlYtBTGqcfbzMJGccVxNcctWSvlme Y9MaiWqK3mvkWDnnNUESHhLftOvWdfeerXXp8vuLQdYjrxnijWoZHG4x3RnvGzNDg7iN AC1xhaXfeEvHSL0P5IkDHq3ZoBrHhQ423cujbDu5U6JTrFCSUoxAEi9JFAWtWviHBg2D FQcbPFk5W+sw14NAHb2/4DXMey97RjU0q2Ng8gr8kb2qp3RC7ZbviZQxZq5f9GK979NY BsZA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1777211173; x=1777815973; 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=9GMWNSvP4+a2tsIwQ0vCb3/nsg3VFSARC/RvRT7Zej8=; b=YbDoucvBVLKzLuSSXvOv3kKX6oEDyD9nqIDHNdBzM9iE5HvYMHXtYBKkHoMhgHVQI1 iJbbeW+1EYMlbixZ4zpNm1SAQ5ALCeiVHI9iMVGikOKJobB3mrMZ5dNf/ur1Qf/p5/hC f6ZwIpaaHbZLUa6JKhOnZnWiG+HhSrDu2DposkgEzWZIZ3gwNlh7SXDRc/aMwxDmbMmh owg8tuWSU5yfV0bDOl+teB4grpz/8mwVh8DhAWh+B6Z4NnlBUVBIbsvlY/9QtZe9xWZ4 NoKtLr+QwGd5i72pUIeA2Z8OGn2WWTyhIuUEB1WSYwyuxdbD4Em8uEO/+jXl/fEIqrLi zDog== X-Gm-Message-State: AOJu0YxdFVC4c5fUYnoQDt2rNUKSYLGwCVIaRgpi0xVN/aseaZXWSc4N p5pzGxKsfjhf2JMUpAkK5EzqTg5MyC/q9pIyosiiwwS2gRdLzYRa00yy9af+uBaF8eKDtGaPxf9 Tp8ag8QM= X-Gm-Gg: AeBDieuYcbPuilyduhnD/lu0CtvmfAfgs9Ac5/q/r8aESsNll8WT/3s8U/JgsMmpgZZ N6QMqZnq5bAkiPzPB9twZir5jXpqiBPMq7sAk+5Q/v6fntF3PAE7eTF5CYu10brX7InLEaesjJs 5tWzxl15XtNjICoYzfLeGOfaPyngZF2GiCc7LB1Rbun3mt3FnYz5BnKJdtl74xdjyMmo8x2fkNF ebmqv4rUDQW8NqTxCFYf8tjFgthc0n0p83KANyDxrqePqGEPahJY90NhCOB1clVD5dIastmqpQQ jUTVYxB9QlKpvwNWbWwk07hgXNZuYV/TiK55bgTTdHqtFfuHMERRmELBkbPtNxYum4pLlh+wmb9 7oKd76xD1Bx76pfLaPsEBlyIYdePSAo55Cp3hsOSeZrGdlEkvIxk6JWqU9mGWs+/pe4AVF+tIX7 yzJ3qEjhec72eu8WcUIGhQ/O5W+AjL5N1cu2G/H0G8 X-Received: by 2002:a17:903:1104:b0:2b4:6529:7b9f with SMTP id d9443c01a7336-2b5f9f37032mr427016705ad.26.1777211173108; Sun, 26 Apr 2026 06:46:13 -0700 (PDT) From: Richard Henderson To: qemu-devel@nongnu.org Cc: qemu-arm@nongnu.org, qemu-s390x@nongnu.org Subject: [PATCH 68/84] fpu: Export default_nan and pick_nan routines Date: Sun, 26 Apr 2026 23:39:45 +1000 Message-ID: <20260426134002.865628-69-richard.henderson@linaro.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20260426134002.865628-1-richard.henderson@linaro.org> References: <20260426134002.865628-1-richard.henderson@linaro.org> 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=lists1p.gnu.org; Received-SPF: pass client-ip=2607:f8b0:4864:20::630; envelope-from=richard.henderson@linaro.org; helo=mail-pl1-x630.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 @linaro.org) X-ZM-MESSAGEID: 1777211778785158500 Content-Type: text/plain; charset="utf-8" Signed-off-by: Richard Henderson --- include/fpu/softfloat-parts.h | 12 ++++++++++++ fpu/softfloat-parts.c.inc | 4 ++-- fpu/softfloat-specialize.c.inc | 4 ++-- 3 files changed, 16 insertions(+), 4 deletions(-) diff --git a/include/fpu/softfloat-parts.h b/include/fpu/softfloat-parts.h index f631c38c79..9f7ee34d6a 100644 --- a/include/fpu/softfloat-parts.h +++ b/include/fpu/softfloat-parts.h @@ -163,4 +163,16 @@ float64 float64_round_pack_canonical(FloatParts64 *p, = float_status *s); float128 float128_round_pack_canonical(FloatParts128 *p, float_status *s); floatx80 floatx80_round_pack_canonical(FloatParts128 *p, float_status *s); =20 +/* + * NaN handling + */ + +FloatParts64 parts64_default_nan(float_status *status); +FloatParts128 parts128_default_nan(float_status *status); + +FloatParts64 parts64_pick_nan(const FloatParts64 *, const FloatParts64 *, + float_status *); +FloatParts128 parts128_pick_nan(const FloatParts128 *, const FloatParts128= *, + float_status *); + #endif diff --git a/fpu/softfloat-parts.c.inc b/fpu/softfloat-parts.c.inc index 642ad5dfb9..cdab18bf26 100644 --- a/fpu/softfloat-parts.c.inc +++ b/fpu/softfloat-parts.c.inc @@ -37,8 +37,8 @@ static FloatPartsN partsN(return_nan)(const FloatPartsN *= a, float_status *s) return *a; } =20 -static FloatPartsN partsN(pick_nan)(const FloatPartsN *a, const FloatParts= N *b, - float_status *s) +FloatPartsN partsN(pick_nan)(const FloatPartsN *a, const FloatPartsN *b, + float_status *s) { bool have_snan =3D false; const FloatPartsN *ret; diff --git a/fpu/softfloat-specialize.c.inc b/fpu/softfloat-specialize.c.inc index 2723bf5e61..485f082cf8 100644 --- a/fpu/softfloat-specialize.c.inc +++ b/fpu/softfloat-specialize.c.inc @@ -118,7 +118,7 @@ static bool parts_is_snan_frac(uint64_t frac, float_sta= tus *status) | The pattern for a default generated deconstructed floating-point NaN. *-------------------------------------------------------------------------= ---*/ =20 -static FloatParts64 parts64_default_nan(float_status *status) +FloatParts64 parts64_default_nan(float_status *status) { bool sign =3D 0; uint64_t frac; @@ -142,7 +142,7 @@ static FloatParts64 parts64_default_nan(float_status *s= tatus) }; } =20 -static FloatParts128 parts128_default_nan(float_status *status) +FloatParts128 parts128_default_nan(float_status *status) { /* * Extrapolate from the choices made by parts64_default_nan to fill --=20 2.43.0