From nobody Sat Nov 15 12:44:15 2025 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=1751459009; cv=none; d=zohomail.com; s=zohoarc; b=YNMpjhpoebseQEYSkoWP3e4uwS81LMh4nm3JT7XPj++8/dxX4A01lVuD+dTyuFa8PvMBv/Qm3IQyFv/06lsjkpiPT4M+Ft/mFA83vSDTPgN5ZObYxb0pS4IbDVzAvjIWlEsjU7J7x0PfbPv6dHJSfTf7KMdIH/G5M5oChzYzcqQ= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1751459009; 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=AwerfD7lvNQJ4EdbSgApiW5S0oCtGzIs48Se4MUlJ1U=; b=C9QPI6A/5gY3Gky5qnEuTYMjYQSj0QolRjqXsKgMxg3p8WiNsV2e/1Nt/2Cu6ujc45w++jsE8XX0GHpqLAOkyd75OWxsjmtqpbUW4CE5FGCxBloqZNc3vFYuFHJE1zypT3KLlFH/TWeYwNBcoYsZUlkY7HjKIra6jBK6rs3eGcg= 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 lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 175145900968153.614923311827056; Wed, 2 Jul 2025 05:23:29 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1uWwTr-0004pI-Sr; Wed, 02 Jul 2025 08:22:27 -0400 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 1uWwTp-0004oD-FZ for qemu-devel@nongnu.org; Wed, 02 Jul 2025 08:22:25 -0400 Received: from mail-oa1-x34.google.com ([2001:4860:4864:20::34]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1uWwTj-0007C9-8o for qemu-devel@nongnu.org; Wed, 02 Jul 2025 08:22:25 -0400 Received: by mail-oa1-x34.google.com with SMTP id 586e51a60fabf-2efbbf5a754so2996028fac.0 for ; Wed, 02 Jul 2025 05:22:18 -0700 (PDT) Received: from stoup.. ([187.210.107.185]) by smtp.gmail.com with ESMTPSA id 586e51a60fabf-2efd50b1bd3sm3785013fac.28.2025.07.02.05.22.16 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 02 Jul 2025 05:22:16 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1751458937; x=1752063737; 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=AwerfD7lvNQJ4EdbSgApiW5S0oCtGzIs48Se4MUlJ1U=; b=KWPeJsbRT4SYqU+KelMFd5b42241vvQYmQEAVKucqKnoaZ83VO7ndN3zjOmeUMDUzg PSAopbnfIIVsNzQJoVbGPGmiatC9XaitR6ZXvDeJ0UMcR8B1dXBx5ilzuIGJVPQwMjSB Tq5BHzQGcvybgFxVKTD8L6nNW9aaAwLAYNkPvNmp5z3LgGmtiOV826aQfvIu6I/0JylC iMu1tJr8beftpufg2kyAqDwsbxJ4U1hMOBivkitd5dhXqn0UuunvAyqTyEczrjeDFWlK 3Ez/zCNAvQL5fjipS/wMjpOvASqfVVuIusf6iTuhaI3/eOntk7L/Aq9F7Oeqgd467VWO u65A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1751458937; x=1752063737; 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=AwerfD7lvNQJ4EdbSgApiW5S0oCtGzIs48Se4MUlJ1U=; b=cz4R3s+NZ5r+dW2L3xMabi8EE3ORAXp52xl95tk5Z8lEAe9ltphWWh4SQAUmB7vgBS +9q3Rdjp+F1onN58tuAILhikpmKqTrSWdTQ4W97ZCsYQ7ziFMFmV/VJvZO2T/XcDXra+ RhrLfB8JVIhNk/JG1Uje1POgD8+zjFAKNU5lFXl7bPxmGrU0pNSxP8FIxOSAUbVdguAd 2gTxXn6jid+O+HH/ClyKIiZC/OvMrFFMAEIEbDbWwk29Fu1YjQXSJiJ3rPdqZiYcdjce fGfRAtWYUdlM05FB/hsoeZxdeBzCWXYNC9Tr0xyBNImS/SX3w3MuoVZr4ufZMQ5qndIv pL7g== X-Gm-Message-State: AOJu0YyzpxdfrZhXybyFiWvf1eieuAddHYLKXC5rCqS6Zk3IUbCGv5K8 JjtHfPM3avmw5uhoLScKcLsKmo5KXna/PonQ7Dcn3s5XdmkDCDQexs8IRLxAaR0+9Vg71sN18Bd vWxmNfC0= X-Gm-Gg: ASbGncte4rSnz+7KdnBpojfEzz4bXBX+tE4JTHznMiGZJxZ+IPZhml9sJ8wr0RUwa1b T4phuyJYrZgCX5AK6SLZjpxt3J9E2Ma9Ao/B+YSYzg9FDJy99lxTOJpp1djxnFDxlMnYtx5cUBh vdpUg8HZNwdBQG+qEmWy3LRm2IXAzXMkTwWLwObVFRun7cZuZ/wrgN85qTHbA7RczEo8DC3wpxF /iAluMc9MTrpnqYa+yH4KLHNVMTdYyjFQF6nyFE9LVVtwFbrNe2dK+9/x1Rog5L6ASiiNlKRIE1 /TCcm1qwTFSQ5yakHvk9L+WXZwaz2lWF2TatRUnvlFeSOmFEumg9Wamj9UwVD3twAR2++A== X-Google-Smtp-Source: AGHT+IHBp4nid14igLYfJtGI2OjNOtO5XYtlxrrR6pPSyWNUBYcRj0jTmGNalyLQzF3KUPCtjS0Hfw== X-Received: by 2002:a05:6870:f68f:b0:2ea:fb40:231c with SMTP id 586e51a60fabf-2f5c7cc0bd1mr1974079fac.27.1751458936914; Wed, 02 Jul 2025 05:22:16 -0700 (PDT) From: Richard Henderson To: qemu-devel@nongnu.org Cc: qemu-arm@nongnu.org, peter.maydell@linaro.org, qemu-stable@nongnu.org Subject: [PATCH v3 01/10] target/arm: Fix SME vs AdvSIMD exception priority Date: Wed, 2 Jul 2025 06:22:04 -0600 Message-ID: <20250702122213.758588-2-richard.henderson@linaro.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20250702122213.758588-1-richard.henderson@linaro.org> References: <20250702122213.758588-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=lists.gnu.org; Received-SPF: pass client-ip=2001:4860:4864:20::34; envelope-from=richard.henderson@linaro.org; helo=mail-oa1-x34.google.com X-Spam_score_int: -16 X-Spam_score: -1.7 X-Spam_bar: - X-Spam_report: (-1.7 / 5.0 requ) BAYES_00=-1.9, DKIM_INVALID=0.1, DKIM_SIGNED=0.1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=no autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: 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: 1751459011616116600 Content-Type: text/plain; charset="utf-8" We failed to raise an exception when sme_excp_el =3D=3D 0 and fp_excp_el =3D=3D 1. Cc: qemu-stable@nongnu.org Fixes: 3d74825f4d6 ("target/arm: Add SME enablement checks") Reviewed-by: Peter Maydell Signed-off-by: Richard Henderson --- target/arm/tcg/translate-a64.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/target/arm/tcg/translate-a64.c b/target/arm/tcg/translate-a64.c index ac80f572a2..bb49a2ce90 100644 --- a/target/arm/tcg/translate-a64.c +++ b/target/arm/tcg/translate-a64.c @@ -1494,7 +1494,8 @@ bool sme_enabled_check(DisasContext *s) * to be zero when fp_excp_el has priority. This is because we need * sme_excp_el by itself for cpregs access checks. */ - if (!s->fp_excp_el || s->sme_excp_el < s->fp_excp_el) { + if (s->sme_excp_el + && (!s->fp_excp_el || s->sme_excp_el <=3D s->fp_excp_el)) { bool ret =3D sme_access_check(s); s->fp_access_checked =3D (ret ? 1 : -1); return ret; --=20 2.43.0 From nobody Sat Nov 15 12:44:15 2025 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=1751459015; cv=none; d=zohomail.com; s=zohoarc; b=a0I3htmRb3KDOLSFtyc9hT9dISKzBoUMWOhpKG+31yz6QBZR/WazfVfwrp8Q1y8quaoJ9C5jkaH8ZMmpnOAsRnVyRRVjBYAIL4CxdHhb+cLG82NlUSFR6m9FER9z0QxyFB9sIkRmMQIwthez4sLaAhJ9+ka4Q/V+iZGFc5ne+fc= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1751459015; 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=g8Wr6t5HNQIpjoMJRAtfEnSzR8s3EtBh7dZofKf7j3o=; b=d5YNwplD6/ue6SlsbnzYhhkGjmUvUrzCPzu+s7HAC4WBGnPor7SC0BuKI22hZIdSdprOrXocWDY1cL2b3nQfKAPC4oP24ebkWAKY9VBVW4Moxcd3LYy4RmP64qtEPh9Ie11mLLhWh5nEDdA45fhXpGpbVxuwUxJ2/bnxzk/0mBg= 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 lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 175145901534231.617010873004233; Wed, 2 Jul 2025 05:23:35 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1uWwU0-0004uJ-9h; Wed, 02 Jul 2025 08:22:36 -0400 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 1uWwTx-0004sx-Sd for qemu-devel@nongnu.org; Wed, 02 Jul 2025 08:22:33 -0400 Received: from mail-oa1-x33.google.com ([2001:4860:4864:20::33]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1uWwTl-0007CX-2L for qemu-devel@nongnu.org; Wed, 02 Jul 2025 08:22:33 -0400 Received: by mail-oa1-x33.google.com with SMTP id 586e51a60fabf-2da3c572a0bso4187546fac.3 for ; Wed, 02 Jul 2025 05:22:19 -0700 (PDT) Received: from stoup.. ([187.210.107.185]) by smtp.gmail.com with ESMTPSA id 586e51a60fabf-2efd50b1bd3sm3785013fac.28.2025.07.02.05.22.17 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 02 Jul 2025 05:22:17 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1751458938; x=1752063738; 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=g8Wr6t5HNQIpjoMJRAtfEnSzR8s3EtBh7dZofKf7j3o=; b=ubNc9Z5ys+tca9nEiM38paRyXf+c1P2wEwv9SG6+V+VUlt6wRzG1nEOdB2HyBfUuUi d10qu2uwE73neOQVL0OUsrwvRmLMOMjkCgSCnTZ4QKKL+4zfZp4s3NqWDBXgf9G1vh2Q jYf6aCu6MAsAIi57O8PB9lswYO6DSZ3i5aLjlrYu85QQi/yCqHR1+OF1OQ/99a2M6n0c bwB4RCM6V9vmoraCe71DgW9wn/ydbm2APTpBMkOGXsJUK9wXmwNLiCyRnbRLwTi7AQgq P6iicE5XhTD+3Hx0U+xqdu0pG9qVTLkdshZyzbV9kYqiJEv9K48QXK15U2FWhzaylgSA nClA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1751458938; x=1752063738; 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=g8Wr6t5HNQIpjoMJRAtfEnSzR8s3EtBh7dZofKf7j3o=; b=OXoG4cbTs46Tt1L74KhjQXNUEPKCdI5HlC2HUtP3f06S2p5+DVGUh0Go4ENT8DscE/ mmJ/0OjnGMma2i6HGyl/a+2Au4HqAdiZLIW+oS9by3MlotDG1y520tmy2yMQu9Ys4uOd W7gfW9GFyLHKRkT4ZbSBsvG+TKxtRyGixV8OZqGQPAJ5iRbMlLJMNHHvThjxUfetbpca TnYVdTm1Vvt2TRkG0KzFlQOxDOk67TKidjUiduI6/p5VLeQTDS4DM8Jj2sXQjG1lXBu8 K1OpSMV6ogBHSfsb5Arc4ll4g2AMFjpJvwyYFLRQxGrELkaLlKWuqIXbyr3hTtJWHdIO aUnw== X-Gm-Message-State: AOJu0YxNNIociINB6fEeAs7nSZ+xiQxWURNY/0i0Wkh2a/qNoV8c05Lt WocC56SH/ZpQrPgEpjRLPodAGV06ovRZCoVx4zLxN6qkbS7LMq020eKVzWxSiWWwQwkui17R7Ya vamCuCt0= X-Gm-Gg: ASbGncu1QROwyqe6m9hnspmh0E8VWtWwlYp8tU32da0KykQ5muVyt+BZkNXO+np0tBX tbGtUg+Yfgb+0NjBkBB6L5CbOnd35G4Hi0zXJxM6rIe11yup4Hc0B5mVWwn6uTIv9C/U3eeMdc+ k6o1pLvCISMC3I/6PKMjULziJZ6tbuwSvV/Dj/JxYQp1wLGJw8w1Ra8QAD+BI5L/zaVB65CRRWy snh1q9cta4gnNN2OgWMsoClfUpwtcd66bZ0UXjHExlb0UhQqiZcw92f1XZXZKv/Jd/1I5yXRFaR 63ayWJhrn4yDS+JIPYr3Tc5jyV8v9ycIX9iJfmL4z+ARJUc+8we7NSkVB+N+flmCbvlPJw== X-Google-Smtp-Source: AGHT+IFloorpYhTnVN/IQu0ho8eQorqWf3UJvMBHlEQaLq+98+iJRINi2SwDgJl9SjVjBqWjqmQjsA== X-Received: by 2002:a05:6871:cd07:b0:2c1:e9a3:3ab3 with SMTP id 586e51a60fabf-2f5a8b819b7mr2243723fac.33.1751458938273; Wed, 02 Jul 2025 05:22:18 -0700 (PDT) From: Richard Henderson To: qemu-devel@nongnu.org Cc: qemu-arm@nongnu.org, peter.maydell@linaro.org, qemu-stable@nongnu.org Subject: [PATCH v3 02/10] target/arm: Fix sve_access_check for SME Date: Wed, 2 Jul 2025 06:22:05 -0600 Message-ID: <20250702122213.758588-3-richard.henderson@linaro.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20250702122213.758588-1-richard.henderson@linaro.org> References: <20250702122213.758588-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=lists.gnu.org; Received-SPF: pass client-ip=2001:4860:4864:20::33; envelope-from=richard.henderson@linaro.org; helo=mail-oa1-x33.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: 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: 1751459015708116600 Content-Type: text/plain; charset="utf-8" Do not assume SME implies SVE. Ensure that the non-streaming check is present along the SME path, since it is not implied by sme_*_enabled_check. Cc: qemu-stable@nongnu.org Reviewed-by: Peter Maydell Signed-off-by: Richard Henderson --- target/arm/tcg/translate-a64.c | 26 +++++++++++++++++++------- 1 file changed, 19 insertions(+), 7 deletions(-) diff --git a/target/arm/tcg/translate-a64.c b/target/arm/tcg/translate-a64.c index bb49a2ce90..7f8671e2e8 100644 --- a/target/arm/tcg/translate-a64.c +++ b/target/arm/tcg/translate-a64.c @@ -1387,11 +1387,8 @@ static bool fp_access_check_only(DisasContext *s) return true; } =20 -static bool fp_access_check(DisasContext *s) +static bool nonstreaming_check(DisasContext *s) { - if (!fp_access_check_only(s)) { - return false; - } if (s->sme_trap_nonstreaming && s->is_nonstreaming) { gen_exception_insn(s, 0, EXCP_UDEF, syn_smetrap(SME_ET_Streaming, false)); @@ -1400,6 +1397,11 @@ static bool fp_access_check(DisasContext *s) return true; } =20 +static bool fp_access_check(DisasContext *s) +{ + return fp_access_check_only(s) && nonstreaming_check(s); +} + /* * Return <0 for non-supported element sizes, with MO_16 controlled by * FEAT_FP16; return 0 for fp disabled; otherwise return >0 for success. @@ -1450,14 +1452,24 @@ static int fp_access_check_vector_hsd(DisasContext = *s, bool is_q, MemOp esz) */ bool sve_access_check(DisasContext *s) { - if (s->pstate_sm || !dc_isar_feature(aa64_sve, s)) { + if (dc_isar_feature(aa64_sme, s)) { bool ret; =20 - assert(dc_isar_feature(aa64_sme, s)); - ret =3D sme_sm_enabled_check(s); + if (s->pstate_sm) { + ret =3D sme_enabled_check(s); + } else if (dc_isar_feature(aa64_sve, s)) { + goto continue_sve; + } else { + ret =3D sme_sm_enabled_check(s); + } + if (ret) { + ret =3D nonstreaming_check(s); + } s->sve_access_checked =3D (ret ? 1 : -1); return ret; } + + continue_sve: if (s->sve_excp_el) { /* Assert that we only raise one exception per instruction. */ assert(!s->sve_access_checked); --=20 2.43.0 From nobody Sat Nov 15 12:44:15 2025 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=1751459008; cv=none; d=zohomail.com; s=zohoarc; b=VrXQOvtNWLpJTdS6WEAGeCtHhooE119QkpdwJ8ZKNyMzQVq4JZZi1esFUUi9SC7MpwmsOox4U/EiOiebMkntvLIRqMkiZ95xeNndPTWAUwFiFNgblZ8CL2HltYFlGsJbtIlA0Dai24sh7oyyEL6VtpPEkZCQti3tOOiUadt86bA= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1751459008; 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=BENvMcJ/CrRAcx3dIG/qU4Ltg1Ex80eRTSFUmTUQVxM=; b=OiUottf05A7zGGcLBZbTIvhF/1SMmLzoj2n++662v5KJtY/X10xtPNEgJFJ4o79lECZqcSLfRci/BbW50sbMOOEnpG68SHGjLcwAatoKkuvA1R/PsbuiJEbzFi1cfKY7k8wllsLb2+JF7ao/LB9fi50Is0SZmaPEFN2sIohxj6k= 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 lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1751459008492355.79664099921945; Wed, 2 Jul 2025 05:23:28 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1uWwU3-0004vu-Cn; Wed, 02 Jul 2025 08:22:39 -0400 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 1uWwTy-0004sV-Ew for qemu-devel@nongnu.org; Wed, 02 Jul 2025 08:22:34 -0400 Received: from mail-oa1-x2e.google.com ([2001:4860:4864:20::2e]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1uWwTo-0007Cp-4D for qemu-devel@nongnu.org; Wed, 02 Jul 2025 08:22:33 -0400 Received: by mail-oa1-x2e.google.com with SMTP id 586e51a60fabf-2e9071e3706so2767477fac.0 for ; Wed, 02 Jul 2025 05:22:22 -0700 (PDT) Received: from stoup.. ([187.210.107.185]) by smtp.gmail.com with ESMTPSA id 586e51a60fabf-2efd50b1bd3sm3785013fac.28.2025.07.02.05.22.18 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 02 Jul 2025 05:22:18 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1751458939; x=1752063739; 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=BENvMcJ/CrRAcx3dIG/qU4Ltg1Ex80eRTSFUmTUQVxM=; b=p8uqF8zutcnyMIQFGaYatKxrsycpjtXhcZk9Ao+uVUqxx3IRq1mLNMVR2tJq6uOb6C DAcenoA+T1rdNRZyCjsMmm7MCG3BTHcxh9cuNByYrzGqwHmnW0du/5Yi1LBw2mNYmVFd 2yHqr/glpY7iWWFSNsK4fqcudzrP9+xN4stqLZWLp0vyfBS1LzD/IetpTeygtJzzYb/S 9MYGx7E9BQLRiKBtU5Kf4pGzTHAIvRiVPAjVwbj9Qm+0DGziOKgu56hUDkOQomOAVK7e J/IiY6TlkcFZV7imzZj44BzYoLO+QGX2jrq400Wf2p/Ac7TdN6P03EdCoIY+PpMKWxcj IonA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1751458939; x=1752063739; 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=BENvMcJ/CrRAcx3dIG/qU4Ltg1Ex80eRTSFUmTUQVxM=; b=hnworLWNpaIN1Cs4bUjb08JFAd6fSnZV0ZQ1ykrW0v/YfwEj1tSNw4DceuOdVS3zrS vy2Hbi89OF4nWF+C0TOMaydQmzoTPWstaEFMydQGrwBKV0QrElbdODKFk6Qc3zA32uIn KmP+qbv8rvUauPT8p+zyjPZOAzckKTyA7DSJvwfXqxNo/pGcZDsME7is4YOD03/o1CZE KJvUW7kqeop77FAaXJjoELtu1Hbc2F4M7AhkYGrt373oiwB0fV5X72IsS37nat3SUCIt oMKL5+MbYUJekLvOF+CKHOux7lHt8wKSvWy/VLByp+GO14thGng4CnshDSRPVdkCnI7y qC+Q== X-Gm-Message-State: AOJu0YzvWXvik7FYG1KDhmZX2IIhqLM1tLw59L4Vd4x/IdwdGpkKFiVo p2XGV0LoDTVnEc1/IM9A0IDbw4gMe/rQ12eOrw++PEU060dYkebHFWFf3Px5Qah8oSsKYD/aT8J ec0Fd/IQ= X-Gm-Gg: ASbGnctYClGwVJtnKfYaZ9KWtL9IloQ913QCOwasTC+A7/l9uo11DTK0yHJqGTDcq8N czkCl4AEc49UwZ5jysKMpVY5AgT57xp43gHLxkYgDj0jpv16+BNzY97GA0HctgUTP/nBV7dDB0/ cXng4D+TvFseb6jzC6njrAJ2Ca7K3hJGBQO9zPVgtd6/kptGZ4ypV+utBruyFlYqEd2dy9nl3R0 JSO2Yb+/8j1gbXb+Efqzw0EeMiMyT/pEOYr2APghO1Owh2aXoiMwz6tqT+yWuNOGNJBWD0hMtvY vpFi/3bRsIiWmyYr+C8rZilC2B6RQKnPuuiuobBu4iwXaz1ii14jODHJXZVDB4OF1PeDeQ== X-Google-Smtp-Source: AGHT+IHfAP1st1cHfz8zrrkAdw8e8FGvPXkMnFGZ18bfqlsdY9tZv/oqLmHjgCxcNXnHsP4dZ5g8yA== X-Received: by 2002:a05:6870:6e0f:b0:2cc:4613:76f0 with SMTP id 586e51a60fabf-2f5a8a937abmr1683049fac.17.1751458939317; Wed, 02 Jul 2025 05:22:19 -0700 (PDT) From: Richard Henderson To: qemu-devel@nongnu.org Cc: qemu-arm@nongnu.org, peter.maydell@linaro.org, qemu-stable@nongnu.org Subject: [PATCH v3 03/10] target/arm: Fix 128-bit element ZIP, UZP, TRN Date: Wed, 2 Jul 2025 06:22:06 -0600 Message-ID: <20250702122213.758588-4-richard.henderson@linaro.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20250702122213.758588-1-richard.henderson@linaro.org> References: <20250702122213.758588-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=lists.gnu.org; Received-SPF: pass client-ip=2001:4860:4864:20::2e; envelope-from=richard.henderson@linaro.org; helo=mail-oa1-x2e.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: 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: 1751459009521116600 Content-Type: text/plain; charset="utf-8" We missed the instructions UDEF when the vector size is too small. We missed marking the instructions non-streaming with SME. Cc: qemu-stable@nongnu.org Signed-off-by: Richard Henderson Reviewed-by: Peter Maydell --- target/arm/tcg/translate-sve.c | 43 ++++++++++++++++++++++++---------- 1 file changed, 30 insertions(+), 13 deletions(-) diff --git a/target/arm/tcg/translate-sve.c b/target/arm/tcg/translate-sve.c index f3cf028cb9..588a5b006b 100644 --- a/target/arm/tcg/translate-sve.c +++ b/target/arm/tcg/translate-sve.c @@ -2352,6 +2352,23 @@ TRANS_FEAT(PUNPKHI, aa64_sve, do_perm_pred2, a, 1, g= en_helper_sve_punpk_p) *** SVE Permute - Interleaving Group */ =20 +static bool do_interleave_q(DisasContext *s, gen_helper_gvec_3 *fn, + arg_rrr_esz *a, int data) +{ + if (sve_access_check(s)) { + unsigned vsz =3D vec_full_reg_size(s); + if (vsz < 32) { + unallocated_encoding(s); + } else { + tcg_gen_gvec_3_ool(vec_full_reg_offset(s, a->rd), + vec_full_reg_offset(s, a->rn), + vec_full_reg_offset(s, a->rm), + vsz, vsz, data, fn); + } + } + return true; +} + static gen_helper_gvec_3 * const zip_fns[4] =3D { gen_helper_sve_zip_b, gen_helper_sve_zip_h, gen_helper_sve_zip_s, gen_helper_sve_zip_d, @@ -2361,11 +2378,11 @@ TRANS_FEAT(ZIP1_z, aa64_sve, gen_gvec_ool_arg_zzz, TRANS_FEAT(ZIP2_z, aa64_sve, gen_gvec_ool_arg_zzz, zip_fns[a->esz], a, vec_full_reg_size(s) / 2) =20 -TRANS_FEAT(ZIP1_q, aa64_sve_f64mm, gen_gvec_ool_arg_zzz, - gen_helper_sve2_zip_q, a, 0) -TRANS_FEAT(ZIP2_q, aa64_sve_f64mm, gen_gvec_ool_arg_zzz, - gen_helper_sve2_zip_q, a, - QEMU_ALIGN_DOWN(vec_full_reg_size(s), 32) / 2) +TRANS_FEAT_NONSTREAMING(ZIP1_q, aa64_sve_f64mm, do_interleave_q, + gen_helper_sve2_zip_q, a, 0) +TRANS_FEAT_NONSTREAMING(ZIP2_q, aa64_sve_f64mm, do_interleave_q, + gen_helper_sve2_zip_q, a, + QEMU_ALIGN_DOWN(vec_full_reg_size(s), 32) / 2) =20 static gen_helper_gvec_3 * const uzp_fns[4] =3D { gen_helper_sve_uzp_b, gen_helper_sve_uzp_h, @@ -2377,10 +2394,10 @@ TRANS_FEAT(UZP1_z, aa64_sve, gen_gvec_ool_arg_zzz, TRANS_FEAT(UZP2_z, aa64_sve, gen_gvec_ool_arg_zzz, uzp_fns[a->esz], a, 1 << a->esz) =20 -TRANS_FEAT(UZP1_q, aa64_sve_f64mm, gen_gvec_ool_arg_zzz, - gen_helper_sve2_uzp_q, a, 0) -TRANS_FEAT(UZP2_q, aa64_sve_f64mm, gen_gvec_ool_arg_zzz, - gen_helper_sve2_uzp_q, a, 16) +TRANS_FEAT_NONSTREAMING(UZP1_q, aa64_sve_f64mm, do_interleave_q, + gen_helper_sve2_uzp_q, a, 0) +TRANS_FEAT_NONSTREAMING(UZP2_q, aa64_sve_f64mm, do_interleave_q, + gen_helper_sve2_uzp_q, a, 16) =20 static gen_helper_gvec_3 * const trn_fns[4] =3D { gen_helper_sve_trn_b, gen_helper_sve_trn_h, @@ -2392,10 +2409,10 @@ TRANS_FEAT(TRN1_z, aa64_sve, gen_gvec_ool_arg_zzz, TRANS_FEAT(TRN2_z, aa64_sve, gen_gvec_ool_arg_zzz, trn_fns[a->esz], a, 1 << a->esz) =20 -TRANS_FEAT(TRN1_q, aa64_sve_f64mm, gen_gvec_ool_arg_zzz, - gen_helper_sve2_trn_q, a, 0) -TRANS_FEAT(TRN2_q, aa64_sve_f64mm, gen_gvec_ool_arg_zzz, - gen_helper_sve2_trn_q, a, 16) +TRANS_FEAT_NONSTREAMING(TRN1_q, aa64_sve_f64mm, do_interleave_q, + gen_helper_sve2_trn_q, a, 0) +TRANS_FEAT_NONSTREAMING(TRN2_q, aa64_sve_f64mm, do_interleave_q, + gen_helper_sve2_trn_q, a, 16) =20 /* *** SVE Permute Vector - Predicated Group --=20 2.43.0 From nobody Sat Nov 15 12:44:15 2025 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=1751459181; cv=none; d=zohomail.com; s=zohoarc; b=aKuiJKBhjdedV1bm7fOFYOe5Qm8pGX0gJrdW42e/Odk58hHivBNeC2nbfx1yyDjALi/hr9jjnX2Ap5LizCI3YB1Mwvr/DN0vq1pd0aHjx491D8uIjBpMtggFemT2domv6fIWuR+8np6WW9CregcvoY9z2dU1Yft4WLeFE0nT/4g= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1751459181; 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=G0lOyAHGfdwVrVagI3IBAJ8avsxWv+VgaY92gqB8lM0=; b=lT7Bsl95NKvWNcBygzEwKmemuQ9czeVKiIa8TBkZWGhgBm7N9fxWLtpOPeFbiPVii7gnaFE1cq8zIrSLYbTYxGlXwXwfXsnpP38erUo/Dhr2I9RhNDD5TScLHjVZOs+r9GQ7B4CrVQwBPqvhgNrUAV9H6x3GXH5He8t30okr2jM= 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 lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1751459181103265.1556976740545; Wed, 2 Jul 2025 05:26:21 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1uWwU5-0004xB-0E; Wed, 02 Jul 2025 08:22:41 -0400 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 1uWwU2-0004vZ-I8 for qemu-devel@nongnu.org; Wed, 02 Jul 2025 08:22:38 -0400 Received: from mail-oa1-x36.google.com ([2001:4860:4864:20::36]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1uWwTo-0007D8-MB for qemu-devel@nongnu.org; Wed, 02 Jul 2025 08:22:38 -0400 Received: by mail-oa1-x36.google.com with SMTP id 586e51a60fabf-2ea58f008e9so3743877fac.0 for ; Wed, 02 Jul 2025 05:22:22 -0700 (PDT) Received: from stoup.. ([187.210.107.185]) by smtp.gmail.com with ESMTPSA id 586e51a60fabf-2efd50b1bd3sm3785013fac.28.2025.07.02.05.22.19 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 02 Jul 2025 05:22:20 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1751458941; x=1752063741; 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=G0lOyAHGfdwVrVagI3IBAJ8avsxWv+VgaY92gqB8lM0=; b=G3goi1vcMmuBgTjiSnPcfp0cKCxPosUutjboZYSMJI7U84zOgE5sc1LYh/lIFDzOPg vDZDP7sEd34KrLG33ZwHCa+zDkFktRwBlhJVeXjvsNO3XlEIEYllznbb4t2xfsDhzehw tQGumBxoebADGhKS4D7u3l6gniW3UeXg8PT3Ga97QNOgLjGDsoGeff3E+pgUb8JVkDVD GFtzp/kb2dVAsEfQRgTV9BqHRrc0IGSSrF8hYV7vb9qyTQU+JdhedTeTaXB6qFzHuyzT jvQSvkIsKp7gGNKGtXf1/tECU1wYOtReBeqi/jIGjDDH5/uNthsGjMYRBpZgLORw4reJ 0p2g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1751458941; x=1752063741; 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=G0lOyAHGfdwVrVagI3IBAJ8avsxWv+VgaY92gqB8lM0=; b=I0p7ae0f2m+eBqTPraWzitfL8n39WEj417d7aLX76jZtY0+aVZsJXKPMk7IQWvSwuv L0eEKjxrFzg+fTXTQvTzfFo0qQQeVzuNVS7307K5u1znGsiv4nHm7XeEs816n54iH0zS vnlk1Kzm770aagVYO+8LCQpLy39uhWCVCDGdjxG5S0OpG4Dk4LzfMuIjxRQZmzmqZVy8 XJXp3rWE7sooiM0Gba6XuB74C2FfEZJtouMHPZA689kkiEYpQuxYVBBL9qP/+2EAXA9c JRwLcpcgAUnQ8kBq6/aEwOExitAJpgbHNLXLAdBJLWByyHkZg2HXmqY+Fom8iGIWVTLz p+Vw== X-Gm-Message-State: AOJu0YwiDZSaHz3CkDEKE3tuyGuYpq6BVnWHKU9t1+eMkR7P2qb8vhGW ThjzwPXbAHMFDJD7ur0fSJN0WtCALyvdvTjhlBNn+ZNcaJxqBa9gBFgn+Zz7MZEtcTQj+rKjXtR 1/IAd31A= X-Gm-Gg: ASbGncvKBz1hMY8ImbYhBphZ0nxRzqyDqUkhQIUqCgIT/toEkEmM4cTRElHu7mpHe0u DTTiQVmr0+3i6IloVVLxlFIeQAZM4r7PmHhfm5jUlYpFcRPddImxcXTRgCph3vvt0P2LMrDx/6D 2maALQsu48UxIfWuUiuyVINBFpW3Mvnmwra0oE2TERy4XJbbz6+2GUqjuooK+TODTeQf9MwrLRw 3XjQKqpgEb9D37ZjOEUXIK3ySvoRiCIb3HY3dGBe+271OWYhN3Ffzop5x5MIbteZ7NYjaaIlCrr HiTadc9++hqnyJzgcEfyFgfIsptoSJD+YzWavzNuaFHgnsCZA79bjZcKXPnBpz7XOZW9Ww== X-Google-Smtp-Source: AGHT+IH/WXDzTMlzCxAuwP43kQHnbJP3++519fAOeui32y2v7WRNtWr0vvOw5X+s9U+7TnB2mBvmwg== X-Received: by 2002:a05:6870:6f12:b0:2e9:fd62:9061 with SMTP id 586e51a60fabf-2f5a8c83c06mr2028914fac.32.1751458940998; Wed, 02 Jul 2025 05:22:20 -0700 (PDT) From: Richard Henderson To: qemu-devel@nongnu.org Cc: qemu-arm@nongnu.org, peter.maydell@linaro.org Subject: [PATCH v3 04/10] target/arm: Replace @rda_rn_rm_e0 in sve.decode Date: Wed, 2 Jul 2025 06:22:07 -0600 Message-ID: <20250702122213.758588-5-richard.henderson@linaro.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20250702122213.758588-1-richard.henderson@linaro.org> References: <20250702122213.758588-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=lists.gnu.org; Received-SPF: pass client-ip=2001:4860:4864:20::36; envelope-from=richard.henderson@linaro.org; helo=mail-oa1-x36.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: 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: 1751459182004116600 Content-Type: text/plain; charset="utf-8" Replace @rda_rn_rm_e0 with @rda_rn_rm_ex, and require users to supply an explicit esz. Signed-off-by: Richard Henderson Reviewed-by: Peter Maydell --- target/arm/tcg/sve.decode | 48 +++++++++++++++++++-------------------- 1 file changed, 24 insertions(+), 24 deletions(-) diff --git a/target/arm/tcg/sve.decode b/target/arm/tcg/sve.decode index 04b6fcc0cf..3a99eb7299 100644 --- a/target/arm/tcg/sve.decode +++ b/target/arm/tcg/sve.decode @@ -131,11 +131,11 @@ @rda_rn_rm ........ esz:2 . rm:5 ... ... rn:5 rd:5 \ &rrrr_esz ra=3D%reg_movprfx =20 -# Four operand with unused vector element size -@rda_rn_rm_e0 ........ ... rm:5 ... ... rn:5 rd:5 \ - &rrrr_esz esz=3D0 ra=3D%reg_movprfx -@rdn_ra_rm_e0 ........ ... rm:5 ... ... ra:5 rd:5 \ - &rrrr_esz esz=3D0 rn=3D%reg_movprfx +# Four operand with explicit vector element size +@rda_rn_rm_ex ........ ... rm:5 ... ... rn:5 rd:5 \ + &rrrr_esz ra=3D%reg_movprfx +@rdn_ra_rm_ex ........ ... rm:5 ... ... ra:5 rd:5 \ + &rrrr_esz rn=3D%reg_movprfx =20 # Three operand with "memory" size, aka immediate left shift @rd_rn_msz_rm ........ ... rm:5 .... imm:2 rn:5 rd:5 &rrri @@ -428,12 +428,12 @@ XAR 00000100 .. 1 ..... 001 101 rm:5 rd:= 5 &rrri_esz \ rn=3D%reg_movprfx esz=3D%tszimm16_esz imm=3D%tszimm16_shr =20 # SVE2 bitwise ternary operations -EOR3 00000100 00 1 ..... 001 110 ..... ..... @rdn_ra_rm= _e0 -BSL 00000100 00 1 ..... 001 111 ..... ..... @rdn_ra_rm= _e0 -BCAX 00000100 01 1 ..... 001 110 ..... ..... @rdn_ra_rm= _e0 -BSL1N 00000100 01 1 ..... 001 111 ..... ..... @rdn_ra_rm= _e0 -BSL2N 00000100 10 1 ..... 001 111 ..... ..... @rdn_ra_rm= _e0 -NBSL 00000100 11 1 ..... 001 111 ..... ..... @rdn_ra_rm= _e0 +EOR3 00000100 00 1 ..... 001 110 ..... ..... @rdn_ra_rm_ex = esz=3D0 +BSL 00000100 00 1 ..... 001 111 ..... ..... @rdn_ra_rm_ex = esz=3D0 +BCAX 00000100 01 1 ..... 001 110 ..... ..... @rdn_ra_rm_ex = esz=3D0 +BSL1N 00000100 01 1 ..... 001 111 ..... ..... @rdn_ra_rm_ex = esz=3D0 +BSL2N 00000100 10 1 ..... 001 111 ..... ..... @rdn_ra_rm_ex = esz=3D0 +NBSL 00000100 11 1 ..... 001 111 ..... ..... @rdn_ra_rm_ex = esz=3D0 =20 ### SVE Index Generation Group =20 @@ -1450,9 +1450,9 @@ EORTB 01000101 .. 0 ..... 10010 1 ..... ...= .. @rd_rn_rm =20 ## SVE integer matrix multiply accumulate =20 -SMMLA 01000101 00 0 ..... 10011 0 ..... ..... @rda_rn_rm_e0 -USMMLA 01000101 10 0 ..... 10011 0 ..... ..... @rda_rn_rm_e0 -UMMLA 01000101 11 0 ..... 10011 0 ..... ..... @rda_rn_rm_e0 +SMMLA 01000101 00 0 ..... 10011 0 ..... ..... @rda_rn_rm_ex esz= =3D2 +USMMLA 01000101 10 0 ..... 10011 0 ..... ..... @rda_rn_rm_ex esz= =3D2 +UMMLA 01000101 11 0 ..... 10011 0 ..... ..... @rda_rn_rm_ex esz= =3D2 =20 ## SVE2 bitwise permute =20 @@ -1602,9 +1602,9 @@ SQRDCMLAH_zzzz 01000100 esz:2 0 rm:5 0011 rot:2 rn:5= rd:5 ra=3D%reg_movprfx USDOT_zzzz 01000100 .. 0 ..... 011 110 ..... ..... @rda_rn_rm =20 ### SVE2 floating point matrix multiply accumulate -BFMMLA 01100100 01 1 ..... 111 001 ..... ..... @rda_rn_rm_e0 -FMMLA_s 01100100 10 1 ..... 111 001 ..... ..... @rda_rn_rm_e0 -FMMLA_d 01100100 11 1 ..... 111 001 ..... ..... @rda_rn_rm_e0 +BFMMLA 01100100 01 1 ..... 111 001 ..... ..... @rda_rn_rm_ex esz= =3D1 +FMMLA_s 01100100 10 1 ..... 111 001 ..... ..... @rda_rn_rm_ex esz= =3D2 +FMMLA_d 01100100 11 1 ..... 111 001 ..... ..... @rda_rn_rm_ex esz= =3D3 =20 ### SVE2 Memory Gather Load Group =20 @@ -1654,16 +1654,16 @@ FCVTLT_sd 01100100 11 0010 11 101 ... ..... .= .... @rd_pg_rn_e0 FLOGB 01100101 00 011 esz:2 0101 pg:3 rn:5 rd:5 &rpr_esz =20 ### SVE2 floating-point multiply-add long (vectors) -FMLALB_zzzw 01100100 10 1 ..... 10 0 00 0 ..... ..... @rda_rn_rm_e0 -FMLALT_zzzw 01100100 10 1 ..... 10 0 00 1 ..... ..... @rda_rn_rm_e0 -FMLSLB_zzzw 01100100 10 1 ..... 10 1 00 0 ..... ..... @rda_rn_rm_e0 -FMLSLT_zzzw 01100100 10 1 ..... 10 1 00 1 ..... ..... @rda_rn_rm_e0 +FMLALB_zzzw 01100100 10 1 ..... 10 0 00 0 ..... ..... @rda_rn_rm_ex e= sz=3D2 +FMLALT_zzzw 01100100 10 1 ..... 10 0 00 1 ..... ..... @rda_rn_rm_ex e= sz=3D2 +FMLSLB_zzzw 01100100 10 1 ..... 10 1 00 0 ..... ..... @rda_rn_rm_ex e= sz=3D2 +FMLSLT_zzzw 01100100 10 1 ..... 10 1 00 1 ..... ..... @rda_rn_rm_ex e= sz=3D2 =20 -BFMLALB_zzzw 01100100 11 1 ..... 10 0 00 0 ..... ..... @rda_rn_rm_e0 -BFMLALT_zzzw 01100100 11 1 ..... 10 0 00 1 ..... ..... @rda_rn_rm_e0 +BFMLALB_zzzw 01100100 11 1 ..... 10 0 00 0 ..... ..... @rda_rn_rm_ex e= sz=3D2 +BFMLALT_zzzw 01100100 11 1 ..... 10 0 00 1 ..... ..... @rda_rn_rm_ex e= sz=3D2 =20 ### SVE2 floating-point bfloat16 dot-product -BFDOT_zzzz 01100100 01 1 ..... 10 0 00 0 ..... ..... @rda_rn_rm_e0 +BFDOT_zzzz 01100100 01 1 ..... 10 0 00 0 ..... ..... @rda_rn_rm_ex e= sz=3D2 =20 ### SVE2 floating-point multiply-add long (indexed) FMLALB_zzxw 01100100 10 1 ..... 0100.0 ..... ..... @rrxr_3a esz=3D2 --=20 2.43.0 From nobody Sat Nov 15 12:44:15 2025 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=1751459182; cv=none; d=zohomail.com; s=zohoarc; b=Rk8vXPAflmYxpCE2BhxbjRAwhI6Y94k90qH4H9mw0TGqGf2HaUc87DADJUa4qST5wSRzYkT/a0N54mGLEdiUCgkKt6puSHmmFFJfF8jZAyBnDcsaX4fr9HZZzKMcEVbueelG8PQTyN+M8izpH8YVox1bvcFPHFvNbkh5e4arM3w= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1751459182; 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=baCvuXNefMQymQ80qbfxmxR0glq7SPYFcTPfnY9zD18=; b=Y6pFZV0QcZP5+TH5vbMIfgAyU2+nSVzVzvoYrHq4IEp1yRZDvd7p93XMe3v62hRbojoNlJTEMk6ZLhllEqqmKtYIfWqBd7cirRxeMpAGORPsm/Hy8iYGPcJPhbGWTE2QO1V8rko1GMb/MfEUvkb+Aljnjmq5tMS0nZIqLFj2Ivk= 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 lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1751459182518132.11782185671836; Wed, 2 Jul 2025 05:26:22 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1uWwU1-0004tS-35; Wed, 02 Jul 2025 08:22:37 -0400 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 1uWwTw-0004s7-U1 for qemu-devel@nongnu.org; Wed, 02 Jul 2025 08:22:32 -0400 Received: from mail-oa1-x2a.google.com ([2001:4860:4864:20::2a]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1uWwTn-0007DL-V6 for qemu-devel@nongnu.org; Wed, 02 Jul 2025 08:22:32 -0400 Received: by mail-oa1-x2a.google.com with SMTP id 586e51a60fabf-2ea2fee5471so3661506fac.0 for ; Wed, 02 Jul 2025 05:22:23 -0700 (PDT) Received: from stoup.. ([187.210.107.185]) by smtp.gmail.com with ESMTPSA id 586e51a60fabf-2efd50b1bd3sm3785013fac.28.2025.07.02.05.22.21 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 02 Jul 2025 05:22:21 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1751458942; x=1752063742; 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=baCvuXNefMQymQ80qbfxmxR0glq7SPYFcTPfnY9zD18=; b=uYalkl9ETx8HTCo4bDXkxCfFmjpfWPsplJd2PZDZBVVBHbVww0o8QSn2xxbyVzFWuB gfUMe4f2LIvkrvTqhER4nN8qHlhUEzsK6i30XDmO39cxZK59+znt7OWml1KoiG1jGTvT f9GoLebRXPAxSCjFzpQLyE14UxlXMoMsgfdnMNNzPqPCB+sE1U4Rn8Ts05BMT7BnU4st sHobEe3TW53vTAh25026VlZ38jTa1OVgOMJSD/Ei+AztqfKpN+lcuF9gj21Whg/emecg BZ8o405+v1OHgzyk4UCIM7zlvdqeSooEXqhN2vFRzDeFCNCB2Z81NMZdW1lCEIP2gSCI G88Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1751458942; x=1752063742; 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=baCvuXNefMQymQ80qbfxmxR0glq7SPYFcTPfnY9zD18=; b=tgtJrdtrNIM1yRQ30JhwdHzQGzOwsWTipAfX71VZ+sRts51WL2p+/ERfnLprgZc0Gt Ev+dHHG3Nwmdl/PUbBJXjDSq0TJL8g513XHmXPyetQb31Un3X8m2xE9UG2h3YHUFnf5R pSdhQ08Nz+naVORJZfOuq+HiRMmy2sN520DlrAmMgB0BAi/M25qHCiXxeuxoF4uEQHaP NyMkSFj/Om1WyF+Jdgi86A0fN4D1JHA7lr392FPKSldil09SjYVQHCQNdcbHMTfh8IUd TedDi55ER8AIRTDQkxJl2of1JdOXCxaV35tjuSc1W0OtDxqwt87eSEQW9XZYFsynIhVk v//Q== X-Gm-Message-State: AOJu0YwysZFK6XxMQN0pVJDp310jL8XVgSrKmQOXC/h+DahzdwDRCGLl b/Yj96puzcdkkqkxYc8UYc7USf/XD0FvkDzJ9Ee7kydJOly3s3tREDfPUx2MNxMeg7bodMPgAHu UeztWnsg= X-Gm-Gg: ASbGncv35u7RcvGzf8P3vFPdlulQgFaCGphYi1Cz8vghRGefRyborHvQ+32AaEv+MTl 9fr04jmqiRc6fV06jR69WVQ/CvHBsI2vMbJ3/cfrETR5HRVWlRuVe9r0h58IklmbmNrI1KpXC3V swI5elwd7Wnfmz8Y1vPb6AxqAk0AiTvWZTXo2AfXmWOt5145SACOUiNXa7QxF4reKNy+ShB6xRn n7DvdG27D3l4yMEDV2MZ0yp+tE2Aw+B0+nIvl/CxweWd1fMJQlYe+E2nUADiTICVv254pWc42O4 DtpbJeMbC+aNhL/yIOba2/2R8zuXO414BX37IkC1sglYH9/7/7AYtVsO8z+6JxI7yWaV9g== X-Google-Smtp-Source: AGHT+IG8O3c7Ayf5OIaO8OywKFYvhsiMOcGZA3xkdFhWHxf2fMTvk3P+uYoh0ZS3b2h2j5VR8FBvzg== X-Received: by 2002:a05:6871:4409:b0:2e9:925b:206f with SMTP id 586e51a60fabf-2f6649c53cemr1615173fac.17.1751458942123; Wed, 02 Jul 2025 05:22:22 -0700 (PDT) From: Richard Henderson To: qemu-devel@nongnu.org Cc: qemu-arm@nongnu.org, peter.maydell@linaro.org Subject: [PATCH v3 05/10] target/arm: Fix FMMLA (64-bit element) for 128-bit VL Date: Wed, 2 Jul 2025 06:22:08 -0600 Message-ID: <20250702122213.758588-6-richard.henderson@linaro.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20250702122213.758588-1-richard.henderson@linaro.org> References: <20250702122213.758588-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=lists.gnu.org; Received-SPF: pass client-ip=2001:4860:4864:20::2a; envelope-from=richard.henderson@linaro.org; helo=mail-oa1-x2a.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: 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: 1751459183800116600 Content-Type: text/plain; charset="utf-8" Signed-off-by: Richard Henderson Reviewed-by: Peter Maydell --- target/arm/tcg/translate-sve.c | 23 ++++++++++++++++------- 1 file changed, 16 insertions(+), 7 deletions(-) diff --git a/target/arm/tcg/translate-sve.c b/target/arm/tcg/translate-sve.c index 588a5b006b..a0de5b488d 100644 --- a/target/arm/tcg/translate-sve.c +++ b/target/arm/tcg/translate-sve.c @@ -7025,17 +7025,26 @@ DO_ZPZZ_FP(FMINNMP, aa64_sve2, sve2_fminnmp_zpzz) DO_ZPZZ_FP(FMAXP, aa64_sve2, sve2_fmaxp_zpzz) DO_ZPZZ_FP(FMINP, aa64_sve2, sve2_fminp_zpzz) =20 +static bool do_fmmla(DisasContext *s, arg_rrrr_esz *a, + gen_helper_gvec_4_ptr *fn) +{ + if (sve_access_check(s)) { + if (vec_full_reg_size(s) < 4 * memop_size(a->esz)) { + unallocated_encoding(s); + } else { + gen_gvec_fpst_zzzz(s, fn, a->rd, a->rn, a->rm, a->ra, 0, FPST_= A64); + } + } + return true; +} + +TRANS_FEAT_NONSTREAMING(FMMLA_s, aa64_sve_f32mm, do_fmmla, a, gen_helper_f= mmla_s) +TRANS_FEAT_NONSTREAMING(FMMLA_d, aa64_sve_f64mm, do_fmmla, a, gen_helper_f= mmla_d) + /* * SVE Integer Multiply-Add (unpredicated) */ =20 -TRANS_FEAT_NONSTREAMING(FMMLA_s, aa64_sve_f32mm, gen_gvec_fpst_zzzz, - gen_helper_fmmla_s, a->rd, a->rn, a->rm, a->ra, - 0, FPST_A64) -TRANS_FEAT_NONSTREAMING(FMMLA_d, aa64_sve_f64mm, gen_gvec_fpst_zzzz, - gen_helper_fmmla_d, a->rd, a->rn, a->rm, a->ra, - 0, FPST_A64) - static gen_helper_gvec_4 * const sqdmlal_zzzw_fns[] =3D { NULL, gen_helper_sve2_sqdmlal_zzzw_h, gen_helper_sve2_sqdmlal_zzzw_s, gen_helper_sve2_sqdmlal_zzzw_d, --=20 2.43.0 From nobody Sat Nov 15 12:44:15 2025 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=1751459157; cv=none; d=zohomail.com; s=zohoarc; b=QY6SwLv4GSNbxkqLy3dFgM78wCCJ9j7BGn2ft6SOMxEnm+cqjgKnJNmxFGL0k69Tf9fuwGtcF8ZDmYOpv3Hbzqh2pbg0maRcDIuCu4TUPKmWBGWNadSmrkJuJ1LW5gvVfgF5vlJvpuOWhE5yh9ow18rnkruq2Rx066h1JM+iV+g= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1751459157; 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=phdMuO5PFzyuS0l+J9EZDp4Ant5FWeh391ft9bOj440=; b=Hw+GFRLzlz4TqQ+Dsx13JlZ0/hSQhkH8lL5kdhXiZLD3Byxpy+uT0lSuljgKcb75ieVNGUKPx1E8DJQRqSyvxUPsyrZwL6FjNBIzbiQvZDMqrQMdNCnOwHdNAPucnJHUQfd2gZYaUR43wV3HXl4GWypRmwmadP5or/R3jfBeP0E= 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 lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1751459157163162.4144153402176; Wed, 2 Jul 2025 05:25:57 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1uWwUP-00054y-8v; Wed, 02 Jul 2025 08:23:01 -0400 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 1uWwU6-0004xs-13 for qemu-devel@nongnu.org; Wed, 02 Jul 2025 08:22:42 -0400 Received: from mail-oa1-x2a.google.com ([2001:4860:4864:20::2a]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1uWwTq-0007Dh-PG for qemu-devel@nongnu.org; Wed, 02 Jul 2025 08:22:41 -0400 Received: by mail-oa1-x2a.google.com with SMTP id 586e51a60fabf-2e95ab2704fso2958591fac.3 for ; Wed, 02 Jul 2025 05:22:24 -0700 (PDT) Received: from stoup.. ([187.210.107.185]) by smtp.gmail.com with ESMTPSA id 586e51a60fabf-2efd50b1bd3sm3785013fac.28.2025.07.02.05.22.22 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 02 Jul 2025 05:22:22 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1751458943; x=1752063743; 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=phdMuO5PFzyuS0l+J9EZDp4Ant5FWeh391ft9bOj440=; b=DfR/EY1LqA953Zrk6ojxvFrHT2BmG09bIFl2jMesbajv7OdfjL8Fw8DPr4GmC43DPP cIu8vOCV4xvBjLVr6gwgaUW3rqXYBdZ9xyeVdg/1k1+/6o5iL4fL5Q4Gwb3P8zm8c5SS /QJaUyyWA/TsSQHYfLjiY9vLZVRX/z1Erk2ja1qJhTSIpVLhoeIDoXy7Yq5IQwmBSEAm lKXfzgRl176SP40EdwF0vb9tKBCh/jhewydYbV8b13sh1aMiEd/x50C/6iRv2nQdVjYp RQVJ+/iX72XgEUNbyAiZvjv0gjWUdRrvEl1fzxzgBjv6qvNsjeTOBMHGe8IXIlixnBZF W87g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1751458943; x=1752063743; 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=phdMuO5PFzyuS0l+J9EZDp4Ant5FWeh391ft9bOj440=; b=s5HbHpWdHiDHVJFWEJnzDOolsgIWNkDSddKz0kCqojh69nvmVxj1//pDGBSg1hSVHH c5/p/Fwy2RI8MwQEkl8718QL5PIm01ouBWlo12E1j9OPOblBZo4q8zhSg88gRG/lWYiR mFI+x86OcO7nIGlGLygfRs5/TNK+E3YW4/BXAkP8e4hg46UkgX/4C/WboadsdWRtKIb0 gp9acqUWhnh1aVuxVPs4FgNYvm/JOGLR3LcDGguRJWqfc6u8J1ny5Ohh8mxDnwoET95s ttuoS45qTZ7rifLBEOCzDV9scaA4tOVEKPt5NoyPWgu/bOFHFvUDWkMuZw8cRF05h1BR 2TPA== X-Gm-Message-State: AOJu0YxnKyjePy3Q9Lgr+Xdlv5UHSWG5mOMdRWFbFoZaSM6ch1M4sRkb auPRo1BsEmPAvnFtggrowlbZvpQ9j0uxaEYyrAMeZIFcK98Iwfusm+rBJ+nuJB7qOHWA6mX8hez XaYra3WA= X-Gm-Gg: ASbGncudHYjKLMFSlqnCYwbM88IEjEVOH1YKBHhFOgfbnxICX9HE8IkGR/zl3BLEynv oxoSo9iceYgcZLrmd8k5iXgFj0FH/eElYZ5Jpwus4rcV7xYKfw3NYdcAt3n/T/64rJGyY9aFOI7 z5sv12TOfn166jmAKsTLL/3r2C9Ltu2EF9rUvpETNt/TQjFR2BMl0PH7+feGrtnum0z2XySl8HH rPONBwgqmgBdW3HwWccQwyTP2tUWakwHAVznGVO0LK4g+s9M5QhkgaEZByCqkSkOAV5+8zN8Wjr hvivewTfLUdPEJpBbWOC741M+m4TlawJnGyfjVac07NT52eH5lLn5M3DR40bdORpoBOv44or1Sp 33v9P X-Google-Smtp-Source: AGHT+IGZT6I/weadZbfX4/XW3bxIKBvsuN66aPgMB1uXdj2N1Uj3SoCrvNW9krezOWg0pb38YipVrA== X-Received: by 2002:a05:6870:7007:b0:2d6:6639:52d9 with SMTP id 586e51a60fabf-2f5c7adb95amr2103359fac.32.1751458943106; Wed, 02 Jul 2025 05:22:23 -0700 (PDT) From: Richard Henderson To: qemu-devel@nongnu.org Cc: qemu-arm@nongnu.org, peter.maydell@linaro.org Subject: [PATCH v3 06/10] target/arm: Disable FEAT_F64MM if maximum SVE vector size too small Date: Wed, 2 Jul 2025 06:22:09 -0600 Message-ID: <20250702122213.758588-7-richard.henderson@linaro.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20250702122213.758588-1-richard.henderson@linaro.org> References: <20250702122213.758588-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=lists.gnu.org; Received-SPF: pass client-ip=2001:4860:4864:20::2a; envelope-from=richard.henderson@linaro.org; helo=mail-oa1-x2a.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: 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: 1751459157520116600 Content-Type: text/plain; charset="utf-8" All F64MM instructions operate on a 256-bit vector. If only 128-bit vectors is supported by the cpu, then the cpu cannot enable F64MM. Suggested-by: Peter Maydell Signed-off-by: Richard Henderson Reviewed-by: Peter Maydell --- target/arm/cpu64.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/target/arm/cpu64.c b/target/arm/cpu64.c index 200da1c489..c5c289eadf 100644 --- a/target/arm/cpu64.c +++ b/target/arm/cpu64.c @@ -237,6 +237,12 @@ void arm_cpu_sve_finalize(ARMCPU *cpu, Error **errp) /* From now on sve_max_vq is the actual maximum supported length. */ cpu->sve_max_vq =3D max_vq; cpu->sve_vq.map =3D vq_map; + + /* FEAT_F64MM requires the existence of a 256-bit vector size. */ + if (max_vq < 2) { + cpu->isar.id_aa64zfr0 =3D FIELD_DP64(cpu->isar.id_aa64zfr0, + ID_AA64ZFR0, F64MM, 0); + } } =20 /* --=20 2.43.0 From nobody Sat Nov 15 12:44:15 2025 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=1751459055; cv=none; d=zohomail.com; s=zohoarc; b=nHP7kfjdOt7TV/7wec+2h1l5TNhxQGHHBLAhRxuQKPDEbdOTvuKHRqSZZeZmUBrkqlroYsytEnGtu3hTMi9YXIStGhzXzhiW/QpzPpG34V97hbHavJSlF74voZGeH73aAsHWypcgqN+0H3uozSc6kNyW3QTR6SKp7vEoeQBIWKU= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1751459055; 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=7yKEiHZ9hbY/jVbCg1JFWOkif/DEikx+UVyK1VqdZTU=; b=RvWITfPxzj0H5UTsTiefCZBT1c4DXjiATcPn4r76h+9niutwJbI6dT1VhIy9UR960LoP6U4B81FhczaEk8VZ2e6YUTDZZqeGo3iU8EU4+Gs0teH6d+mGA7k2jhOofdLO56gIfCOrR1ywmV6V1a+H7HEP/6ZM89G/DayaMWiSWNY= 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 lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1751459055649417.68772534098446; Wed, 2 Jul 2025 05:24:15 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1uWwUj-0005CW-U5; Wed, 02 Jul 2025 08:23:21 -0400 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 1uWwUF-000513-EP for qemu-devel@nongnu.org; Wed, 02 Jul 2025 08:22:57 -0400 Received: from mail-oo1-xc2b.google.com ([2607:f8b0:4864:20::c2b]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1uWwTt-0007E2-5s for qemu-devel@nongnu.org; Wed, 02 Jul 2025 08:22:50 -0400 Received: by mail-oo1-xc2b.google.com with SMTP id 006d021491bc7-611b246727cso2197518eaf.0 for ; Wed, 02 Jul 2025 05:22:25 -0700 (PDT) Received: from stoup.. ([187.210.107.185]) by smtp.gmail.com with ESMTPSA id 586e51a60fabf-2efd50b1bd3sm3785013fac.28.2025.07.02.05.22.23 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 02 Jul 2025 05:22:23 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1751458944; x=1752063744; 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=7yKEiHZ9hbY/jVbCg1JFWOkif/DEikx+UVyK1VqdZTU=; b=aKUumR19qpBK6829uTJtEioqyRF6S0xJArFsC/hTaKxkvK5s1MiLZRshFNLGf2iMug uHVq4ZBHtaj/dqfJQJNhc3xMwirUGF32vKIWWdaNV0u41Nt8rMH3/u7H9nRUZlJ+twHG ev98wpAtekD1qsVTAneZAy/Cj9WUcWb4pVkVpxMtaPuZbNjLwYk+JPMri7WcyEYJc/gP tjjoljxtQYm4a9anHZuf3xzZLt4pAzlDmF2EgLWKtMVMm4wDtWH/sAEz7qTIZhQZQZ83 i2dP10dn0Uy+9CVtDsGMjI9/3fkAnroMp/GKxUP6IHPUecRGKLbz7YdazqdM/SVaaLk7 jmAg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1751458944; x=1752063744; 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=7yKEiHZ9hbY/jVbCg1JFWOkif/DEikx+UVyK1VqdZTU=; b=irbl/JtRuChKHqucQSXXvr8btSGS9WE0otwJ0HPOZYv9Psa8luob1w6FT/zzOsKwo8 AlljukmjfaCdbL0wKOLNXuqFmRhGUVVbP/VgdETcZ5lhGqW7dx6XaWtlhiBRr6T8zpZZ e4m3piLIRMutn6eEOF+u7X8QZl+FdlP2iu1hZ6tzl59kLBiCziGasCaWAxXDC8zZnCne FsstJ05lAh05Uxok7xAwmjYwj+4CzWS/H9B14upvxKv0yovvKaCRsDNuvkhX+RtD2yT/ 4vNdEWHDBvKjot9SyoiVWFfBsUve4uoNq2XnM3IUnfvZRzrDhbi1bJxgUvpx14hnheOc XP5Q== X-Gm-Message-State: AOJu0Yxq6cSwl9ci52qONVLbLEmrX1qnq0T9PNVb4etkDm0ds8ClStqM 2kfkUQk1LKNEBprlzWr1UrUM2na7o9s3gDp0HNmvfERtbgMEz/VVoQBvm5vTDN18LX4kG7382SY x48W5Sx0= X-Gm-Gg: ASbGncs6t57Jf1iY9sSXgefC8mYviB25JpFKlMRPzZ/oC7mNlHxFxzR99OHYWLL6xNU aLCHkOUlkt6efrfEOO3lUI75Cve1wyYtFbjrzoc6S9f3YBp6omlkmSIwbiJpkMtocyNp5PD2zDG AT7lOm85u+e31OgMlnxmqNjzhxw7NQhWLp4M1iPUjDxelRO2sn1tfLWZ5XeWSxkQ+YUUTzeElyX BMADuQKvzYFj7AbE/cD3fn1UJfB3nUuza0vI6T7UOQ5zmBjO8ybTDxR+ATwFFPEPs6hc0hNP0kh ycn0jqxG2RzovDlmDcvJd+y27lSJTDRrHrfxQjNxgajNU6vk3FGsgrdnA5Lgm0e1WvoTdQ== X-Google-Smtp-Source: AGHT+IGzFuZ7//7IsC5kS8lxo/4KS48URGkcWItgc05ASXlWZc8b+dsrb2s8xC5iFsu4xstngwOjtQ== X-Received: by 2002:a05:6870:818a:b0:2ef:ac47:798a with SMTP id 586e51a60fabf-2f5b0aa9a6amr2334709fac.9.1751458944129; Wed, 02 Jul 2025 05:22:24 -0700 (PDT) From: Richard Henderson To: qemu-devel@nongnu.org Cc: qemu-arm@nongnu.org, peter.maydell@linaro.org, qemu-stable@nongnu.org Subject: [PATCH v3 07/10] target/arm: Fix PSEL size operands to tcg_gen_gvec_ands Date: Wed, 2 Jul 2025 06:22:10 -0600 Message-ID: <20250702122213.758588-8-richard.henderson@linaro.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20250702122213.758588-1-richard.henderson@linaro.org> References: <20250702122213.758588-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=lists.gnu.org; Received-SPF: pass client-ip=2607:f8b0:4864:20::c2b; envelope-from=richard.henderson@linaro.org; helo=mail-oo1-xc2b.google.com X-Spam_score_int: -16 X-Spam_score: -1.7 X-Spam_bar: - X-Spam_report: (-1.7 / 5.0 requ) BAYES_00=-1.9, DKIM_INVALID=0.1, DKIM_SIGNED=0.1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, T_SPF_TEMPERROR=0.01 autolearn=no autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: 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: 1751459056249116600 Content-Type: text/plain; charset="utf-8" Gvec only operates on size 8 and multiples of 16. Predicates may be any multiple of 2. Round up the size using the appropriate function. Cc: qemu-stable@nongnu.org Fixes: 598ab0b24c0 ("target/arm: Implement PSEL") Signed-off-by: Richard Henderson Reviewed-by: Peter Maydell --- target/arm/tcg/translate-sve.c | 1 + 1 file changed, 1 insertion(+) diff --git a/target/arm/tcg/translate-sve.c b/target/arm/tcg/translate-sve.c index a0de5b488d..8403034a0e 100644 --- a/target/arm/tcg/translate-sve.c +++ b/target/arm/tcg/translate-sve.c @@ -7291,6 +7291,7 @@ static bool trans_PSEL(DisasContext *s, arg_psel *a) tcg_gen_neg_i64(tmp, tmp); =20 /* Apply to either copy the source, or write zeros. */ + pl =3D size_for_gvec(pl); tcg_gen_gvec_ands(MO_64, pred_full_reg_offset(s, a->pd), pred_full_reg_offset(s, a->pn), tmp, pl, pl); return true; --=20 2.43.0 From nobody Sat Nov 15 12:44:15 2025 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=1751459024; cv=none; d=zohomail.com; s=zohoarc; b=kBqk/BODqu/dw+DwPc5cioq2R65xJkvkosIxNUr5EyvR9RaNJlcG5b6oVQQ+0VwSWZWbg94pas7LVKO1lZDCGGRuBBZGrJLwbQI7hnVolrd3AD39UjkVXGw28RKO+TiVvZkPhDTlefUiiKcnll1CgIyKSqdVRNSAcsTR4TIc15Y= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1751459024; 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=wJq8Ct14ZkJ7UIbuFZO9txkdxmDUbAj15XGDsXarXQw=; b=ZPV0a9an9Uql6Wa/9pVq4+YG5t5/GWrm4DnL6AKQt8mjCi2soYb0Fpkp0AruDLeR8gst1qYYXrySH4J2MO4pVtbdSJESag2rj++MOtvruDu3TAcYzMWiUk2iVzjkYUDRMA3yGcKkSMo36usVOi8wBUr27gz20ReoT82sipflihU= 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 lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1751459024188331.05529476476295; Wed, 2 Jul 2025 05:23:44 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1uWwUW-000561-MM; Wed, 02 Jul 2025 08:23:09 -0400 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 1uWwUB-0004zO-3n for qemu-devel@nongnu.org; Wed, 02 Jul 2025 08:22:48 -0400 Received: from mail-oa1-x34.google.com ([2001:4860:4864:20::34]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1uWwTu-0007El-7Y for qemu-devel@nongnu.org; Wed, 02 Jul 2025 08:22:45 -0400 Received: by mail-oa1-x34.google.com with SMTP id 586e51a60fabf-2eaf96c7579so2837203fac.3 for ; Wed, 02 Jul 2025 05:22:26 -0700 (PDT) Received: from stoup.. ([187.210.107.185]) by smtp.gmail.com with ESMTPSA id 586e51a60fabf-2efd50b1bd3sm3785013fac.28.2025.07.02.05.22.24 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 02 Jul 2025 05:22:25 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1751458945; x=1752063745; 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=wJq8Ct14ZkJ7UIbuFZO9txkdxmDUbAj15XGDsXarXQw=; b=UqHYRTSEfCmn/L4BqmtKW1WznntwfGQODf/6W0H58JdvrYI4pxYsnCHEqefcVaUneH pElzn6NaeJavEIRDasJ02FcggcTs4Yol45aDApEGuGeh2RVyPQo3BU2RBV2342k0L/8y 9TTOC6hbWjMgD52qCaC5aip1rlyuS5O+iaqrG7JFm3P4P4LX4g2/xxv6R7zQFKn77AVS FO7ck4S6jOyYTHOjoZA01gW9WpTVYOyYCAAZ3O+JI5kYyqbi7GLSjIJYlsvGT/aOf5Xw xuy6sd15f3pXcaKzuS0xYqL97rxVjsl5QgXwno+O+UYrGUg7TYOWLnTWypesBkoioRsz HruA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1751458945; x=1752063745; 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=wJq8Ct14ZkJ7UIbuFZO9txkdxmDUbAj15XGDsXarXQw=; b=FPV8/x26B2ZEmLOIniXfYvV/sUoNX6IsoBRRvjxMgvDk52SsOWIvNlAmhXLpCTlYH0 buZMbtsdz/8hpzhQw+i62FqrzJiXI+rxfUJ8JREqFnGvYziKMDoQVymxS9LOzjXYSYpp 16HydEpMiaTE1vjjniWEB/ieR4IIXBBO/Ssqbv7hqL7O9qbJl5cY5YdE5dCFnNsbuae5 TmBfy1zLBvY8aBHg0Waz0FlX5fVam/sGU0UsTEUgzPAMxo3As8hZBtQbxLU0JxaTJDnf 5UAb9ZKaFDowPxmfqhEA70JIkTrNGbs/Qy6Rd3LmIv9ETXVydRnc57Q2dml/VCr+zVpZ 0akQ== X-Gm-Message-State: AOJu0YyUEnjDA6WPjatQzLfvs2EsclwlGTP3AFKZihdkLAebIiBAL9Mu S7UXtBte7gTB3Wp9QBHva7U/c32l1nFfhdJAQp4J5IkBEBkI8ph7dN7YfMNzMcoKMEgl6yPjVtz 1ZJi4wUw= X-Gm-Gg: ASbGncsTQWm0WMOM9EWeipKQITKtCZi/2B26Cp/3W36WVqsrQRBxaFsjorbp6pq8u+1 8qsqSt/fO/mPmna0oPyv3ztp/bH8oyucSCUtZIqDQgHsXQXS2jRsmpLMjJPUjRPRA0zgRMYxheQ j0h5u6ASirhVD7z0B4dKlddz7Uqzqg9kX2HIn7EITXKcFZ80DukGBId5vJY0E6Zp6FTMJFVvN5o Gkr1pbJmvdomRzQa+hcSl1nuobYz2xxx4NilmWZshm2L/ct5UOcP/foqUULFkZKPFL5nyS7sXi7 6Xp1HhOOn+xrnB7c99dNgXpts1e006wpYyevQ280dwJmip/5Qt0Kr5DHkpVXr8JrYZS2Yg== X-Google-Smtp-Source: AGHT+IEIRUPE3usqCxNJwLC4aKA79SIrXOgCq4MUPCYQyjfqvVHamPQvUVsplWIzLvq9zFG3zO4WiA== X-Received: by 2002:a05:6871:440f:b0:2c2:561c:47e3 with SMTP id 586e51a60fabf-2f5a8c977eamr1585633fac.21.1751458945558; Wed, 02 Jul 2025 05:22:25 -0700 (PDT) From: Richard Henderson To: qemu-devel@nongnu.org Cc: qemu-arm@nongnu.org, peter.maydell@linaro.org, qemu-stable@nongnu.org Subject: [PATCH v3 08/10] target/arm: Fix f16_dotadd vs nan selection Date: Wed, 2 Jul 2025 06:22:11 -0600 Message-ID: <20250702122213.758588-9-richard.henderson@linaro.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20250702122213.758588-1-richard.henderson@linaro.org> References: <20250702122213.758588-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=lists.gnu.org; Received-SPF: pass client-ip=2001:4860:4864:20::34; envelope-from=richard.henderson@linaro.org; helo=mail-oa1-x34.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: 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: 1751459025890116600 Content-Type: text/plain; charset="utf-8" Implement FPProcessNaNs4 within f16_dotadd, rather than simply letting NaNs propagate through the function. Cc: qemu-stable@nongnu.org Fixes: 3916841ac75 ("target/arm: Implement FMOPA, FMOPS (widening)") Signed-off-by: Richard Henderson Reviewed-by: Peter Maydell --- target/arm/tcg/sme_helper.c | 62 +++++++++++++++++++++++++++---------- 1 file changed, 46 insertions(+), 16 deletions(-) diff --git a/target/arm/tcg/sme_helper.c b/target/arm/tcg/sme_helper.c index de0c6e54d4..8f33387e4b 100644 --- a/target/arm/tcg/sme_helper.c +++ b/target/arm/tcg/sme_helper.c @@ -1005,25 +1005,55 @@ static float32 f16_dotadd(float32 sum, uint32_t e1,= uint32_t e2, * - we have pre-set-up copy of s_std which is set to round-to-odd, * for the multiply (see below) */ - float64 e1r =3D float16_to_float64(e1 & 0xffff, true, s_f16); - float64 e1c =3D float16_to_float64(e1 >> 16, true, s_f16); - float64 e2r =3D float16_to_float64(e2 & 0xffff, true, s_f16); - float64 e2c =3D float16_to_float64(e2 >> 16, true, s_f16); - float64 t64; + float16 h1r =3D e1 & 0xffff; + float16 h1c =3D e1 >> 16; + float16 h2r =3D e2 & 0xffff; + float16 h2c =3D e2 >> 16; float32 t32; =20 - /* - * The ARM pseudocode function FPDot performs both multiplies - * and the add with a single rounding operation. Emulate this - * by performing the first multiply in round-to-odd, then doing - * the second multiply as fused multiply-add, and rounding to - * float32 all in one step. - */ - t64 =3D float64_mul(e1r, e2r, s_odd); - t64 =3D float64r32_muladd(e1c, e2c, t64, 0, s_std); + /* C.f. FPProcessNaNs4 */ + if (float16_is_any_nan(h1r) || float16_is_any_nan(h1c) || + float16_is_any_nan(h2r) || float16_is_any_nan(h2c)) { + float16 t16; =20 - /* This conversion is exact, because we've already rounded. */ - t32 =3D float64_to_float32(t64, s_std); + if (float16_is_signaling_nan(h1r, s_f16)) { + t16 =3D h1r; + } else if (float16_is_signaling_nan(h1c, s_f16)) { + t16 =3D h1c; + } else if (float16_is_signaling_nan(h2r, s_f16)) { + t16 =3D h2r; + } else if (float16_is_signaling_nan(h2c, s_f16)) { + t16 =3D h2c; + } else if (float16_is_any_nan(h1r)) { + t16 =3D h1r; + } else if (float16_is_any_nan(h1c)) { + t16 =3D h1c; + } else if (float16_is_any_nan(h2r)) { + t16 =3D h2r; + } else { + t16 =3D h2c; + } + t32 =3D float16_to_float32(t16, true, s_f16); + } else { + float64 e1r =3D float16_to_float64(h1r, true, s_f16); + float64 e1c =3D float16_to_float64(h1c, true, s_f16); + float64 e2r =3D float16_to_float64(h2r, true, s_f16); + float64 e2c =3D float16_to_float64(h2c, true, s_f16); + float64 t64; + + /* + * The ARM pseudocode function FPDot performs both multiplies + * and the add with a single rounding operation. Emulate this + * by performing the first multiply in round-to-odd, then doing + * the second multiply as fused multiply-add, and rounding to + * float32 all in one step. + */ + t64 =3D float64_mul(e1r, e2r, s_odd); + t64 =3D float64r32_muladd(e1c, e2c, t64, 0, s_std); + + /* This conversion is exact, because we've already rounded. */ + t32 =3D float64_to_float32(t64, s_std); + } =20 /* The final accumulation step is not fused. */ return float32_add(sum, t32, s_std); --=20 2.43.0 From nobody Sat Nov 15 12:44:15 2025 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=1751459141; cv=none; d=zohomail.com; s=zohoarc; b=VeuhDF5NoCPexNXocEII6n8IaR3+2rZIYsmeSpH8J2DQq3M07uDXnmL0pK6cspCWYjwN/oEYgXPYEOtoO/3zGIPkiSvgA0D0jjbu2PBugq5e3JcNMm5g1d7bS3lZDph4+DouXQyu+Fck5DvGgWy8iUwqRzUhkmaDCB8pRRZeRdE= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1751459141; 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=tFSiC0+11dXo7FuOpfNgMNVi+oIVpV/+XgXfRFy8NQA=; b=ARkVm38oU6ylwxFRvGRBd6/AqI56C36DfBhliaaKmpdGZ5/sLk4rwxyf7WccQ5FdLnW0LFUMM6qXQFDpxeN6fw2dBDnJ5S8A597Vyh2nmeLb0KrF7zS7h3wpVhLFgKZxfCrj+qXql+5AM4SrGeLXCIbG+5pCYtj4u3m3PYbaXmE= 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 lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 175145914133987.07314135059323; Wed, 2 Jul 2025 05:25:41 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1uWwUO-00053y-5J; Wed, 02 Jul 2025 08:23:01 -0400 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 1uWwU9-0004yS-Ae for qemu-devel@nongnu.org; Wed, 02 Jul 2025 08:22:48 -0400 Received: from mail-oa1-x2f.google.com ([2001:4860:4864:20::2f]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1uWwTs-0007FY-8C for qemu-devel@nongnu.org; Wed, 02 Jul 2025 08:22:44 -0400 Received: by mail-oa1-x2f.google.com with SMTP id 586e51a60fabf-2e9071e3706so2767577fac.0 for ; Wed, 02 Jul 2025 05:22:27 -0700 (PDT) Received: from stoup.. ([187.210.107.185]) by smtp.gmail.com with ESMTPSA id 586e51a60fabf-2efd50b1bd3sm3785013fac.28.2025.07.02.05.22.25 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 02 Jul 2025 05:22:26 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1751458947; x=1752063747; 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=tFSiC0+11dXo7FuOpfNgMNVi+oIVpV/+XgXfRFy8NQA=; b=d93NKuarKN0RspXo1JmAiXszxTUGTMwrrnUVKbZhxRiCrOEpqSu8yIgOj2vGFrBuoP puur3uBnuj12+RtzQAHbNssRUsImzKxK3XH8T1HLOMsP9esyL8O+VmJIQOQdIE+efzY0 HjyWdUEqaImSuMnfuWEDG8hE99XUXbXpCFgwLbjt1/dlUQddlcZL9FMiMzJv8zLC1UWN z5xAz4+VTWs+bAXYgQ1XciXHIS1ujHfFcunxpv1JdriaRMcY84cOFa2Dzt0QEpSNwinK r5rToMhH10xQKMvT53nei8GjFEmjujh1o5Mex+53arK4yFyh+1w/+eskZ/3ojhh2f3+e KwRA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1751458947; x=1752063747; 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=tFSiC0+11dXo7FuOpfNgMNVi+oIVpV/+XgXfRFy8NQA=; b=Y3EHIbvP+TYzq5krFlYNKOtbdgguqVD38uaEtxI/lBzelNcG25sXmB3d52WIG8BzU/ DNmmbrkQAi5it2lTxBLrU8U9b6VqLN/KCDkNe7no58CA+fAjSz6/k+6FBBGorz5EyO51 vtDR9eLtJ8O1EnkpmeG35kECy7lLlfhLlRYGL0DL42pyJf3HGSOCkE/HCGCCovXXt39k BJsPzI0wGo+gXLFJdCcMhTk+ni0aahVCFIuA/TfF7En8ZLGlwkQokuOBsDsLgXZ8fyf9 CK1iE6kAAgmp6sTHQvqZo2VPvO1M+4UvkNVS9F5FaGkfw/7zlRD2o16rbkLwquFuDwQG HvqQ== X-Gm-Message-State: AOJu0Yxh9srBt5x/WNWQ1x1CZLNsL6TJvg8jhufPhKjG7rLgafq1ZNkL rPBFqyVc45T3A5S2C7G1OmiluW+ktEr4BOCsTkKSXqm2icgymwotUOYmzpDGJ4FRN0uShOfXE3B fAnOigXM= X-Gm-Gg: ASbGncs2yKjRtWK3F73UfGCZMwp6JPXC0BjBVOg0Gp0ezhNb5NJS6TVSjGC1UNhdWs8 jaQdFpetqNojaLsOuhIl0Bc5mQMT/vckGxLrnUgTdfkI9GlsG2gbQqPz4OeYc+/+AVV7IUeQXI2 2ntDHu1L/fNjyfGNQmiW/UdzDtZ5YvRq04J2oftv7qtCPcaoppz5Jzmm+Sq3jFVIRni7Zzw72jc oww/1oRi2loRDswdXqy+y6zB5T+I+ApM5SMO0/IzHAKbnYHpwE8m6fElyGoweqiXwVfzSAlBru0 isnFXnVXIkpsv+N0+Fk+814IvXFpvMjCmZngwvw7CtAKMaaFE7C+dTmmmX/xYcbBElylSA== X-Google-Smtp-Source: AGHT+IHiYD/TYpQst1Fmt/3QoBk7gxMei9f4xF3PJTg4TAHI9M62BFigj3mF4KsfoXZGdwkyex/jbQ== X-Received: by 2002:a05:6871:282:b0:2bc:7811:5bb8 with SMTP id 586e51a60fabf-2f5a8c8e55emr1903291fac.18.1751458946733; Wed, 02 Jul 2025 05:22:26 -0700 (PDT) From: Richard Henderson To: qemu-devel@nongnu.org Cc: qemu-arm@nongnu.org, peter.maydell@linaro.org, qemu-stable@nongnu.org Subject: [PATCH v3 09/10] target/arm: Fix bfdotadd_ebf vs nan selection Date: Wed, 2 Jul 2025 06:22:12 -0600 Message-ID: <20250702122213.758588-10-richard.henderson@linaro.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20250702122213.758588-1-richard.henderson@linaro.org> References: <20250702122213.758588-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=lists.gnu.org; Received-SPF: pass client-ip=2001:4860:4864:20::2f; envelope-from=richard.henderson@linaro.org; helo=mail-oa1-x2f.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: 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: 1751459143520116600 Content-Type: text/plain; charset="utf-8" Implement FPProcessNaNs4 within f16_dotadd, rather than simply letting NaNs propagate through the function. Cc: qemu-stable@nongnu.org Fixes: 0e1850182a1 ("target/arm: Implement FPCR.EBF=3D1 semantics for bfdot= add()") Signed-off-by: Richard Henderson --- target/arm/tcg/vec_helper.c | 75 ++++++++++++++++++++++++++----------- 1 file changed, 53 insertions(+), 22 deletions(-) diff --git a/target/arm/tcg/vec_helper.c b/target/arm/tcg/vec_helper.c index 986eaf8ffa..21c6175d2e 100644 --- a/target/arm/tcg/vec_helper.c +++ b/target/arm/tcg/vec_helper.c @@ -2989,31 +2989,62 @@ float32 bfdotadd(float32 sum, uint32_t e1, uint32_t= e2, float_status *fpst) float32 bfdotadd_ebf(float32 sum, uint32_t e1, uint32_t e2, float_status *fpst, float_status *fpst_odd) { - /* - * Compare f16_dotadd() in sme_helper.c, but here we have - * bfloat16 inputs. In particular that means that we do not - * want the FPCR.FZ16 flush semantics, so we use the normal - * float_status for the input handling here. - */ - float64 e1r =3D float32_to_float64(e1 << 16, fpst); - float64 e1c =3D float32_to_float64(e1 & 0xffff0000u, fpst); - float64 e2r =3D float32_to_float64(e2 << 16, fpst); - float64 e2c =3D float32_to_float64(e2 & 0xffff0000u, fpst); - float64 t64; + float32 s1r =3D e1 << 16; + float32 s1c =3D e1 & 0xffff0000u; + float32 s2r =3D e2 << 16; + float32 s2c =3D e2 & 0xffff0000u; float32 t32; =20 - /* - * The ARM pseudocode function FPDot performs both multiplies - * and the add with a single rounding operation. Emulate this - * by performing the first multiply in round-to-odd, then doing - * the second multiply as fused multiply-add, and rounding to - * float32 all in one step. - */ - t64 =3D float64_mul(e1r, e2r, fpst_odd); - t64 =3D float64r32_muladd(e1c, e2c, t64, 0, fpst); + /* C.f. FPProcessNaNs4 */ + if (float32_is_any_nan(s1r) || float32_is_any_nan(s1c) || + float32_is_any_nan(s2r) || float32_is_any_nan(s2c)) { + if (float32_is_signaling_nan(s2r, fpst)) { + t32 =3D s2r; + } else if (float32_is_signaling_nan(s2c, fpst)) { + t32 =3D s2c; + } else if (float32_is_signaling_nan(s2r, fpst)) { + t32 =3D s2r; + } else if (float32_is_signaling_nan(s2c, fpst)) { + t32 =3D s2c; + } else if (float32_is_any_nan(s2r)) { + t32 =3D s2r; + } else if (float32_is_any_nan(s2c)) { + t32 =3D s2c; + } else if (float32_is_any_nan(s2r)) { + t32 =3D s2r; + } else { + t32 =3D s2c; + } + /* + * FPConvertNaN(FPProcessNaN(t32)) will be done as part + * of the final addition below. + */ + } else { + /* + * Compare f16_dotadd() in sme_helper.c, but here we have + * bfloat16 inputs. In particular that means that we do not + * want the FPCR.FZ16 flush semantics, so we use the normal + * float_status for the input handling here. + */ + float64 e1r =3D float32_to_float64(s1r, fpst); + float64 e1c =3D float32_to_float64(s1c, fpst); + float64 e2r =3D float32_to_float64(s2r, fpst); + float64 e2c =3D float32_to_float64(s2c, fpst); + float64 t64; =20 - /* This conversion is exact, because we've already rounded. */ - t32 =3D float64_to_float32(t64, fpst); + /* + * The ARM pseudocode function FPDot performs both multiplies + * and the add with a single rounding operation. Emulate this + * by performing the first multiply in round-to-odd, then doing + * the second multiply as fused multiply-add, and rounding to + * float32 all in one step. + */ + t64 =3D float64_mul(e1r, e2r, fpst_odd); + t64 =3D float64r32_muladd(e1c, e2c, t64, 0, fpst); + + /* This conversion is exact, because we've already rounded. */ + t32 =3D float64_to_float32(t64, fpst); + } =20 /* The final accumulation step is not fused. */ return float32_add(sum, t32, fpst); --=20 2.43.0 From nobody Sat Nov 15 12:44:15 2025 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=1751459119; cv=none; d=zohomail.com; s=zohoarc; b=dCrG+kS2AAVqWrPYFfgKFMm1xzVXZtE9dokQsjT509CO4t1ose+YvFVKu8bcnv0YO9A8BKTivHps5P1rdU/Fw2d+R4lA3pb9Bq8Jz+OnDmZSWVni3uyfl0QrFBIlZuXRk8x6SKzQ9y7xq1C+m5sgfNkvsWOxdwZ/2UytCfdpRK4= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1751459119; 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=b1nwk8IyMWtkFl0V6iMZghwNPUspSshQHOECaZCfwyA=; b=Uzxd06l8+yw3w/8I+9zpXwh/oAs4dJlxPonLAwYSoLR77Hl/WSXOywr/uTaDVD3eH8/hbt97sMaNI9ruVTIrGQ7RKaOEayzCilvpcofQD9Z0JDO4rG78Za5aMwTbuXphLJEq5Th/J5wwVmnk/xPxLZek7DxozFnYZCeeNzag01M= 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 lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1751459119201925.2900705998708; Wed, 2 Jul 2025 05:25:19 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1uWwUN-00052s-88; Wed, 02 Jul 2025 08:22:59 -0400 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 1uWwUB-0004zP-3n for qemu-devel@nongnu.org; Wed, 02 Jul 2025 08:22:48 -0400 Received: from mail-oa1-x2a.google.com ([2001:4860:4864:20::2a]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1uWwTt-0007Fs-J6 for qemu-devel@nongnu.org; Wed, 02 Jul 2025 08:22:45 -0400 Received: by mail-oa1-x2a.google.com with SMTP id 586e51a60fabf-2ef8dfb3742so1090780fac.3 for ; Wed, 02 Jul 2025 05:22:29 -0700 (PDT) Received: from stoup.. ([187.210.107.185]) by smtp.gmail.com with ESMTPSA id 586e51a60fabf-2efd50b1bd3sm3785013fac.28.2025.07.02.05.22.27 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 02 Jul 2025 05:22:27 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1751458948; x=1752063748; 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=b1nwk8IyMWtkFl0V6iMZghwNPUspSshQHOECaZCfwyA=; b=wF8KOHabFEG9yww3ZFxr+gOZvlk7vmXq7YepvzL4b0H/ljc3dlz6Yt1wPskzDRGaTe O10uxpNjgnvOxUIdRmguKQhUYymMN27/ZG37Cj0jroCSJyCNhEJsNJoWkEtLxpQcS0oG zQJyp4e+jjnKuqOAr/YFe6llU1AC2DLHB6ro+YRq2y+o1aAIY1XWyomPrxOlztVpYgVl xxydlC1RPqYdLCL8XvolOWe+Lw11KVMf7NNR59lUZ8vMlTcCAsCPTtcnANL04vgYVrTL DrF7MpuOqTdvnD0QRgEss8YcBdFeonCfMSDm3dFbJB6oGpxoSOUf8faGMy72owOK675U QHWA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1751458948; x=1752063748; 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=b1nwk8IyMWtkFl0V6iMZghwNPUspSshQHOECaZCfwyA=; b=l8VPIR+fsgYed+pqKVDuFl/7yf4PTZ+ZZnMBKvmuNqiohlbkS02G7yAhPIVRXOiP33 q+zgMkFVmy+IDByPyRDjZhPNUIGj7QRWZCYjNeMv/vY4yy8m6PiM7E+aM+OO1e3BLHTP FaylEOLahIrRvVc+6WY9WwkiwSBCFmmhodC+MuGQOFi++I5ZQc/GlpwpP8NnmIE5ZlXr 3bsbAR5C5QUdTp0IwtNZn4bJPyo9W2H8s0FB4wWlTVQ9aS2q3uHCLXSp99eGLD5wGCic J92mJZWkbroZKsh7gPWFb1FDdemBcEJWfXS20uf3fOJxOsXo5dNT+ci9c0sKXQzRsTEU dXow== X-Gm-Message-State: AOJu0YwG9/0mZx9+4YAXBJg9WXghvnV8q+G/oVzDKpUu9+RjCv+2zkWK qAwdK7ufavQUCtIslBgZTyFkY7JAxyT1qWi0fYldTf5+lVtd+GUunB8wAb8sB69Pc16EQb+kv+Y S4wXfmDw= X-Gm-Gg: ASbGncvjNLpZOe5fqBVYB41muQMhtVFdJ4ohmg8ELjnVY2LW1iB4vyT9Rw0VJ9uRWHi 32pSSIJ6vDxonNgs21qBG98NwEQ+AnSkLiFe4wrxCNtkJTn8qbcI+aEFWAPeIVkJ8Et0gfm9PeJ dFiyuo4+FaSsq1hQs1rUXpbeHRVSh0D77Yp93KPjAgf5VGOZCSuMIj5zQsW/gxuucreDpSiI6jd sFUBrvbrMmI6cODjcro8Yiv37IuAp0GCwRsCbLt8BqWdYI9fa9x9861Y42Jl8e2PN/MM1JZCryj xTvKbKKmzStgyRnm3T6enxojR6e87EBm0HyZRhADsObOCs4FU1e2rl5+IJdWf2deU2P3vQ== X-Google-Smtp-Source: AGHT+IEA1waKIEabthcOKgcQNNIwN2JzYQ7aazMSupnAlWbdbPwGeQ4RN+1KTzYEGY0/9ixrp9U8Xg== X-Received: by 2002:a05:6870:41d1:b0:2c2:27c8:5865 with SMTP id 586e51a60fabf-2f5a8a420f8mr2143156fac.9.1751458947841; Wed, 02 Jul 2025 05:22:27 -0700 (PDT) From: Richard Henderson To: qemu-devel@nongnu.org Cc: qemu-arm@nongnu.org, peter.maydell@linaro.org Subject: [PATCH v3 10/10] target/arm: Remove CPUARMState.vfp.scratch Date: Wed, 2 Jul 2025 06:22:13 -0600 Message-ID: <20250702122213.758588-11-richard.henderson@linaro.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20250702122213.758588-1-richard.henderson@linaro.org> References: <20250702122213.758588-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=lists.gnu.org; Received-SPF: pass client-ip=2001:4860:4864:20::2a; envelope-from=richard.henderson@linaro.org; helo=mail-oa1-x2a.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: 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: 1751459121140116600 Content-Type: text/plain; charset="utf-8" The last use of this field was removed in b2fc7be972b9. Reviewed-by: Peter Maydell Signed-off-by: Richard Henderson Reviewed-by: Alex Benn=C3=A9e --- target/arm/cpu.h | 3 --- 1 file changed, 3 deletions(-) diff --git a/target/arm/cpu.h b/target/arm/cpu.h index 302c24e232..15b47a5bfc 100644 --- a/target/arm/cpu.h +++ b/target/arm/cpu.h @@ -668,9 +668,6 @@ typedef struct CPUArchState { =20 uint32_t xregs[16]; =20 - /* Scratch space for aa32 neon expansion. */ - uint32_t scratch[8]; - /* There are a number of distinct float control structures. */ float_status fp_status[FPST_COUNT]; =20 --=20 2.43.0