From nobody Sat Apr 11 18:38:38 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=1775851648; cv=none; d=zohomail.com; s=zohoarc; b=cKBgz/xfeCL/9IcPHlUNnVmizmz+DORP9FLlFqFthXJQLgdDeCN6xbHoNDwXXne1bxGba+57KCPJZUGa1u8Z+g/+RKwosCvUOuRSWJyVG3onlmjvS8CyBuspRTKD93buDknbBPCw5EtgHfkmFMSb2iCXC5lzOfvahAqXGqA2RPE= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1775851648; h=Content-Type: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=sFNUoiA4sxZwl6xj/mdiLyn6pnaVAmuY4imjREEEq4w=; b=EolkZR50gzW1wkHKWe3tDwyCjrGJoZPWVPAmjASWXnrc2MrST1VPy0Fq44Ov5gIJ8xKuzEWB7tzUX861IFrs9Xiqph8vZ6eOWZIffiWd6l/J+Dhd67hU3cJBaFnBcRqzeb316nqRoQGb1g4b4LgIh/PqywJTSsS/7AgK/rUK97o= 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 (lists1p.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1775851648263420.5294545452234; Fri, 10 Apr 2026 13:07:28 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1wBI8F-0002WL-Qa; Fri, 10 Apr 2026 16:07:14 -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 1wBI86-0002Rt-Pm for qemu-devel@nongnu.org; Fri, 10 Apr 2026 16:07:03 -0400 Received: from mail-wr1-x42f.google.com ([2a00:1450:4864:20::42f]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1wBI84-0008N4-0u for qemu-devel@nongnu.org; Fri, 10 Apr 2026 16:07:02 -0400 Received: by mail-wr1-x42f.google.com with SMTP id ffacd0b85a97d-43d43e09de5so1351597f8f.1 for ; Fri, 10 Apr 2026 13:06:59 -0700 (PDT) Received: from localhost.localdomain (88-187-86-199.subs.proxad.net. [88.187.86.199]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-43d63e46a90sm9221024f8f.19.2026.04.10.13.06.56 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Fri, 10 Apr 2026 13:06:57 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1775851618; x=1776456418; 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=sFNUoiA4sxZwl6xj/mdiLyn6pnaVAmuY4imjREEEq4w=; b=XhQffmLddO740ypkcvp9LJ57gTmolehmQaXaBBwAkaPjjKKv9A4PJjb+9JsrJGDhty bEmIScpCc+WerCq28GZtnNbglofT68XG367U/WjqGlx5oaosLS3pry1FdRaK2eFi62KF EXC516vorR0y8AEse+JhmxpFpd34AuGCSken2FOrbaUZjBBNl0sb3pGHY6Sz2tJOoOCM /ZjLs2luxm+HkQ/JYuitXx/o/P6Si2o+50GOGbdT0H3Pqr7OsB59UAyHCVrlrRleI11N dbhNthVx266GZ4gCXW9U71mbQG2cvF3auXU3OwfjBffdoeCPQxEOYDQxEq7dyNBRl+ag A2RA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1775851618; x=1776456418; 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=sFNUoiA4sxZwl6xj/mdiLyn6pnaVAmuY4imjREEEq4w=; b=qJr5u8KdEurhGxUVGLvRPXjWXHj1so7/lVjciaj6G6s9LMflxiXK/9ij1NZbFmoXKh sgrD5bSkN9vvKfj4+2bxxtC30qyKPL2QIVWw643L9nHQclZTSc7OVXLhIHQEOGomCQ85 dgCWVhVnQPXf71lfUZW4lkjWrQyr9MWvag6L577sYv9dSCyici8KcXausIV4fpBm2dXD ZVeiU1PiIXjMSlUzDipisfwPdH5ZAQ+/xU59wBqEy4KySiZbYj7phZV3O9R+QvuQIwH6 wR7xp5pQScCSqy8EcLhox27+gpniHQRFyt5pFSJUoUi08QFRWR46/+dbQ+w8jPRIUGgS fiAA== X-Gm-Message-State: AOJu0YxM5e5hJ4m1gLr3moS00JC+LtGvL6HjhhE/+zHFHm6G+j7ILTDS vhzNZA4HE0sUVn/5+hkX60+gDabotT3RKSx4YMTNg4aGAZOZvwDdP+xqAKuRYjcH4gxwkF5dQAj tt7WB9oo= X-Gm-Gg: AeBDietwfTr1kyeSMNgrO+u6WQAy3drBZP41Gz5r3mSZymTw7XcijCRywurzk6bLv7z RuC3jG42a5cAGXmAYRorRuQpREsjs8VjI5K72b0FwEmr9VF4YIYjwLB9OllOMiwb4TYHJ9gNkj7 Ga5ZwC3W3UqyTNuKSxOECR1pqV9OZzJbDG4i8JSlTkBZLVj4KqiZOLrqUBqnRCT8ClSp9BC+rNr UHS1iVVpfce+2Bx1VQC3nSRgK8Peufmie5RUJYgvtyzDnEhh7uIuJ5ew65IHiuoq8C7EyAlpsZz 0AFEQfBUa+KxjY0E5Jf9VyquOuw/jcAsefiiV96pE6146PDXwqGXXlGZZ3tH/Qec5ibSxmReL1l gMAVgdYp5m6G7zGU/bsRtfwdY2bUkXXFVWJRiBZi+fIdGyb3HHirhi4ZttuYU9S/4WGCYY652lG OKA2n/ozsct6yNXp+MnRF+OJjMASEBaGKhp9hbURFpYXLUtCDxAvPTsvjIzgeRh0wOoXB79agt X-Received: by 2002:a5d:5f86:0:b0:43b:445f:3177 with SMTP id ffacd0b85a97d-43d642ba100mr6855105f8f.31.1775851617631; Fri, 10 Apr 2026 13:06:57 -0700 (PDT) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Peter Maydell , qemu-arm@nongnu.org, Pierrick Bouvier , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= Subject: [PATCH 4/9] target/arm: Conceal MO_TE within MVE DO_VSTR() macro Date: Fri, 10 Apr 2026 22:06:23 +0200 Message-ID: <20260410200628.19378-5-philmd@linaro.org> X-Mailer: git-send-email 2.53.0 In-Reply-To: <20260410200628.19378-1-philmd@linaro.org> References: <20260410200628.19378-1-philmd@linaro.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" 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=2a00:1450:4864:20::42f; envelope-from=philmd@linaro.org; helo=mail-wr1-x42f.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: qemu development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @linaro.org) X-ZM-MESSAGEID: 1775851649003158500 Signed-off-by: Philippe Mathieu-Daud=C3=A9 --- target/arm/tcg/mve_helper.c | 43 +++++++++++++++++-------------------- 1 file changed, 20 insertions(+), 23 deletions(-) diff --git a/target/arm/tcg/mve_helper.c b/target/arm/tcg/mve_helper.c index fbb64889bf7..4bea0991de9 100644 --- a/target/arm/tcg/mve_helper.c +++ b/target/arm/tcg/mve_helper.c @@ -235,7 +235,8 @@ DO_VSTR(vstrh_w, MO_UW, 2, stw, 4, int32_t) unsigned e; \ uint32_t addr; \ int mmu_idx =3D arm_to_core_mmu_idx(arm_mmu_idx(env)); \ - MemOpIdx oi =3D make_memop_idx(MFLAG | MO_ALIGN, mmu_idx); \ + MemOpIdx oi =3D make_memop_idx(MO_TE | MFLAG | MO_ALIGN, \ + mmu_idx); \ for (e =3D 0; e < 16 / ESIZE; e++, mask >>=3D ESIZE, eci_mask >>= =3D ESIZE) { \ if (!(eci_mask & 1)) { \ continue; \ @@ -262,7 +263,8 @@ DO_VSTR(vstrh_w, MO_UW, 2, stw, 4, int32_t) unsigned e; \ uint32_t addr; \ int mmu_idx =3D arm_to_core_mmu_idx(arm_mmu_idx(env)); \ - MemOpIdx oi =3D make_memop_idx(MFLAG | MO_ALIGN, mmu_idx); \ + MemOpIdx oi =3D make_memop_idx(MO_TE | MFLAG | MO_ALIGN, \ + mmu_idx); \ for (e =3D 0; e < 16 / ESIZE; e++, mask >>=3D ESIZE, eci_mask >>= =3D ESIZE) { \ if (!(eci_mask & 1)) { \ continue; \ @@ -347,47 +349,42 @@ DO_VSTR(vstrh_w, MO_UW, 2, stw, 4, int32_t) =20 DO_VLDR_SG(vldrb_sg_sh, MO_SB, int8_t, ldb, 2, int16_t, uint16_t, ADDR_ADD= , false) DO_VLDR_SG(vldrb_sg_sw, MO_SB, int8_t, ldb, 4, int32_t, uint32_t, ADDR_ADD= , false) -DO_VLDR_SG(vldrh_sg_sw, MO_TE | MO_SW, int16_t, ldw, 4, - int32_t, uint32_t, ADDR_ADD, false) +DO_VLDR_SG(vldrh_sg_sw, MO_SW, int16_t, ldw, 4, int32_t, uint32_t, ADDR_AD= D, false) =20 DO_VLDR_SG(vldrb_sg_ub, MO_UB, uint8_t, ldb, 1, uint8_t, uint8_t, ADDR_ADD= , false) DO_VLDR_SG(vldrb_sg_uh, MO_UB, uint8_t, ldb, 2, uint16_t, uint16_t, ADDR_A= DD, false) DO_VLDR_SG(vldrb_sg_uw, MO_UB, uint8_t, ldb, 4, uint32_t, uint32_t, ADDR_A= DD, false) -DO_VLDR_SG(vldrh_sg_uh, MO_TE | MO_UW, uint16_t, ldw, 2, - uint16_t, uint16_t, ADDR_ADD, false) -DO_VLDR_SG(vldrh_sg_uw, MO_TE | MO_UW, uint16_t, ldw, 4, - uint32_t, uint32_t, ADDR_ADD, false) -DO_VLDR_SG(vldrw_sg_uw, MO_TE | MO_UL, uint32_t, ldl, 4, - uint32_t, uint32_t, ADDR_ADD, false) +DO_VLDR_SG(vldrh_sg_uh, MO_UW, uint16_t, ldw, 2, uint16_t, uint16_t, ADDR_= ADD, false) +DO_VLDR_SG(vldrh_sg_uw, MO_UW, uint16_t, ldw, 4, uint32_t, uint32_t, ADDR_= ADD, false) +DO_VLDR_SG(vldrw_sg_uw, MO_UL, uint32_t, ldl, 4, uint32_t, uint32_t, ADDR_= ADD, false) DO_VLDR64_SG(vldrd_sg_ud, ADDR_ADD, false) =20 -DO_VLDR_SG(vldrh_sg_os_sw, MO_TE | MO_SW, int16_t, ldw, 4, +DO_VLDR_SG(vldrh_sg_os_sw, MO_SW, int16_t, ldw, 4, int32_t, uint32_t, ADDR_ADD_OSH, false) -DO_VLDR_SG(vldrh_sg_os_uh, MO_TE | MO_UW, uint16_t, ldw, 2, +DO_VLDR_SG(vldrh_sg_os_uh, MO_UW, uint16_t, ldw, 2, uint16_t, uint16_t, ADDR_ADD_OSH, false) -DO_VLDR_SG(vldrh_sg_os_uw, MO_TE | MO_UW, uint16_t, ldw, 4, +DO_VLDR_SG(vldrh_sg_os_uw, MO_UW, uint16_t, ldw, 4, uint32_t, uint32_t, ADDR_ADD_OSH, false) -DO_VLDR_SG(vldrw_sg_os_uw, MO_TE | MO_UL, uint32_t, ldl, 4, +DO_VLDR_SG(vldrw_sg_os_uw, MO_UL, uint32_t, ldl, 4, uint32_t, uint32_t, ADDR_ADD_OSW, false) DO_VLDR64_SG(vldrd_sg_os_ud, ADDR_ADD_OSD, false) =20 DO_VSTR_SG(vstrb_sg_ub, MO_UB, stb, 1, uint8_t, ADDR_ADD, false) DO_VSTR_SG(vstrb_sg_uh, MO_UB, stb, 2, uint16_t, ADDR_ADD, false) DO_VSTR_SG(vstrb_sg_uw, MO_UB, stb, 4, uint32_t, ADDR_ADD, false) -DO_VSTR_SG(vstrh_sg_uh, MO_TE | MO_UW, stw, 2, uint16_t, ADDR_ADD, false) -DO_VSTR_SG(vstrh_sg_uw, MO_TE | MO_UW, stw, 4, uint32_t, ADDR_ADD, false) -DO_VSTR_SG(vstrw_sg_uw, MO_TE | MO_UL, stl, 4, uint32_t, ADDR_ADD, false) +DO_VSTR_SG(vstrh_sg_uh, MO_UW, stw, 2, uint16_t, ADDR_ADD, false) +DO_VSTR_SG(vstrh_sg_uw, MO_UW, stw, 4, uint32_t, ADDR_ADD, false) +DO_VSTR_SG(vstrw_sg_uw, MO_UL, stl, 4, uint32_t, ADDR_ADD, false) DO_VSTR64_SG(vstrd_sg_ud, ADDR_ADD, false) =20 -DO_VSTR_SG(vstrh_sg_os_uh, MO_TE | MO_UW, stw, 2, uint16_t, ADDR_ADD_OSH, = false) -DO_VSTR_SG(vstrh_sg_os_uw, MO_TE | MO_UW, stw, 4, uint32_t, ADDR_ADD_OSH, = false) -DO_VSTR_SG(vstrw_sg_os_uw, MO_TE | MO_UL, stl, 4, uint32_t, ADDR_ADD_OSW, = false) +DO_VSTR_SG(vstrh_sg_os_uh, MO_UW, stw, 2, uint16_t, ADDR_ADD_OSH, false) +DO_VSTR_SG(vstrh_sg_os_uw, MO_UW, stw, 4, uint32_t, ADDR_ADD_OSH, false) +DO_VSTR_SG(vstrw_sg_os_uw, MO_UL, stl, 4, uint32_t, ADDR_ADD_OSW, false) DO_VSTR64_SG(vstrd_sg_os_ud, ADDR_ADD_OSD, false) =20 -DO_VLDR_SG(vldrw_sg_wb_uw, MO_TE | MO_UL, uint32_t, ldl, 4, - uint32_t, uint32_t, ADDR_ADD, true) +DO_VLDR_SG(vldrw_sg_wb_uw, MO_UL, uint32_t, ldl, 4, uint32_t, uint32_t, AD= DR_ADD, true) DO_VLDR64_SG(vldrd_sg_wb_ud, ADDR_ADD, true) -DO_VSTR_SG(vstrw_sg_wb_uw, MO_TE | MO_UL, stl, 4, uint32_t, ADDR_ADD, true) +DO_VSTR_SG(vstrw_sg_wb_uw, MO_UL, stl, 4, uint32_t, ADDR_ADD, true) DO_VSTR64_SG(vstrd_sg_wb_ud, ADDR_ADD, true) =20 /* --=20 2.53.0