From nobody Mon Feb 9 03:31:53 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=1770066290; cv=none; d=zohomail.com; s=zohoarc; b=VDvGzsmtNXsZf0EhtIhstYB5wu4fyyH4Khf/GHPeeEx2QKtkwLYbFW8l690HCiJcga7C2cVDnPdvHGTljVyXF/XR8iQm1GZX06yp1jwAYhKoqVp46YuAMrCokC02h11CJu6kTZTrp4u6mrxFp3VrpP5Fk//VJXsIPfNpnPOaG6Q= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1770066290; 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=ezUyjTdJ4WpRBMli8LXI8bKZQUV8vKPEmVQPuIYa6Dc=; b=m7G+56F9qqrtJUa4KnPYFS8i/M3fE2r5pDVlgM5w+OnJCLSkNn5qnqjPNY5aVN6mij92zogxkLH6OhZee2ef5ideoFTQtEjCpJYAxxuG/KUNXQiC/yTpjOgJ1gcR9N5YV2AK4IGumtaa5C+AmOIOcNYIUQaFYtQlAUT5lJr5T/Q= 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 1770066290500594.023922786358; Mon, 2 Feb 2026 13:04:50 -0800 (PST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1vn13c-0002mx-Al; Mon, 02 Feb 2026 16:02:06 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1vn12v-0000uj-Oh for qemu-devel@nongnu.org; Mon, 02 Feb 2026 16:01:21 -0500 Received: from mail-wr1-x42c.google.com ([2a00:1450:4864:20::42c]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1vn12r-0004PT-L6 for qemu-devel@nongnu.org; Mon, 02 Feb 2026 16:01:20 -0500 Received: by mail-wr1-x42c.google.com with SMTP id ffacd0b85a97d-43601e96f72so1244259f8f.2 for ; Mon, 02 Feb 2026 13:01:17 -0800 (PST) Received: from localhost.localdomain (88-187-86-199.subs.proxad.net. [88.187.86.199]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-435e10e4757sm48274822f8f.5.2026.02.02.13.01.14 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Mon, 02 Feb 2026 13:01:15 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1770066076; x=1770670876; 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=ezUyjTdJ4WpRBMli8LXI8bKZQUV8vKPEmVQPuIYa6Dc=; b=FqG6fVEIawE+vDsvU4UsNpSBi+Yvcd8Wr/6PdcfdBtH5t/jOAquVYnxiReAiFXZuo0 1MwQmoWjUXimxhqEGRMCX6EF6pgn8yX0cwmS3wG0XnmgPXVI+BelYEHjxNusYwqH1ofe O2HwJ3VIF8Sb5OTMJ6Iaakn1WRng/xTo/B96WZQnPd2dykZ7IrQDHOV7CHVd7rPcY6nt TnnUv5LyUiMXa0VU49qwjZ/DGmekbXjU2REdsGXx9rKoU71op2p4B632WXNlRREnsjNJ PrnTkG0p/YdeMO1ZFgMOQUuWoPYvHCCqajXFJt8Y7Muzv70qV1DxVxNzXiWI9aGCb7XV FkAg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1770066076; x=1770670876; 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=ezUyjTdJ4WpRBMli8LXI8bKZQUV8vKPEmVQPuIYa6Dc=; b=bHpfz5xzF0EOosTFPh6nyhKHUj0oxruKCfyzUvzXoZ2FxYjs4KEEqZ/7ayEF1vC+bI 54C9kQe3GtQEkz2S/u0GeaGYmze7aCiupSbec0YNf5xc5jo7zaPUsuBXxAV1bKKgd2Kr 60wq5XMvZRQ8jUsb4TGQDy1X3qWqs29sl7CY00Nkt3tZEmSrYQAsEk9en12P2MNchVrz AOFjRrY82Ew3vLy5UdtU8RA9THEOrY9Ca1pwbJLPSZaFeIYjzexHaRrf0PbH7wxNZ/AK rIBYjFRlUFv1kDlyO0nYYZkMQP0c5E5f2EOhwLe8pkWROnl+NPvxoi8+Y077ChwG6D6m tyhQ== X-Gm-Message-State: AOJu0YzsxPElh4U3CmPMWo7iWLacqYXTo7s+qVxj/KrjKs7DddUyf5AZ lvM0ZdGhYc79Y8ko0b978hFMfrn6+UTWPi2GhVZyKTPxXD+R9X15mofuN/ARDnwjuatjq2g+q80 /qmPElVw= X-Gm-Gg: AZuq6aKQkWJKSlCxZXJilhDYhhSXx2/rihC+1BiSQUvyNmdtskHyofgpc6iKEuSEULs dlnRyWUFhIz8ZjngiYS0R6tG0BJkgBeKzU0UI8mtu6/XynjmELq74+lAVW9204yZ4DGrEXwE5p7 oNcBYwoQpC9zXFDGykWbpEVPbI7ilJCmRb3+FB90vbzMfz5ArWd3fRR5s945yYZ5VjVrwM2w9Ku qkpOuzCa1p6HM16d8qoccrNoe6lMEvdBSJfVDtgQPqyxs56foyQfqy5jZEhKk/U17AWd/AV3YfI 1C4GT+qh7XM8kP+2P5x6DrGw1yujbbo4PP/fwK2JoBu9uCn+VdRiGAbaLAgNOLtuK2FfPazMaPt SlqC9JvvQ+n8hIBnZ9CQTVvbtJ3+8M1mUGO7KUVIlEzCGTnZZEbNbQ7Gt6k6YMw5ruz081PhacW bovk7KFcS9NPF826+VM1wera3JXkhYpjipwk4BztyhBqlPrtSlafhAdrFGZtyx X-Received: by 2002:a05:6000:1786:b0:430:fd84:317a with SMTP id ffacd0b85a97d-435f3aa90acmr20512163f8f.38.1770066075642; Mon, 02 Feb 2026 13:01:15 -0800 (PST) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Anton Johansson , Nicholas Piggin , Richard Henderson , Pierrick Bouvier , Chinmay Rath , qemu-ppc@nongnu.org, =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= Subject: [PATCH v6 01/11] target/ppc: Inline cpu_ldl_data_ra() calls in ICBI helpers Date: Mon, 2 Feb 2026 22:00:55 +0100 Message-ID: <20260202210106.93257-2-philmd@linaro.org> X-Mailer: git-send-email 2.52.0 In-Reply-To: <20260202210106.93257-1-philmd@linaro.org> References: <20260202210106.93257-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::42c; envelope-from=philmd@linaro.org; helo=mail-wr1-x42c.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=unavailable autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: qemu development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @linaro.org) X-ZM-MESSAGEID: 1770066292243158500 Inline the cpu_ldl_data_ra() call in preparation of removing it. Since the returned value is discarded, don't bother to set the access endianness. Signed-off-by: Philippe Mathieu-Daud=C3=A9 Reviewed-by: Anton Johansson --- target/ppc/mem_helper.c | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/target/ppc/mem_helper.c b/target/ppc/mem_helper.c index 7318b02c46a..636ad769a93 100644 --- a/target/ppc/mem_helper.c +++ b/target/ppc/mem_helper.c @@ -320,22 +320,27 @@ void helper_dcbzl(CPUPPCState *env, target_ulong addr) =20 void helper_icbi(CPUPPCState *env, target_ulong addr) { + unsigned mmu_idx =3D cpu_mmu_index(env_cpu(env), false); + MemOpIdx oi =3D make_memop_idx(MO_UL | MO_UNALN, mmu_idx); + addr &=3D ~(env->dcache_line_size - 1); /* * Invalidate one cache line : * PowerPC specification says this is to be treated like a load * (not a fetch) by the MMU. To be sure it will be so, - * do the load "by hand". + * do the load "by hand". As the returned data is not consumed, + * endianness is irrelevant. */ - cpu_ldl_data_ra(env, addr, GETPC()); + cpu_ldl_mmu(env, addr, oi, GETPC()); } =20 void helper_icbiep(CPUPPCState *env, target_ulong addr) { #if !defined(CONFIG_USER_ONLY) + MemOpIdx oi =3D make_memop_idx(MO_UL | MO_UNALN, PPC_TLB_EPID_LOAD); /* See comments above */ addr &=3D ~(env->dcache_line_size - 1); - cpu_ldl_mmuidx_ra(env, addr, PPC_TLB_EPID_LOAD, GETPC()); + cpu_ldl_mmu(env, addr, oi, GETPC()); #endif } =20 --=20 2.52.0 From nobody Mon Feb 9 03:31:53 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=1770066607; cv=none; d=zohomail.com; s=zohoarc; b=JNnRSgM7hUV6aQatR4Fo9CL+vCapK5pr1SxhnZ1zjd04HxjB4V8muD4fyGSw+xZa9whMCZTCJHi2zFp5bW5SJ+VyEQNkHJ1KTawtkZ143f5HYxcotONZHycWK0GktcUnc0YpiZVH7oI6PYhcmtojZWJOTLAXrle2jKjGVY7QeLI= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1770066607; 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=IRxgArMdqLQj6qKcyVCQNmjANm/oClOwBNcjeuzxsd8=; b=J2yv9UkKIY9CKt0Ok5hz+SaIo0+BiJBypuQB728VJnQ5w09+2IWgK8dOR+GgvZjnEEjB+NHdXCcCgd0E9tAKoQdotwmseV/Ma4gqbm/TdpqziwlMGVIq19oDtSWDnyZOyIGdkmmWwvzNTieV5vqeejnpisTZCgfL+F+pRJC/AK8= 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 1770066607494614.1071062410223; Mon, 2 Feb 2026 13:10:07 -0800 (PST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1vn142-0003j9-5x; Mon, 02 Feb 2026 16:02:30 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1vn130-0001Hx-9b for qemu-devel@nongnu.org; Mon, 02 Feb 2026 16:01:26 -0500 Received: from mail-wm1-x32f.google.com ([2a00:1450:4864:20::32f]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1vn12y-0004R2-Gz for qemu-devel@nongnu.org; Mon, 02 Feb 2026 16:01:26 -0500 Received: by mail-wm1-x32f.google.com with SMTP id 5b1f17b1804b1-4801ea9bafdso21117975e9.3 for ; Mon, 02 Feb 2026 13:01:24 -0800 (PST) Received: from localhost.localdomain (88-187-86-199.subs.proxad.net. [88.187.86.199]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-482e2973d57sm98386985e9.18.2026.02.02.13.01.21 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Mon, 02 Feb 2026 13:01:22 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1770066083; x=1770670883; 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=IRxgArMdqLQj6qKcyVCQNmjANm/oClOwBNcjeuzxsd8=; b=GrG9ghA5XzTTo8mM2jgCiaZrDZ71wEtLFeJYpUEDigySO5T+3SwZFzYOrj9xoLslWR ZW/rwUQBLEdAqazZk6j8osAfro03rt64k6XKAP06U6RE1a/A9i653VCkgPi4fNAi6flm ifrZUbIalkX79nKPSGeFK6dUDOagLyTvygykCguOYNbExc3Yl4y/hsbXruwT10B7t/OV k5G/YrHAWlCAdmG4xETPwd46izmbt4H6OmyiFZIKB3aZG4owwPLSHpM6+3tX6/9vOvJe aylQAu5RHawfZ7UigKbBcPfSyF+xP8jT7E+s+z1APRicarra899dszNH6YM94kPYrP5m jUBQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1770066083; x=1770670883; 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=IRxgArMdqLQj6qKcyVCQNmjANm/oClOwBNcjeuzxsd8=; b=E8jSlUl1+/ZvJ7xfmdxMq9/CjL2v1svfUc+/BaYSgBXHwRNZL8RO+Ov4f5s2XEsyKn 5bNIukU8FjKVAXeyigYyTgZ5QvwS6R+dYZu+XBmWSN8JEfro0NhVTL5pogffI0uABFPa YyguK95hhroHo5c60GkIlwff8YpIbi3U7PT420oE7IHlOUlQ48KDBgh53R827POnYR+j jURzqzmeG+PihWMVQv/PYHOpLP1F9/UZLS/WiTPuN6mpg+xW6k2LdaVy3E0pcQorQa/k meK5g1Pd+GWaefBmWiQhbWrpVwORrIAIoiNRw8n+HZr5c6hwMIlw9rU8Nv6QFGvpATwd yKlA== X-Gm-Message-State: AOJu0YzKwXb9Qbreb4tFrlwht2d2G+3SVYntyKTGp9Bs+aDhx3oGeqbR 2u9SC70voKDbCC06Xz0sIAWUbUEeD9BSd4zlKJ+SVT+amM0kWO9OEhLsX6P8twQLO3jdcGlY6nR 6JvBFubU= X-Gm-Gg: AZuq6aKxpGiTI7UWQHl8jsLJ/3XtQGFb5DQoznWZXsDgz+Il+sanF8I6PkCdPjaw5nL b2uQ4o0xr4Em4eoF8LpRpUuTsOK1iW3c9UZulJgHeUkqzd2kw/ouwbSARAx13IuExKAmkQ4MFGU g7DqxnMY+ySkbD0gaJzwbXlWgY5N/Q2d7tUQ3r4PpLS5PCvedzjRJvDb5NVqmdPIDoGjZKFXIa6 H45RUHXkmQXczO5yQqwMKYMnP/+IlA4s3wDKZIG/uyJ+CHpf0sBXVQ2R0XVWr5iv/pFmglidENN Ocf19tJ94N9gFJlFv0AXLhmJqhvjoeRdR6DeGhbBoi93YZnyZDWD+QNRqT5gapdqAmaygpwzCp9 HY9iO3jPo1Z+EtU0BZrz6SZTwCD2Uq3Ji5IZDt7+xFTLjvM1L7QPBGJlYhQHJxpa5GyVdt4alaf mm8tC8iNw/dcQ7HZ9UBxE8pfJ0QB5RlpkXJBaDYDUnccX3wWNBN1Ez3OBDoJPj X-Received: by 2002:a05:600c:8716:b0:480:4c20:6a06 with SMTP id 5b1f17b1804b1-482db48c61emr176406785e9.17.1770066082512; Mon, 02 Feb 2026 13:01:22 -0800 (PST) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Anton Johansson , Nicholas Piggin , Richard Henderson , Pierrick Bouvier , Chinmay Rath , qemu-ppc@nongnu.org, =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= Subject: [PATCH v6 02/11] target/ppc: Inline cpu_ld/st_mmuidx_ra() calls in memory helpers Date: Mon, 2 Feb 2026 22:00:56 +0100 Message-ID: <20260202210106.93257-3-philmd@linaro.org> X-Mailer: git-send-email 2.52.0 In-Reply-To: <20260202210106.93257-1-philmd@linaro.org> References: <20260202210106.93257-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::32f; envelope-from=philmd@linaro.org; helo=mail-wm1-x32f.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=unavailable autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: qemu development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @linaro.org) X-ZM-MESSAGEID: 1770066607887158500 In preparation of removing the cpu_ld*_mmuidx_ra() and cpu_st*_mmuidx_ra() calls, inline them. Signed-off-by: Philippe Mathieu-Daud=C3=A9 Reviewed-by: Anton Johansson --- target/ppc/mem_helper.c | 41 ++++++++++++++++++++++++++++++++--------- 1 file changed, 32 insertions(+), 9 deletions(-) diff --git a/target/ppc/mem_helper.c b/target/ppc/mem_helper.c index 636ad769a93..90546967593 100644 --- a/target/ppc/mem_helper.c +++ b/target/ppc/mem_helper.c @@ -88,8 +88,11 @@ void helper_lmw(CPUPPCState *env, target_ulong addr, uin= t32_t reg) } } else { /* Slow path -- at least some of the operation requires i/o. */ + MemOp op =3D MO_TE | MO_UL | MO_UNALN; + MemOpIdx oi =3D make_memop_idx(op, mmu_idx); + for (; reg < 32; reg++) { - env->gpr[reg] =3D cpu_ldl_mmuidx_ra(env, addr, mmu_idx, raddr); + env->gpr[reg] =3D cpu_ldl_mmu(env, addr, oi, raddr); addr =3D addr_add(env, addr, 4); } } @@ -111,7 +114,10 @@ void helper_stmw(CPUPPCState *env, target_ulong addr, = uint32_t reg) } else { /* Slow path -- at least some of the operation requires i/o. */ for (; reg < 32; reg++) { - cpu_stl_mmuidx_ra(env, addr, env->gpr[reg], mmu_idx, raddr); + MemOp op =3D MO_TE | MO_UL | MO_UNALN; + MemOpIdx oi =3D make_memop_idx(op, mmu_idx); + + cpu_stl_mmu(env, addr, env->gpr[reg], oi, raddr); addr =3D addr_add(env, addr, 4); } } @@ -152,9 +158,12 @@ static void do_lsw(CPUPPCState *env, target_ulong addr= , uint32_t nb, break; } } else { + MemOp op =3D MO_TE | MO_UL | MO_UNALN; + MemOpIdx oi =3D make_memop_idx(op, mmu_idx); + /* Slow path -- at least some of the operation requires i/o. */ for (; nb > 3; nb -=3D 4) { - env->gpr[reg] =3D cpu_ldl_mmuidx_ra(env, addr, mmu_idx, raddr); + env->gpr[reg] =3D cpu_ldl_mmu(env, addr, oi, raddr); reg =3D (reg + 1) % 32; addr =3D addr_add(env, addr, 4); } @@ -165,10 +174,14 @@ static void do_lsw(CPUPPCState *env, target_ulong add= r, uint32_t nb, val =3D cpu_ldub_mmuidx_ra(env, addr, mmu_idx, raddr) << 24; break; case 2: - val =3D cpu_lduw_mmuidx_ra(env, addr, mmu_idx, raddr) << 16; + op =3D MO_TE | MO_UW | MO_UNALN; + oi =3D make_memop_idx(op, mmu_idx); + val =3D cpu_ldw_mmu(env, addr, oi, raddr) << 16; break; case 3: - val =3D cpu_lduw_mmuidx_ra(env, addr, mmu_idx, raddr) << 16; + op =3D MO_TE | MO_UW | MO_UNALN; + oi =3D make_memop_idx(op, mmu_idx); + val =3D cpu_ldw_mmu(env, addr, oi, raddr) << 16; addr =3D addr_add(env, addr, 2); val |=3D cpu_ldub_mmuidx_ra(env, addr, mmu_idx, raddr) << 8; break; @@ -241,8 +254,11 @@ void helper_stsw(CPUPPCState *env, target_ulong addr, = uint32_t nb, break; } } else { + MemOp op =3D MO_TE | MO_UL | MO_UNALN; + MemOpIdx oi =3D make_memop_idx(op, mmu_idx); + for (; nb > 3; nb -=3D 4) { - cpu_stl_mmuidx_ra(env, addr, env->gpr[reg], mmu_idx, raddr); + cpu_stl_mmu(env, addr, env->gpr[reg], oi, raddr); reg =3D (reg + 1) % 32; addr =3D addr_add(env, addr, 4); } @@ -252,10 +268,14 @@ void helper_stsw(CPUPPCState *env, target_ulong addr,= uint32_t nb, cpu_stb_mmuidx_ra(env, addr, val >> 24, mmu_idx, raddr); break; case 2: - cpu_stw_mmuidx_ra(env, addr, val >> 16, mmu_idx, raddr); + op =3D MO_TE | MO_UW | MO_UNALN; + oi =3D make_memop_idx(op, mmu_idx); + cpu_stw_mmu(env, addr, val >> 16, oi, raddr); break; case 3: - cpu_stw_mmuidx_ra(env, addr, val >> 16, mmu_idx, raddr); + op =3D MO_TE | MO_UW | MO_UNALN; + oi =3D make_memop_idx(op, mmu_idx); + cpu_stw_mmu(env, addr, val >> 16, oi, raddr); addr =3D addr_add(env, addr, 2); cpu_stb_mmuidx_ra(env, addr, val >> 8, mmu_idx, raddr); break; @@ -284,8 +304,11 @@ static void dcbz_common(CPUPPCState *env, target_ulong= addr, haddr =3D probe_write(env, addr, dcbz_size, mmu_idx, retaddr); if (unlikely(!haddr)) { /* Slow path */ + MemOp op =3D MO_TE | MO_UQ | MO_UNALN; + MemOpIdx oi =3D make_memop_idx(op, mmu_idx); + for (int i =3D 0; i < dcbz_size; i +=3D 8) { - cpu_stq_mmuidx_ra(env, addr + i, 0, mmu_idx, retaddr); + cpu_stq_mmu(env, addr + i, 0, oi, retaddr); } return; } --=20 2.52.0 From nobody Mon Feb 9 03:31:53 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=1770066192; cv=none; d=zohomail.com; s=zohoarc; b=Zdzvs+E0xCitzmB+DHNQU6fNiceFqKSOn6e/MZTToiYr2wR/vPpIm5zjkCf8tnJdb+BYn0choB5wOPe4X7hYekmoxv7YbZd0QzIJ1J75zCD9BVfgxjBbc3Wab4IlLPY1UI7bif1p0SGElbSyX3VEiHXVlLG7KjHvdowlUdsZ3A0= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1770066192; 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=QjJS4F+ZR9UGuvJkYdHrYT9RQW3X7FVg+IiasIqKI/c=; b=St2cfekNSdmkcgNIhTGfP+2f7/w6mXZ7K+YhdW0IBEdmYWVifDbNt9VrFELA1+iHNxLSTdCg8c7qDrNCxFrYSl4ycY+4W8apACaShUEfpwKkTVyHdIXja2ijSa7u/esT5/dzwlfSdHmIu3Lf/CK4kiDz4onYoCI7kzTrRjcBFy8= 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 1770066192834924.7659240629522; Mon, 2 Feb 2026 13:03:12 -0800 (PST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1vn144-00045F-Jk; Mon, 02 Feb 2026 16:02:32 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1vn138-0001cy-0y for qemu-devel@nongnu.org; Mon, 02 Feb 2026 16:01:36 -0500 Received: from mail-wm1-x333.google.com ([2a00:1450:4864:20::333]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1vn136-0004S7-F5 for qemu-devel@nongnu.org; Mon, 02 Feb 2026 16:01:33 -0500 Received: by mail-wm1-x333.google.com with SMTP id 5b1f17b1804b1-48068ed1eccso45129205e9.2 for ; Mon, 02 Feb 2026 13:01:30 -0800 (PST) Received: from localhost.localdomain (88-187-86-199.subs.proxad.net. [88.187.86.199]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-482e047d863sm107044645e9.1.2026.02.02.13.01.28 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Mon, 02 Feb 2026 13:01:28 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1770066089; x=1770670889; 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=QjJS4F+ZR9UGuvJkYdHrYT9RQW3X7FVg+IiasIqKI/c=; b=sZZ8IOwYVIYGl0sHb6hh2nJYx3Y1nJ8p1BqdvSLIpiWd3VqxFqMIdXhAEQEDQ3FLva MrwzVmveKlKI6o6719NmnbFmf//+Y7KRNNZkMRExkMTyX4qIpaWeBzGNgjeCCwMMD9ta HTILkPnsCBVLSNWByMSt8KVCTLnPGQd3j4tEPwFuWLIAPwFPx5mbv52bSR8S27PMdkBT c8Er010vIjKSV+zr9/7cLaz5wc9/Bne/79RSGFzzSp46XBf9f112+LlcP1yo90IqHSIX 4hAuHrjv3C1BIwylXePIEqFrZmelf81hnDmSP7lbxlghKQIRA8lq5Wr9JWJjklwMEPmG MVHQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1770066089; x=1770670889; 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=QjJS4F+ZR9UGuvJkYdHrYT9RQW3X7FVg+IiasIqKI/c=; b=JLNYzbLirjg12lj0q2KqLrEzS9gWwH3s1ny0xxh/VRiR5k6oNI/xfXBd7HGFeX3PpJ sl50misDV5FDRt5i+SKv3x3+ZIjS0WajntgPNq6QxxE+OUD7dprhvRLZLY8+k5WeiegX oJfg/uYy/oIHRw+l/Ze9hmW22kthSje32+gK0kaaP1T4b28+EbtUO+GpcfKeZR8dlnPU rhcrAvW4MnMXJ88QaixsV695yF+PQnRdRSQ/NsLQChEyKL+R8nJwTUU5tUFjdrFlpF+z 3iMhmq0FZPiXJxZyi1QmgPlbSFAF/MDpD2fH7y6TxPSuuT54Bjuy6KIOlWRW40NPzgCp stzQ== X-Gm-Message-State: AOJu0Yz3fp+E7ftEij2xf4UH3bhXm94e5BFLSu2MX8BuaFldPqfnM4aT XyiNTQdJLEsgteOeVva6LF4I4FoHBXwBKLPiCMDLPgNUwZlushs65M89mZb7BdHTmcykWWBiavJ slVbA1IQ= X-Gm-Gg: AZuq6aJun3UXUR7XJE1m1pR541bmF51BOpJTJ3uus2NaaFMRaqhX/y2FYkg7cBid6+w wH5NvzsGKIpNtbrpN5yWRSvfjSMVrkg2Bi5XVSot5EqMib8+TKXLziIWWu10FD5GJAIbVvZU+JG HnBp2m5f4bYhbQo5YXujXw7NRoPmJxcAcCTJthBQXngIc0G/ne4U+oJPDEa9dIFcJfcfkk78Ths QA99TKkNyTPph+UuhMz/k65oIvzWAHZ2l/EZBpujUMhTjrsjGTXuhkZ6IgQJglPQNR4B5L5KUCF zAcCQc27Eif4YnUt/BKS5qelbnwJAAD3TRXLWmk8wCdnlrvkBxCDASZTpingKN6Dvi6aJepiriT wocvlenlCCNZpaQT62OTtbxJIPFXV0N9Le0nvxmzfV+EW/GPyMrxx5zPLWzN0F2v1nCZym2oQyL zLpsP3TJPsUsSe0QoSA8P0Rqz0ZFnwpRLxqmvbxAVAGzAJfO5ZZRVZI5ij+zODpqR5ipvpYlA= X-Received: by 2002:a05:600c:1c26:b0:47e:c562:a41f with SMTP id 5b1f17b1804b1-482db481c92mr175084185e9.18.1770066089552; Mon, 02 Feb 2026 13:01:29 -0800 (PST) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Anton Johansson , Nicholas Piggin , Richard Henderson , Pierrick Bouvier , Chinmay Rath , qemu-ppc@nongnu.org, =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= Subject: [PATCH v6 03/11] target/ppc: Inline cpu_ld/st_data_ra() calls in do_hash() Date: Mon, 2 Feb 2026 22:00:57 +0100 Message-ID: <20260202210106.93257-4-philmd@linaro.org> X-Mailer: git-send-email 2.52.0 In-Reply-To: <20260202210106.93257-1-philmd@linaro.org> References: <20260202210106.93257-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::333; envelope-from=philmd@linaro.org; helo=mail-wm1-x333.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=unavailable autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: qemu development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @linaro.org) X-ZM-MESSAGEID: 1770066193896158500 In preparation of removing the cpu_ld*_data_ra() and cpu_st*_data_ra() calls, inline them. No logical change intended. We note the page translation hash address is expected to be aligned, so the MO_UNALN flag is misleading. Next commit will remove it. Signed-off-by: Philippe Mathieu-Daud=C3=A9 Reviewed-by: Anton Johansson --- target/ppc/tcg-excp_helper.c | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/target/ppc/tcg-excp_helper.c b/target/ppc/tcg-excp_helper.c index edecfb85725..6f5d82af636 100644 --- a/target/ppc/tcg-excp_helper.c +++ b/target/ppc/tcg-excp_helper.c @@ -160,14 +160,18 @@ static void do_hash(CPUPPCState *env, target_ulong ea= , target_ulong ra, target_ulong rb, uint64_t key, bool store) { uint64_t calculated_hash =3D hash_digest(ra, rb, key), loaded_hash; + unsigned mmu_idx =3D cpu_mmu_index(env_cpu(env), false); + MemOp op =3D MO_TE | MO_UQ | MO_UNALN; + MemOpIdx oi =3D make_memop_idx(op, mmu_idx); + uintptr_t retaddr =3D GETPC(); =20 if (store) { - cpu_stq_data_ra(env, ea, calculated_hash, GETPC()); + cpu_stq_mmu(env, ea, calculated_hash, oi, retaddr); } else { - loaded_hash =3D cpu_ldq_data_ra(env, ea, GETPC()); + loaded_hash =3D cpu_ldq_mmu(env, ea, oi, retaddr); if (loaded_hash !=3D calculated_hash) { raise_exception_err_ra(env, POWERPC_EXCP_PROGRAM, - POWERPC_EXCP_TRAP, GETPC()); + POWERPC_EXCP_TRAP, retaddr); } } } --=20 2.52.0 From nobody Mon Feb 9 03:31:53 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=1770066237; cv=none; d=zohomail.com; s=zohoarc; b=dB/sL5EcrmpKKoWlDD1UEMMpCXhv4E6WvQpwQuPkjmjaafXQdlKmhMevThC3jh7XFLnRw0Gau1aL27kae5f01NzQncrbEf+YCV1Pf4zPWQkzviQnkdYtw+Ajwhd2DAK/gHO/0B2Su3B08KAR6e8iz3UuVLteltcFEYggdd0h2nA= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1770066237; 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=ZVuCsHVaLMzFjACHbSaALeEzWdGEbdUIemaoG00K/Fk=; b=lLKms5qApmStecEWK5GmCEZmy89tiNoShwnLHU27+FpDmCbOOWfGuOm899FmM2vf8I+2M/kl3GImENMDF+LO43MjKICW8YGKmy50vk5l2SbctvCxGDrQNU9dO5ZLz5z/F9rwwmMAOfsqJpQ7YTMSWmu5UA14/qGoG1PTP9uh2LQ= 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 1770066237915670.5952576486807; Mon, 2 Feb 2026 13:03:57 -0800 (PST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1vn146-0004HM-Cy; Mon, 02 Feb 2026 16:02:34 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1vn13D-0001n7-JZ for qemu-devel@nongnu.org; Mon, 02 Feb 2026 16:01:45 -0500 Received: from mail-wr1-x433.google.com ([2a00:1450:4864:20::433]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1vn13C-0004TP-4R for qemu-devel@nongnu.org; Mon, 02 Feb 2026 16:01:39 -0500 Received: by mail-wr1-x433.google.com with SMTP id ffacd0b85a97d-42fed090e5fso3903985f8f.1 for ; Mon, 02 Feb 2026 13:01:37 -0800 (PST) Received: from localhost.localdomain (88-187-86-199.subs.proxad.net. [88.187.86.199]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-435e1354114sm49168105f8f.42.2026.02.02.13.01.35 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Mon, 02 Feb 2026 13:01:35 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1770066096; x=1770670896; 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=ZVuCsHVaLMzFjACHbSaALeEzWdGEbdUIemaoG00K/Fk=; b=NBBl4hE7CapzCQP1OUCNAjaAMDLjW/50JNIsf+vrymA7YNYZXhoX7ib6PxxXT1nvwf R8Cq7v112rMwZPLWSHTKZ1p2eSt7EE3GZEsAhNOJzaiaHGkKwEJIQZoAOns2ehKiehUX 5m6hn997EBPsdMAhRu1hSU6rMxwqL5v3HUR0cn5mcHFBYZIDNcpyz4DRdF2fyt3fg770 7C9VV76Dlu/USAgfGiaofoIFmXeIpTkNIHXbrXb5BDFdrco1ZQV5XY1RC0YWC3rwm/kX F1AaAOFcHI2OdKG/ToK3KMJdvm3FnhISLN3eEFvI0Lfy3qFZtji3QrkNXkh4Ur7pl6qd 7CUw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1770066096; x=1770670896; 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=ZVuCsHVaLMzFjACHbSaALeEzWdGEbdUIemaoG00K/Fk=; b=ZiBwji2pbYEUgVP8MUfIY3sdk2tvL3Lg4JE7ZvHheFFzrFr5q7kEIszRgzo10Hp7c3 1W8DJAKAq04UTX0+QIkY/H48JWXXrLmtpuIsRiVhNyesbNoZkrl+7hcRncNQZ9srhfpK Q9pIMAAa2oT36JUp6iEr9V+FcFd19O7i0oZVU29IEMVuwN0t9h5lGkXShuIFi1y7K9rV loQorjR6OGCVHAhn0XyVWnSlB6E4tdvAN03lhuH+rCJSQ5q/y8lmE2QipIA+/aYF5bXh IoUQ42CkPoKAzOvUi6q99DcNpd/pUYopamt5ONUN06wbOzVFRiT5wnhwqmJ1K4qs08CB T9xw== X-Gm-Message-State: AOJu0Yy+5k/Y/Hx7cLPb0Kp2yqPy0M6h1qkHiwUKkGVYvzvzkPIhhOBR xcE+n4GCyAB+baDvnWkkjBNDb8M8JcMRE6kFJvU1g8lZ4hAg54LR63zqCVcRUi0mnRXNvHvDz3x IHsMT9GE= X-Gm-Gg: AZuq6aL49MzDq7JLDPjmDJRpJ2AUVxRaVRQETR0nb//tm01Wd/q2DpJ0sHnU3VxgL7Z SpTM1vCnWNacnmfFHJoigLZaIvtK0ijrdZvLvVD3SDWX712+1ievSemSdkZSDyptcslRuAR+8Sb oey6Cc8oLzzTWMzA6UgEjUIw77oGrobf7kRfR30h6U+l6+jpcRxtDHVkCzP/9FA8KPXo4vqVGCn NbfG6f12aTslJ9TfzLvOCv7GlCCw4cYyKIvuvWxKz5UHdzFRcCeEsoiEwhMdyIeY9KHJOu+UiQv 2RuJ3wn1NnfRYMWvVXiXUiOvnCGTYSub6veESscu8bXH51lVBrLkwD50chgx2+c/ol8T8NC0b80 rbkkW9PLk7x24gIfCxXnmgihDBrr3YdSa8Ny75QF+yBPKlB15vDE8X0sTze6iT51u6/ZQICcPO3 TJQoao2GMD8IFPw5r+TEymF9WTHLD2+V33bIqOgUk44OSLDFeGDfVAx5S5AflF X-Received: by 2002:a05:6000:1ac8:b0:430:f790:99d7 with SMTP id ffacd0b85a97d-435f3a9a9c5mr20909260f8f.27.1770066096283; Mon, 02 Feb 2026 13:01:36 -0800 (PST) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Anton Johansson , Nicholas Piggin , Richard Henderson , Pierrick Bouvier , Chinmay Rath , qemu-ppc@nongnu.org, =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= Subject: [PATCH v6 04/11] target/ppc: Expect page translation hash addresses to be aligned Date: Mon, 2 Feb 2026 22:00:58 +0100 Message-ID: <20260202210106.93257-5-philmd@linaro.org> X-Mailer: git-send-email 2.52.0 In-Reply-To: <20260202210106.93257-1-philmd@linaro.org> References: <20260202210106.93257-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::433; envelope-from=philmd@linaro.org; helo=mail-wr1-x433.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=unavailable autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: qemu development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @linaro.org) X-ZM-MESSAGEID: 1770066241717154100 The page translation hash addresses are aligned: remove the misleading MO_UNALN flag. Reported-by: Richard Henderson Signed-off-by: Philippe Mathieu-Daud=C3=A9 Reviewed-by: Anton Johansson --- target/ppc/tcg-excp_helper.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/target/ppc/tcg-excp_helper.c b/target/ppc/tcg-excp_helper.c index 6f5d82af636..a8c67364669 100644 --- a/target/ppc/tcg-excp_helper.c +++ b/target/ppc/tcg-excp_helper.c @@ -161,7 +161,7 @@ static void do_hash(CPUPPCState *env, target_ulong ea, = target_ulong ra, { uint64_t calculated_hash =3D hash_digest(ra, rb, key), loaded_hash; unsigned mmu_idx =3D cpu_mmu_index(env_cpu(env), false); - MemOp op =3D MO_TE | MO_UQ | MO_UNALN; + MemOp op =3D MO_TE | MO_UQ; MemOpIdx oi =3D make_memop_idx(op, mmu_idx); uintptr_t retaddr =3D GETPC(); =20 --=20 2.52.0 From nobody Mon Feb 9 03:31:53 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=1770066312; cv=none; d=zohomail.com; s=zohoarc; b=TsWjHY77Kl/jvCEkHsiMjNBXucwyFz5SWo+9ZLEH4v9TjeK/mb7rAwYXHtOytrMKbgzvpOTmO0g1v6Hhwjo3zo0PUWRZz+pqKbI02PChxXELorIgc2RcYCoJ7Qf+ofvflyMvlKjCliCYFJ7y/bTMmwUa4lhV7yMxkxrS69TpJR8= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1770066312; 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=2dKMRrvX7UDbQAQDWoI8kadJYUH4efShqat9P1GFuQE=; b=MQ46jNl/4cexTbh4HbWEmsMA3vXAFtyGSdmRXPibxYgT/EBKD/v7cXN6atYXWlDXfYC1wdEyFvjLRmpw+CMo5z74E27nsEQCdRBP152c0TmWycL7eXnYSaVoFRgk/QUQXLeVTNAjgFw8EA40k4cP4eMwXYB9oar6mkPXUCaL8GQ= 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 1770066312450917.4235921980962; Mon, 2 Feb 2026 13:05:12 -0800 (PST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1vn145-0004C2-Kb; Mon, 02 Feb 2026 16:02:33 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1vn13M-0002CH-QV for qemu-devel@nongnu.org; Mon, 02 Feb 2026 16:01:51 -0500 Received: from mail-wm1-x32e.google.com ([2a00:1450:4864:20::32e]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1vn13J-0004Uk-5T for qemu-devel@nongnu.org; Mon, 02 Feb 2026 16:01:48 -0500 Received: by mail-wm1-x32e.google.com with SMTP id 5b1f17b1804b1-480142406b3so36543345e9.1 for ; Mon, 02 Feb 2026 13:01:44 -0800 (PST) Received: from localhost.localdomain (88-187-86-199.subs.proxad.net. [88.187.86.199]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-435e10e490esm46697622f8f.9.2026.02.02.13.01.42 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Mon, 02 Feb 2026 13:01:42 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1770066103; x=1770670903; 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=2dKMRrvX7UDbQAQDWoI8kadJYUH4efShqat9P1GFuQE=; b=EYpAUQSJ9YbSx7S4Pvgq9V/Gba2C8eAHwTjNxcbyApbwAGy5kJ5eZJgoBlLePNAIfd Qs/jLNnZ8cWBNZq61B5O/na5TjU/9CXYh1q5Q1mJEn/7YENdTxJ5vu/2uAZeLWVOjA5x H8bdC1QbzROv24qf8l2KiSeFrlf3+tEabqbrb7gvzVJGNnrQmMG9PB46jRi8hHUy9H03 Lh2wVZ9N30M0UmVpPgQYNC8o21+8GVrzN5ztuezwaeSO1SkdrRbaWkcgdDsXuvlFlYOe ApyZFO5ZBzKVItxXW1RqYOnLQy7yxRgWqRZTa+EJVxOs+Pnh2kBbYpcbO4dN5LLXs5OF vV+w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1770066103; x=1770670903; 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=2dKMRrvX7UDbQAQDWoI8kadJYUH4efShqat9P1GFuQE=; b=vqvr5oaPlWRb5CzSmAdiAG6iDz2A7155fKvTVfr9/RgS5W1Jb0lxaH2Gfv2saFHywI W8bH9dhFHOJDMxbSmjnBvdrj1ggdLurIsjUiRlcFUO8SX1Mpct+U3v4MSqCn2wozZqph Zc67P0C7pxzBxg6rAyWRNMnOk1cNHKuTE/XkydSN7hAah2d3UwCjsuxyByp3GTnSmr++ avhF+fDZzveDwMnjQEcS7zpN0PFBBrPU7jEuvegPm6SuJUxfkvfkeW7tyESJRS0zWNHB OHD26nCqjSHpv4DqbeYf8tIzWvx5JsT5BENn47By2Gh+Ry0OIl+50PpiHaBSU5qH1WGx pBGw== X-Gm-Message-State: AOJu0YzdcQO4up8YtGEQOmf1CSb8kIUl0byYhJVn1DxhXGApR3YTB4g0 UOblJGMERrHmsCSivOHldZEAQbQXtu8JCAu83pEj+kvqgTro9InuhPnsn9qQaSvz+ShYGWwsSmT JG0vq3fA= X-Gm-Gg: AZuq6aKkOr4bNVlkpgpYX3pCKcrgxKS1isjAe40D5qdaJogH3uK/+up9Z/7nzhQmJrM wBZfQF9REMIeh6YS7fqAZ1IsusQYn2YbU2TfkzmzmJETt6/F1rTaWMHQW6V0g1PqycrwDTbw5bU srN4pJEKpAeRUFOIC8ezJTfd3obqCl4N/+Ifbeb7NJ+/c3D+iErlKXiCxIPldbCefUMW9cFNxXS MQ1FfyBkuYmhPzoQTwD3FYh+y3uP9mj0iK1PMarWeNqMJLugF2Z3bZa+IHxRug1nddKJdcoWRWA D0odM+wA5ZTpYSv80UfYOkqkdKODM7Fay+KrP+wUoxMdljDfcy9rAPyIBOkdadMV45FGVSlvDY/ A2o/dE4PXZW8QOhzw3TlrZSp2UEbIr7Z4MuWwrSRWt9fs3W7uEOePnl0T5Z9GKKH6gCMqmo1tgp kZ6MOkPkMgkNrdQSupfPUFFlrTcvvqg4RqMs+h4oK4/pBfZJutQQTcBs9bTMvkFzu27dM6OLg= X-Received: by 2002:a5d:5f47:0:b0:430:f449:5f0e with SMTP id ffacd0b85a97d-435f3a7e61cmr18865712f8f.16.1770066103159; Mon, 02 Feb 2026 13:01:43 -0800 (PST) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Anton Johansson , Nicholas Piggin , Richard Henderson , Pierrick Bouvier , Chinmay Rath , qemu-ppc@nongnu.org, =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= Subject: [PATCH v6 05/11] target/ppc: Introduce ppc_data_endian_env() helper Date: Mon, 2 Feb 2026 22:00:59 +0100 Message-ID: <20260202210106.93257-6-philmd@linaro.org> X-Mailer: git-send-email 2.52.0 In-Reply-To: <20260202210106.93257-1-philmd@linaro.org> References: <20260202210106.93257-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::32e; envelope-from=philmd@linaro.org; helo=mail-wm1-x32e.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=unavailable autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: qemu development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @linaro.org) X-ZM-MESSAGEID: 1770066314260158500 Introduce ppc_data_endian_env() which returns the endian MemOp of the data path from the vCPU env pointer. Keep it hardcoded as MO_TE, the target built-time endianness. Signed-off-by: Philippe Mathieu-Daud=C3=A9 Reviewed-by: Anton Johansson --- target/ppc/internal.h | 12 ++++++++++++ target/ppc/mem_helper.c | 18 +++++++++--------- target/ppc/tcg-excp_helper.c | 2 +- 3 files changed, 22 insertions(+), 10 deletions(-) diff --git a/target/ppc/internal.h b/target/ppc/internal.h index 58f315ffcf5..c3d3590cc89 100644 --- a/target/ppc/internal.h +++ b/target/ppc/internal.h @@ -19,10 +19,22 @@ #define PPC_INTERNAL_H =20 #include "exec/breakpoint.h" +#include "exec/memop.h" #include "hw/core/registerfields.h" #include "exec/page-protection.h" #include "accel/tcg/tb-cpu-state.h" =20 +/** + * ppc_data_endian_env: + * @env: the cpu context + * + * Return the MemOp endianness of the DATA path. + */ +static inline MemOp ppc_data_endian_env(const CPUPPCState *env) +{ + return MO_TE; +} + /* PM instructions */ typedef enum { PPC_PM_DOZE, diff --git a/target/ppc/mem_helper.c b/target/ppc/mem_helper.c index 90546967593..ca84131d1a9 100644 --- a/target/ppc/mem_helper.c +++ b/target/ppc/mem_helper.c @@ -88,7 +88,7 @@ void helper_lmw(CPUPPCState *env, target_ulong addr, uint= 32_t reg) } } else { /* Slow path -- at least some of the operation requires i/o. */ - MemOp op =3D MO_TE | MO_UL | MO_UNALN; + MemOp op =3D ppc_data_endian_env(env) | MO_UL | MO_UNALN; MemOpIdx oi =3D make_memop_idx(op, mmu_idx); =20 for (; reg < 32; reg++) { @@ -114,7 +114,7 @@ void helper_stmw(CPUPPCState *env, target_ulong addr, u= int32_t reg) } else { /* Slow path -- at least some of the operation requires i/o. */ for (; reg < 32; reg++) { - MemOp op =3D MO_TE | MO_UL | MO_UNALN; + MemOp op =3D ppc_data_endian_env(env) | MO_UL | MO_UNALN; MemOpIdx oi =3D make_memop_idx(op, mmu_idx); =20 cpu_stl_mmu(env, addr, env->gpr[reg], oi, raddr); @@ -158,7 +158,7 @@ static void do_lsw(CPUPPCState *env, target_ulong addr,= uint32_t nb, break; } } else { - MemOp op =3D MO_TE | MO_UL | MO_UNALN; + MemOp op =3D ppc_data_endian_env(env) | MO_UL | MO_UNALN; MemOpIdx oi =3D make_memop_idx(op, mmu_idx); =20 /* Slow path -- at least some of the operation requires i/o. */ @@ -174,12 +174,12 @@ static void do_lsw(CPUPPCState *env, target_ulong add= r, uint32_t nb, val =3D cpu_ldub_mmuidx_ra(env, addr, mmu_idx, raddr) << 24; break; case 2: - op =3D MO_TE | MO_UW | MO_UNALN; + op =3D ppc_data_endian_env(env) | MO_UW | MO_UNALN; oi =3D make_memop_idx(op, mmu_idx); val =3D cpu_ldw_mmu(env, addr, oi, raddr) << 16; break; case 3: - op =3D MO_TE | MO_UW | MO_UNALN; + op =3D ppc_data_endian_env(env) | MO_UW | MO_UNALN; oi =3D make_memop_idx(op, mmu_idx); val =3D cpu_ldw_mmu(env, addr, oi, raddr) << 16; addr =3D addr_add(env, addr, 2); @@ -254,7 +254,7 @@ void helper_stsw(CPUPPCState *env, target_ulong addr, u= int32_t nb, break; } } else { - MemOp op =3D MO_TE | MO_UL | MO_UNALN; + MemOp op =3D ppc_data_endian_env(env) | MO_UL | MO_UNALN; MemOpIdx oi =3D make_memop_idx(op, mmu_idx); =20 for (; nb > 3; nb -=3D 4) { @@ -268,12 +268,12 @@ void helper_stsw(CPUPPCState *env, target_ulong addr,= uint32_t nb, cpu_stb_mmuidx_ra(env, addr, val >> 24, mmu_idx, raddr); break; case 2: - op =3D MO_TE | MO_UW | MO_UNALN; + op =3D ppc_data_endian_env(env) | MO_UW | MO_UNALN; oi =3D make_memop_idx(op, mmu_idx); cpu_stw_mmu(env, addr, val >> 16, oi, raddr); break; case 3: - op =3D MO_TE | MO_UW | MO_UNALN; + op =3D ppc_data_endian_env(env) | MO_UW | MO_UNALN; oi =3D make_memop_idx(op, mmu_idx); cpu_stw_mmu(env, addr, val >> 16, oi, raddr); addr =3D addr_add(env, addr, 2); @@ -304,7 +304,7 @@ static void dcbz_common(CPUPPCState *env, target_ulong = addr, haddr =3D probe_write(env, addr, dcbz_size, mmu_idx, retaddr); if (unlikely(!haddr)) { /* Slow path */ - MemOp op =3D MO_TE | MO_UQ | MO_UNALN; + MemOp op =3D ppc_data_endian_env(env) | MO_UQ | MO_UNALN; MemOpIdx oi =3D make_memop_idx(op, mmu_idx); =20 for (int i =3D 0; i < dcbz_size; i +=3D 8) { diff --git a/target/ppc/tcg-excp_helper.c b/target/ppc/tcg-excp_helper.c index a8c67364669..3f9eb3d924e 100644 --- a/target/ppc/tcg-excp_helper.c +++ b/target/ppc/tcg-excp_helper.c @@ -161,7 +161,7 @@ static void do_hash(CPUPPCState *env, target_ulong ea, = target_ulong ra, { uint64_t calculated_hash =3D hash_digest(ra, rb, key), loaded_hash; unsigned mmu_idx =3D cpu_mmu_index(env_cpu(env), false); - MemOp op =3D MO_TE | MO_UQ; + MemOp op =3D ppc_data_endian_env(env) | MO_UQ; MemOpIdx oi =3D make_memop_idx(op, mmu_idx); uintptr_t retaddr =3D GETPC(); =20 --=20 2.52.0 From nobody Mon Feb 9 03:31:53 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=1770066515; cv=none; d=zohomail.com; s=zohoarc; b=AYU2FCr4qIp9Bqrh/z7glcD70jpnnla9wQK0RQzWToQOUTqNd2untYmDJJ7jvDRXRJs4AGfZOBsMFiChzGgV1DDxqxcQeASOj8Mw4r5k6VPHV8tw7B5gnTJHheDLECJFhRmM491PEr3BPBgz7seZx1M9Bo6IJhfdiuh2OanfqME= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1770066515; 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=TUBS5merpy0OaooqaAt7ei1cIBqyFwJU+awi87nIq2M=; b=gWkwwcnSaPCsNobrvYwJKYAOhcdCRXmdQ64f+n736DcuiA63ji4FnK3iQ7Hw9T6C5p1b7gploKWUDzATrBVhtzGdoLOmv5eS+LwerxQW4Ymo7KfwX5L6Ri+iS7FmkvWQIQSc1vDq0tSYhMJmJnMtuOoTiI3CbMStPeIeyPwaepk= 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 1770066515644281.10716653967097; Mon, 2 Feb 2026 13:08:35 -0800 (PST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1vn14A-0004we-6C; Mon, 02 Feb 2026 16:02:38 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1vn13S-0002ai-Kx for qemu-devel@nongnu.org; Mon, 02 Feb 2026 16:01:55 -0500 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 1vn13Q-0004W4-4h for qemu-devel@nongnu.org; Mon, 02 Feb 2026 16:01:54 -0500 Received: by mail-wr1-x42f.google.com with SMTP id ffacd0b85a97d-435a517be33so2942236f8f.0 for ; Mon, 02 Feb 2026 13:01:51 -0800 (PST) Received: from localhost.localdomain (88-187-86-199.subs.proxad.net. [88.187.86.199]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-435e10e4824sm48579216f8f.1.2026.02.02.13.01.49 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Mon, 02 Feb 2026 13:01:49 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1770066110; x=1770670910; 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=TUBS5merpy0OaooqaAt7ei1cIBqyFwJU+awi87nIq2M=; b=CbJPkx2ard7nXrJsg0SS7DUVJUILOmlXVGHfbsaHJV1777GB4IHqfXtKsHyspAWGby DFXnM4+zRciHVrdZbeMAPVju3vWi3Jg87lGx4wCg0xY7BBgjn1pe5Zom4jmZyTIWmJ64 ZILGSq9woaWyan2FP5lp5iNfaOkGQZk3GlHjAKwYmgPdi0S2u2oWyVgB/V9VbCvvuNVN C8t7lCpAH52k32X2bVvBu+Q54WoMa79f/nj37vMDcSXtw2DFw5oitJZFscnuZiHKrzkr VSdMfaba/G2NSApetJb5UlwwmoIrxtUdTItoktuiTjIlWQpfdhWrOIGXiAqhVjMB8Av+ FUhQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1770066110; x=1770670910; 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=TUBS5merpy0OaooqaAt7ei1cIBqyFwJU+awi87nIq2M=; b=Zu4101Qs+vKyTWlV/JeW33xu8LVigHOo/8EG1zPLqgX4cqChchuHXNE1385YJ76Bet R0wOMCDqQOp09t9ao/SwIF3jNk17n9yyadmYG57vUOSqte7wZ8yKf6cz1WRo29g+As8E hyIcl45QjIOCNEHVy4kikSf9hhjSCdnjroOzsFo1ibyQQYlJdVtv0YDaLbzDC5F/9Ny3 9QBx+5ug+wQNNPXuFo/Wvq8CjJ0eKMHWKEFZxZV+Fk3h9itCe2kwNrELMkloR+WVRFc4 WPuDNJJOQz/DiECG5GaHomY0o4Vzmw7JkE908z/+jifgvB/VOTj7+jQ7MnH2iK5GDys4 wC7g== X-Gm-Message-State: AOJu0YzMpJz5gpvL353mD15a+ydfyeupHivXCv31yDsQqXoGw7C0vjP+ TDTWNDGTzngkQXn9/Ivmd47LEWUL+tjUb6RTB5a1jUaJMJdKd+YlvFkqo3BLEF5/6tnR2PGJCBn Euv/Rhh0= X-Gm-Gg: AZuq6aJgkIHmoJWEnus0tkXsmEoeodbE695vAYobOhV0lqfuaj45BEbrM6tAWVLMDd7 gtVra8KLZu824lGBqG88eSvQSYYvkqY9u2lOjdVvb90VWCF8pLp6rys08Fk00EhWh/nMwe4BkPA KAbx/W5JMjPyyI/TLlffUt2MeW2nzckB/EgoCtwUUd3kSOHwc52a2/vU19+oGarEJyCuuE2rkGI b9Hinvxll7junpFTobPiNpBhcNGEHP5T6iq2yoTWgiAebwRIMGqVNPJHGLz2zLoItwpLu7OdX70 KFQ6zqGCIxBVCgCGNLh6fbFnBKhK9/8qrUyavR/RH6oau8dRPpB+Ylyc+K0f/JNJD4gNcEdFph2 RBf6mnKRjY5H8EbEncNlC4eY+5IIsOPeWuqZjQg/bN0c2sxlUgIWJd33k9RPbejnyfOUK8oEYyk MUQtatcgGMHgqkLOI3tFW9sfMOVmu0ysbCnaMN2McUZHKhc609lba/XDCaqzq6 X-Received: by 2002:a05:6000:114e:b0:435:a647:a3b8 with SMTP id ffacd0b85a97d-435f3aa91eamr13134697f8f.36.1770066109982; Mon, 02 Feb 2026 13:01:49 -0800 (PST) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Anton Johansson , Nicholas Piggin , Richard Henderson , Pierrick Bouvier , Chinmay Rath , qemu-ppc@nongnu.org, =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= Subject: [PATCH v6 06/11] target/ppc: Introduce ppc_code_endian_dc() helper Date: Mon, 2 Feb 2026 22:01:00 +0100 Message-ID: <20260202210106.93257-7-philmd@linaro.org> X-Mailer: git-send-email 2.52.0 In-Reply-To: <20260202210106.93257-1-philmd@linaro.org> References: <20260202210106.93257-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=unavailable autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: qemu development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @linaro.org) X-ZM-MESSAGEID: 1770066518001154100 Introduce the ppc_code_endian_dc() helper which returns the MemOp endianness for the CODE path. Use it in need_byteswap(), removing one TARGET_BIG_ENDIAN. Note, the target MemOp endianness can be evaluated as (see commit 5c43a750b67 "accel/tcg: Implement translator_ld*_end"): MO_TE ^ (do_swap * MO_BSWAP) For PPC we use the DisasContext::le_mode field to swap the default (big-endian) order, so to get the PPC MemOp endianness we can directly use: MO_BE ^ (ctx->le_mode * MO_BSWAP) Signed-off-by: Philippe Mathieu-Daud=C3=A9 Reviewed-by: Anton Johansson --- target/ppc/translate.c | 17 ++++++++++++----- 1 file changed, 12 insertions(+), 5 deletions(-) diff --git a/target/ppc/translate.c b/target/ppc/translate.c index 17e6d07c8c2..e1753ce19ce 100644 --- a/target/ppc/translate.c +++ b/target/ppc/translate.c @@ -214,14 +214,21 @@ static inline bool is_ppe(const DisasContext *ctx) return !!(ctx->flags & POWERPC_FLAG_PPE42); } =20 +/** + * ppc_code_endian_dc: + * @dc: the disassembly context + * + * Return the MemOp endianness of the CODE path. + */ +static inline MemOp ppc_code_endian_dc(const DisasContext *ctx) +{ + return MO_BE ^ (ctx->le_mode * MO_BSWAP); +} + /* Return true iff byteswap is needed in a scalar memop */ static inline bool need_byteswap(const DisasContext *ctx) { -#if TARGET_BIG_ENDIAN - return ctx->le_mode; -#else - return !ctx->le_mode; -#endif + return ppc_code_endian_dc(ctx) !=3D MO_TE; } =20 /* True when active word size < size of target_long. */ --=20 2.52.0 From nobody Mon Feb 9 03:31:53 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=1770066234; cv=none; d=zohomail.com; s=zohoarc; b=XL7aHalkW/QtOSCfjwSKbxxyb53a4lW+vl0PwYDc3zvM++NZK1A3IEuRHaO3cU2KKYNo3RV9oLe2CVMxKbsCpgFMpCWlFbztM+1vp4m560Li1USKAxgcNbCg50izjnE+yHETdTGBDb4wdOb+ndWW8C5m7jNWBIrERx347/kPSeA= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1770066234; 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=8GYtXYwLjyQ4L7gUf7a69nMvlzjx1PzBJaCNpq/QF/A=; b=j6yo3kjE8QiEEoZUWwiGQzC1aKP67K50B4PqrYA5aAb7umLvylpWsV3JqKVVM7E+kvTMS4Q5LWW67Jw3Gx5pvfIHnW6y0gKYm4eCdHPZ5Cgz9bzC5nbgof+KiOkeCHXWTWDUHoyTMYAbb/rngdhBaWs8XKzgn/FAFyX7e01LHtE= 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 1770066234714993.5952856223631; Mon, 2 Feb 2026 13:03:54 -0800 (PST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1vn14C-0005GP-Sb; Mon, 02 Feb 2026 16:02:40 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1vn13Z-0002kK-BJ for qemu-devel@nongnu.org; Mon, 02 Feb 2026 16:02:02 -0500 Received: from mail-wr1-x432.google.com ([2a00:1450:4864:20::432]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1vn13W-0004Xh-L3 for qemu-devel@nongnu.org; Mon, 02 Feb 2026 16:02:00 -0500 Received: by mail-wr1-x432.google.com with SMTP id ffacd0b85a97d-43590777e22so3091496f8f.3 for ; Mon, 02 Feb 2026 13:01:58 -0800 (PST) Received: from localhost.localdomain (88-187-86-199.subs.proxad.net. [88.187.86.199]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-4360ef9e804sm5041493f8f.41.2026.02.02.13.01.55 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Mon, 02 Feb 2026 13:01:56 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1770066117; x=1770670917; 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=8GYtXYwLjyQ4L7gUf7a69nMvlzjx1PzBJaCNpq/QF/A=; b=WDvqs5XC8EWrGfpkC2fvty2r66yHpjvZ3qV+O/eCfCykIqSU/U2zXfPUv22nwOLwXt qC4J/Exz1lkwUPozQwwcls/Ep1WssBVSFkX4Pgx3tZm0Ov4h0xM0Zy0dGqgqBfVXgxho mIT1Fo7xgeVQ1DRaVD0aYmXmMNpV3bBkgOCtbzlEixCvn8x9Cq4204UcBYZSzh6qxW12 aoi7U0QujcM72E3iYGksoZoX1JzV2pxTFu6lkFK+XlbbQfAZbMm/eq2fll54k+JShcqi dbG3o13K9jAF7Bplc7FP0gvHwrvxCUN5UkET65C9eQzy7LP/hsE/QpXgRcQQBLZ53boK ZaHA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1770066117; x=1770670917; 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=8GYtXYwLjyQ4L7gUf7a69nMvlzjx1PzBJaCNpq/QF/A=; b=k38PUebibSv8aiF0+FPVJ7E6LPyIGo8j2ELbkSUBxdLklTferkZDnOYgUzH6DavTzB 0xb7nfftgKbd5CMbSjqL/S54/7KTqMealESVbPIYmJc0dRv7UvSHcu2Sxkx9G0+Vagrg iJGanJyfh0WrVaj0PAEtnUCu4wbGZvgadapbu2rIHCK0aG4br2oR+leGJ+mtw4vnbUJq UqLHE2YApGiT3t1BAqrhz4SdKmE8nluhH6cOyVozpz9Fhw49+Gk4HggFNx0U8XRh3Ke6 synctS0120+m6FBVpaE92suzioJfQHq72sdolCWsa5mJf5XjQwn5JXGu/tVKqsNCd9lL NgUQ== X-Gm-Message-State: AOJu0YyxGitVM9mt2ErPoV/pOEpcrLiZIpDlxmlLUMW8RgBmJHAfBQDc W6sroKb9x58kwQdRP0NryH87BZQRRhTMt212MlqqOsV2YnjxLkYgwUkZY+mxBItCXYyqGqhmORK zK1zJCSQ= X-Gm-Gg: AZuq6aIsYFBGQMOLLOQGYrfP8kzkPbpNuZX8FaGkdDaOFgG0CneNYsuraFxlRGBgoaX jCAslNcoGby91du9B5wMBq+DRw7pBJ8CWZRs4zARppuJ93oGBiTpypoBlIQzULe0G+02+iMioL+ BScHo7yL8pPnTnEbFzFSEeuOI8/TTDeo5qKczaEa4YmEJ0vTtjyg8xFtNLGazw1g5HTSh75akGz m9HbLwq9z8eT2KkbvwTGwlmjo6JtzLTi2lPWdRQK3YNWClGAxeYV4lXU2TE0vCRAdqZ4oLxMQr5 Cz0+mfvRdF/gOMqmdcr19i8d56BE80XN90I5LmisL4snkovphi0azP/khCh5yBhBJcny4iEX9Gv S6/pbmT2trIjSF8WOsRIOPiXiBqJy4x3Rs7Nk5n3o6mDilA6mh3IVsk6wgQ3JCXzcZNzL4OjuSJ V8isdW284lKjxUDs8esGEZG8yGgUJ7J710pSpX6WhaOfFreil/SAqNpNFiP1GL X-Received: by 2002:a05:6000:40c8:b0:431:104:6dc2 with SMTP id ffacd0b85a97d-435f3a674f5mr17649342f8f.8.1770066116806; Mon, 02 Feb 2026 13:01:56 -0800 (PST) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Anton Johansson , Nicholas Piggin , Richard Henderson , Pierrick Bouvier , Chinmay Rath , qemu-ppc@nongnu.org, =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= Subject: [PATCH v6 07/11] target/ppc: Inline need_byteswap() and replace translator_ldl_swap() Date: Mon, 2 Feb 2026 22:01:01 +0100 Message-ID: <20260202210106.93257-8-philmd@linaro.org> X-Mailer: git-send-email 2.52.0 In-Reply-To: <20260202210106.93257-1-philmd@linaro.org> References: <20260202210106.93257-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::432; envelope-from=philmd@linaro.org; helo=mail-wr1-x432.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=unavailable autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: qemu development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @linaro.org) X-ZM-MESSAGEID: 1770066235737154100 Rather than using a boolean with translator_ldl_swap(), get the MemOp endianness with ppc_code_endian() and pass it to translator_ldl_end(). Signed-off-by: Philippe Mathieu-Daud=C3=A9 Reviewed-by: Anton Johansson --- target/ppc/translate.c | 12 +++--------- 1 file changed, 3 insertions(+), 9 deletions(-) diff --git a/target/ppc/translate.c b/target/ppc/translate.c index e1753ce19ce..e9acfa239ec 100644 --- a/target/ppc/translate.c +++ b/target/ppc/translate.c @@ -225,12 +225,6 @@ static inline MemOp ppc_code_endian_dc(const DisasCont= ext *ctx) return MO_BE ^ (ctx->le_mode * MO_BSWAP); } =20 -/* Return true iff byteswap is needed in a scalar memop */ -static inline bool need_byteswap(const DisasContext *ctx) -{ - return ppc_code_endian_dc(ctx) !=3D MO_TE; -} - /* True when active word size < size of target_long. */ #ifdef TARGET_PPC64 # define NARROW_MODE(C) (!(C)->sf_mode) @@ -6595,6 +6589,7 @@ static void ppc_tr_translate_insn(DisasContextBase *d= cbase, CPUState *cs) DisasContext *ctx =3D container_of(dcbase, DisasContext, base); PowerPCCPU *cpu =3D POWERPC_CPU(cs); CPUPPCState *env =3D cpu_env(cs); + MemOp mo_endian =3D ppc_code_endian_dc(ctx); target_ulong pc; uint32_t insn; bool ok; @@ -6604,7 +6599,7 @@ static void ppc_tr_translate_insn(DisasContextBase *d= cbase, CPUState *cs) ctx->base.pc_next, ctx->mem_idx, (int)msr_ir); =20 ctx->cia =3D pc =3D ctx->base.pc_next; - insn =3D translator_ldl_swap(env, dcbase, pc, need_byteswap(ctx)); + insn =3D translator_ldl_end(env, dcbase, pc, mo_endian); ctx->base.pc_next =3D pc +=3D 4; =20 if (!is_prefix_insn(ctx, insn)) { @@ -6620,8 +6615,7 @@ static void ppc_tr_translate_insn(DisasContextBase *d= cbase, CPUState *cs) gen_exception_err(ctx, POWERPC_EXCP_ALIGN, POWERPC_EXCP_ALIGN_INSN= ); ok =3D true; } else { - uint32_t insn2 =3D translator_ldl_swap(env, dcbase, pc, - need_byteswap(ctx)); + uint32_t insn2 =3D translator_ldl_end(env, dcbase, pc, mo_endian); ctx->base.pc_next =3D pc +=3D 4; ok =3D decode_insn64(ctx, deposit64(insn2, 32, 32, insn)); } --=20 2.52.0 From nobody Mon Feb 9 03:31:53 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=1770066265; cv=none; d=zohomail.com; s=zohoarc; b=hIve0i30LBJJX+tEG2YCZSt5SoczeVzjnpOEocsQU+1c1f8xuoGIc4cf1157vNE93r79nThMG7wVuS3cZsIOe05VBGm3GYwIWKF4dHIUW480M60PciN5O6mtG5yFF3fI/7GGiPvnCthzCbTszwnGISI0ajPCW1fFq/v0tog0PQo= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1770066265; 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=ujg9U+BCTaj4+l5p4USlgs7ND8+2HFwZDCMj5HdauaY=; b=a//8Mc5V8HbL08fuwpFxgbFV9unuralPs3mhfvR57LisAiVTYJQUnlqO/tnZn8ginvX7aQyw54EXMiYYczjEkBvYopiE1LBANozJ5NWTv3Cx4LA7Taiq7i1frpXzksD97XONdeeVYHva5yM8QMfF5IbMFakp19D5vNkH3G228oI= 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 177006626551959.1521976644832; Mon, 2 Feb 2026 13:04:25 -0800 (PST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1vn14D-0005PO-Tq; Mon, 02 Feb 2026 16:02:42 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1vn13h-0002y6-4j for qemu-devel@nongnu.org; Mon, 02 Feb 2026 16:02:12 -0500 Received: from mail-wm1-x344.google.com ([2a00:1450:4864:20::344]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1vn13e-0004Yp-KM for qemu-devel@nongnu.org; Mon, 02 Feb 2026 16:02:08 -0500 Received: by mail-wm1-x344.google.com with SMTP id 5b1f17b1804b1-4806bf39419so780235e9.1 for ; Mon, 02 Feb 2026 13:02:05 -0800 (PST) Received: from localhost.localdomain (88-187-86-199.subs.proxad.net. [88.187.86.199]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-4830511cc4dsm13270355e9.3.2026.02.02.13.02.02 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Mon, 02 Feb 2026 13:02:03 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1770066124; x=1770670924; 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=ujg9U+BCTaj4+l5p4USlgs7ND8+2HFwZDCMj5HdauaY=; b=MTLCl09Zvhrq9jr/wggNTycmketbh1a6jG2L+7jdYYEQwxe4uCAI1+uFNQROLzXFlU QuBhcxNnhy+8sAOYLc5opnEAAafA4CBxbXav2kJd7/k9+Uq5to/Ud7RC7GiFZ33vwZm/ 6ZahrUa+jQyXkiP7sTEwgwJRRx5LXVKYsRzLpFwJOc2ShtzY+XPu+BbOVe+QOeXxjFue 3AYXwriw1w9ONq+keokYHWRH1cpsXgeME1tY2q0DeUzDxbA3MWLRyrZo49u01uftRWW8 2+JMnC2VrbheM3sqMRM3Rj2TgVWoUgAO+UeS8BeK6ADANEjYK4bKoGlFHyhyEODyuBZG OYAw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1770066124; x=1770670924; 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=ujg9U+BCTaj4+l5p4USlgs7ND8+2HFwZDCMj5HdauaY=; b=KhIlpaGXeLQwwZ1M8n3lccfYjWCcAzzcv0any1W7OwJtjwYy232v0Eo70IMfNt2blL 1ETK8JibcaLGU8fNqvuJwWsT7faXlTe9ZoYWSTmXP4ykEaIDWn/U+ejJMSmirxhYE5aV zHAde+F5IvbnDd72qyM4ilCZbJ4uHxh6o96fSqaO8bCwSUaC1o3LaJbZewqsLc4Fg+Lk TlUMmfCSsc7LZJsy7EOqBP7D0NgvBKl1xINzs8ivfmgS0AZ5cFko7LhlHajL8mzyyHl/ FeoVFrPaj1ErS6UkkxzGQBiXPxQt0dRKyH79JfaCyIwKv7reJ5Oc2sIVHTrww7NO9E7x p8IA== X-Gm-Message-State: AOJu0YyBtmmx69FqDHf2e78qbBpa7bHMIniv1evPQ7+J3pBmyTDpxmfZ m/Qa4OwcEvS8zw+6B1LmcxZGkw3cSRclP4A0UC/KGqZBdHiY5I7aBFakZWOSZnQajGUs9y9bEvN zPjw8xxDpag== X-Gm-Gg: AZuq6aJWywgSToWHhFgBc5dq4vwH7orKsp/8oWGnniA2RcLPFTONkpIKyHCwo7bWHmy VgKWXU+wVJXUyR7ba1KmZHVacDA4PryStx+KThGnQ623D2YOvRdXL44RnhZrn295u3pFLoInjR/ P0p6n8285bQalfFUjG64ibMByonIP9F39vcP0CWNwCpYQqneW9c4+erpKTSYxOximDKon7ojwWo /sn0/H/0J6cu3vMjciJhTSkMC6Y7laDieOfzD8yRT/smfWipasiR0m3SKCeJmZlmIOiSgdESiFX 05AcUkN0IoJtacnHCZuJxQtivXrIrDZaauDGONtThGqh0DN4wQdyuFpFDkvxb4jz4Do1SzAPKnS +1F184Z8OJVnHUdvDaWQdKvgo26RvMMbXsxqA4is+T6oqji28o7poZz0PppcA7u1MTxJCPIR5pU kk1K9238RnVWCOv0Vvff0UrcsG4dEjsaJj87pgBmyXjK79gTYYRWKagbYWiZ6O X-Received: by 2002:a05:600c:3e8f:b0:477:9a61:fd06 with SMTP id 5b1f17b1804b1-48305136156mr11885165e9.8.1770066123828; Mon, 02 Feb 2026 13:02:03 -0800 (PST) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Anton Johansson , Nicholas Piggin , Richard Henderson , Pierrick Bouvier , Chinmay Rath , qemu-ppc@nongnu.org, =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= Subject: [PATCH v6 08/11] target/ppc: Check endianness via env in ppc_disas_set_info() Date: Mon, 2 Feb 2026 22:01:02 +0100 Message-ID: <20260202210106.93257-9-philmd@linaro.org> X-Mailer: git-send-email 2.52.0 In-Reply-To: <20260202210106.93257-1-philmd@linaro.org> References: <20260202210106.93257-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::344; envelope-from=philmd@linaro.org; helo=mail-wm1-x344.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=unavailable autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: qemu development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @linaro.org) X-ZM-MESSAGEID: 1770066266313154100 disas_set_info() shouldn't bother with env->hflags, access env->msr directly. Signed-off-by: Philippe Mathieu-Daud=C3=A9 Reviewed-by: Anton Johansson --- target/ppc/cpu_init.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/target/ppc/cpu_init.c b/target/ppc/cpu_init.c index 58816c51a74..0808284b722 100644 --- a/target/ppc/cpu_init.c +++ b/target/ppc/cpu_init.c @@ -7456,7 +7456,7 @@ static void ppc_disas_set_info(CPUState *cs, disassem= ble_info *info) { CPUPPCState *env =3D cpu_env(cs); =20 - if ((env->hflags >> MSR_LE) & 1) { + if ((env->msr >> MSR_LE) & 1) { info->endian =3D BFD_ENDIAN_LITTLE; } else { info->endian =3D BFD_ENDIAN_BIG; --=20 2.52.0 From nobody Mon Feb 9 03:31:53 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=1770066426; cv=none; d=zohomail.com; s=zohoarc; b=mA98aK5tcmBozx6vaT6o1PGaG+xPFliAnqME9JTUPn0SVY3HQjIJV4xFh2ld1IpVQfF5OGIKIcyEI5Eq5HtH9vE9xV06jaATe5CDZRE+2rCgSE3EECYLLGcoFXPVKgTmkasZwoqVWSHmvtQjhDVkKU+Splrvt2pPco3aRCzi+aA= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1770066426; 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=OVs3esTbLv+RrO48KXXh1/vvzTrWgrJXJOlx+4h95e8=; b=aYsIWIxwgV8AqeuZwDTt42iv2Hk7bd3mFIZtENUAgin2+I/q/jb2G1SwJtEHf5UyIjE7oawk1gSPYng1gfYctdGv2nAW1kRhyub8NdTDolYqyhJfu6ypIBZ3ss8YYRIGXr6x8WtgWyZqs1FplTJ1xVz4PBjgEKuvlrUmAIxMtSs= 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 1770066426817548.612632482008; Mon, 2 Feb 2026 13:07:06 -0800 (PST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1vn14B-00059g-To; Mon, 02 Feb 2026 16:02:40 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1vn13o-00034B-KE for qemu-devel@nongnu.org; Mon, 02 Feb 2026 16:02:21 -0500 Received: from mail-wm1-x32d.google.com ([2a00:1450:4864:20::32d]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1vn13k-0004Zy-KT for qemu-devel@nongnu.org; Mon, 02 Feb 2026 16:02:15 -0500 Received: by mail-wm1-x32d.google.com with SMTP id 5b1f17b1804b1-48039fdc8aeso29424595e9.3 for ; Mon, 02 Feb 2026 13:02:12 -0800 (PST) Received: from localhost.localdomain (88-187-86-199.subs.proxad.net. [88.187.86.199]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-483051286e0sm13670975e9.5.2026.02.02.13.02.09 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Mon, 02 Feb 2026 13:02:10 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1770066131; x=1770670931; 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=OVs3esTbLv+RrO48KXXh1/vvzTrWgrJXJOlx+4h95e8=; b=SEJk+MaxeNxo0R9VpB3FU2oSWmSlG4SidJ0d5DISq61gVIepSsXaJlvBY1OOFO/2Rp 5w/KaWQgrXm3QnCu47jIOf8WjaXRSnH5SPVwZbsR7jz6wpf9swmJ7rOBvL6G/NkinnuA AqWaifIQS8h53OlI4mTcfZFi9CmzuNKx/7Jpy2w/CApMkFdBdhSDDE0+PkgC/03Dbh+1 MuF9dU6SaglvmuhYJhmuuz+pTxRJqK1OXNaIf2tYw/mccDEBfxITTZMshDtzmr2nyQgS ZndMPMuBKUfTpJ+4RVNYtTjVSS+GPN35anOl+81zgkRVJbEYSFaYi7pFI56R4gS5UYmI O+Zw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1770066131; x=1770670931; 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=OVs3esTbLv+RrO48KXXh1/vvzTrWgrJXJOlx+4h95e8=; b=PRysTblZjGreySVIZ9aUVWAxRC8tMrZ5p/IKKeN/QezgRIW5PihUj+fOYy13das2Bc WBU8Id2MtcVvWHzJ9PWdGKC0Wx0oJ/6DFysdfErQIFDPUNX2UINBne0yompUnzk1LKoE ENhBll/RDcZ/7nLxUdBf30oQOSBPM2CZl4Hhs8MR+DZlrYh66VsLqBqaxOTyVM+9TEW+ FLA+3uyCAFq4jbivC9F8byd88aX4BIcnsqh/Mrz4Y9PFmz2jErhVBqZ3rUX9Z7XqkgFs +m3eHXOlJLGFnRIcCvme7s5VZRZ4anfyDArb1TIXDT3dzAI8NexhwRsGv0FNcXf1Hbgf 2Q/w== X-Gm-Message-State: AOJu0Yxk62YNeEA/1p0hc4UsW22HYDLHHvShfw0DA/sNmWc/uJL5wPyg hfZPsn3+KzjyXSTqsDQtNc9rPfIOMa+CFuKCM/V5dCrzNwze1IEcjAzWUzCvBOTbsXLVjYErsyA l+9lE75g= X-Gm-Gg: AZuq6aJCxhWNz/JnIXp4vWN+MIHQXt0NTcTHYSdubhl5qm/DV0yQA0mdGKkaGMDNnSa fuSjs9816IsjXFCt+Y9vg6AIcNX9KEOyczUX+h1d8M2ocm441h/ojgLLa50h558dUDL6cZVVeCi OMo0MBRsmomOc2HRTAaPy6ZBUv6S3pLsQ+H1YH70Na2uxUdt5lorUczacTnQGGop4op84MdK9Ej t04Rj3sQkKr7+rE4nZ8SA6SVTykoMXnke5a2kZqf4GTBNw3bYXlYKqoU0rMGeTRR85n/Zhdom4r C6o+hBsZAOYHrVdV21w6DPdK3+UeL3JwRI9xSxLAmDn3hzrAGgQO+KI8+P/IjnXYj7o7wsN0Kus A+at/U9VGjckwcjhyWQ5D1GHdvKZW6iLrIEVWFYFkYEM3hYnxdag4X0e4QCOgZQe04MTnIjwZBz 4+pyhmMqPG9u0zrDGGzFxZ1i71VqJxOlUMtJCZp4s4DkDx7jJk+SbY0g9BIJ41 X-Received: by 2002:a05:600c:8b0a:b0:477:b48d:ba7a with SMTP id 5b1f17b1804b1-482db495b79mr174147105e9.32.1770066130772; Mon, 02 Feb 2026 13:02:10 -0800 (PST) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Anton Johansson , Nicholas Piggin , Richard Henderson , Pierrick Bouvier , Chinmay Rath , qemu-ppc@nongnu.org, =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= Subject: [PATCH v6 09/11] target/ppc: Introduce ppc_env_is_little_endian() helper Date: Mon, 2 Feb 2026 22:01:03 +0100 Message-ID: <20260202210106.93257-10-philmd@linaro.org> X-Mailer: git-send-email 2.52.0 In-Reply-To: <20260202210106.93257-1-philmd@linaro.org> References: <20260202210106.93257-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::32d; envelope-from=philmd@linaro.org; helo=mail-wm1-x32d.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=unavailable autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: qemu development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @linaro.org) X-ZM-MESSAGEID: 1770066428617154100 Centralize endianness check on MSR via a common helper. Signed-off-by: Philippe Mathieu-Daud=C3=A9 Reviewed-by: Anton Johansson --- target/ppc/internal.h | 5 +++++ target/ppc/cpu_init.c | 9 +++------ target/ppc/gdbstub.c | 2 +- target/ppc/mem_helper.c | 8 ++++---- 4 files changed, 13 insertions(+), 11 deletions(-) diff --git a/target/ppc/internal.h b/target/ppc/internal.h index c3d3590cc89..e6e60de95a4 100644 --- a/target/ppc/internal.h +++ b/target/ppc/internal.h @@ -24,6 +24,11 @@ #include "exec/page-protection.h" #include "accel/tcg/tb-cpu-state.h" =20 +static inline bool ppc_env_is_little_endian(const CPUPPCState *env) +{ + return FIELD_EX64(env->msr, MSR, LE); +} + /** * ppc_data_endian_env: * @env: the cpu context diff --git a/target/ppc/cpu_init.c b/target/ppc/cpu_init.c index 0808284b722..c5cec7c2ed9 100644 --- a/target/ppc/cpu_init.c +++ b/target/ppc/cpu_init.c @@ -7364,7 +7364,7 @@ static bool ppc_cpu_is_big_endian(CPUState *cs) { cpu_synchronize_state(cs); =20 - return !FIELD_EX64(cpu_env(cs)->msr, MSR, LE); + return !ppc_env_is_little_endian(cpu_env(cs)); } =20 static bool ppc_get_irq_stats(InterruptStatsProvider *obj, @@ -7456,11 +7456,8 @@ static void ppc_disas_set_info(CPUState *cs, disasse= mble_info *info) { CPUPPCState *env =3D cpu_env(cs); =20 - if ((env->msr >> MSR_LE) & 1) { - info->endian =3D BFD_ENDIAN_LITTLE; - } else { - info->endian =3D BFD_ENDIAN_BIG; - } + info->endian =3D ppc_env_is_little_endian(env) ? BFD_ENDIAN_LITTLE + : BFD_ENDIAN_BIG; info->mach =3D env->bfd_mach; if (!env->bfd_mach) { #ifdef TARGET_PPC64 diff --git a/target/ppc/gdbstub.c b/target/ppc/gdbstub.c index 3b28d4e21c7..b19c0f1ea9c 100644 --- a/target/ppc/gdbstub.c +++ b/target/ppc/gdbstub.c @@ -84,7 +84,7 @@ static int ppc_gdb_register_len(int n) void ppc_maybe_bswap_register(CPUPPCState *env, uint8_t *mem_buf, int len) { #ifndef CONFIG_USER_ONLY - if (!FIELD_EX64(env->msr, MSR, LE)) { + if (!ppc_env_is_little_endian(env)) { /* do nothing */ } else if (len =3D=3D 4) { bswap32s((uint32_t *)mem_buf); diff --git a/target/ppc/mem_helper.c b/target/ppc/mem_helper.c index ca84131d1a9..119dc1df233 100644 --- a/target/ppc/mem_helper.c +++ b/target/ppc/mem_helper.c @@ -420,7 +420,7 @@ target_ulong helper_lscbx(CPUPPCState *env, target_ulon= g addr, uint32_t reg, int adjust =3D HI_IDX * (n_elems - 1); \ int sh =3D sizeof(r->element[0]) >> 1; \ int index =3D (addr & 0xf) >> sh; \ - bool byteswap =3D FIELD_EX64(env->msr, MSR, LE); \ + bool byteswap =3D ppc_env_is_little_endian(env); \ \ if (byteswap) { \ index =3D n_elems - index - 1; \ @@ -446,7 +446,7 @@ LVE(LVEWX, cpu_ldl_be_data_ra, bswap32, u32) int adjust =3D HI_IDX * (n_elems - 1); \ int sh =3D sizeof(r->element[0]) >> 1; \ int index =3D (addr & 0xf) >> sh; \ - bool byteswap =3D FIELD_EX64(env->msr, MSR, LE); \ + bool byteswap =3D ppc_env_is_little_endian(env); \ \ if (byteswap) { \ index =3D n_elems - index - 1; \ @@ -479,7 +479,7 @@ void helper_##name(CPUPPCState *env, target_ulong addr,= \ t.s128 =3D int128_zero(); \ if (nb) { \ nb =3D (nb >=3D 16) ? 16 : nb; = \ - if (FIELD_EX64(env->msr, MSR, LE) && !lj) { \ + if (ppc_env_is_little_endian(env) && !lj) { \ for (i =3D 16; i > 16 - nb; i--) { \ t.VsrB(i - 1) =3D cpu_ldub_data_ra(env, addr, GETPC()); \ addr =3D addr_add(env, addr, 1); \ @@ -510,7 +510,7 @@ void helper_##name(CPUPPCState *env, target_ulong addr,= \ } \ \ nb =3D (nb >=3D 16) ? 16 : nb; \ - if (FIELD_EX64(env->msr, MSR, LE) && !lj) { \ + if (ppc_env_is_little_endian(env) && !lj) { \ for (i =3D 16; i > 16 - nb; i--) { \ cpu_stb_data_ra(env, addr, xt->VsrB(i - 1), GETPC()); \ addr =3D addr_add(env, addr, 1); \ --=20 2.52.0 From nobody Mon Feb 9 03:31:53 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=1770066411; cv=none; d=zohomail.com; s=zohoarc; b=nl9xo+C7m0IZLNoAYaDvkxHVJuA/VAtaOkzYLQpqBXTau1iRvjD/T5aQTdi9A4mfqPjFzJDdSR7C373jEzipczliDUMErrPG+X4pzD+GG0UMgmSt1DNnLFZd34639k+u1hJVkg1yjvHmFn+g1Pddik7M6Ch3qmIp65Y69WOfJIU= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1770066411; 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=K8NJiyEmeAxQSeoThjdv3cQkOH7fI1FQaJXKBiKTl8o=; b=anzH9XO9i064YoYlDMUzTvFn2vVKs6ppUNL2Zxs3CcYRNf+TyPJ4OsarIesXdgRUOtWJSr2RaX7fRAPwhowKXHuRr+DpDIOSAA3kJASltF94DcObLS+MiVI290CFICK4F1qXeXbfeWGd/WCqbuCbVDcbrJkV54kdSXUX+wAKZ50= 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 1770066411753495.30356626254; Mon, 2 Feb 2026 13:06:51 -0800 (PST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1vn14J-00061W-TG; Mon, 02 Feb 2026 16:02:47 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1vn13w-00038C-BW for qemu-devel@nongnu.org; Mon, 02 Feb 2026 16:02:24 -0500 Received: from mail-wr1-x42a.google.com ([2a00:1450:4864:20::42a]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1vn13s-0004ak-7V for qemu-devel@nongnu.org; Mon, 02 Feb 2026 16:02:23 -0500 Received: by mail-wr1-x42a.google.com with SMTP id ffacd0b85a97d-432d2c7dd52so5185632f8f.2 for ; Mon, 02 Feb 2026 13:02:19 -0800 (PST) Received: from localhost.localdomain (88-187-86-199.subs.proxad.net. [88.187.86.199]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-435e1322dc7sm46801119f8f.37.2026.02.02.13.02.16 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Mon, 02 Feb 2026 13:02:17 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1770066138; x=1770670938; 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=K8NJiyEmeAxQSeoThjdv3cQkOH7fI1FQaJXKBiKTl8o=; b=Xpjr7VsuZioW+JGWd4YAgVvQ4pXPE3g4j3+keQQlkfJWh6IFVx77L/hzfxsXZkLcM4 upEOPisOj1WG8cEPKzdTUQbwCBQ8TjbXwODBg7d9SzyN6oc3B57kUKOSYqcdfXRa0fDU 0lKjgTSOGzwHdJu0wgBwBBNEBAINBf1dGijjf0+nnDtyDvguvsZYUAYgH5j/DWwuU1r4 lTZVxhT/tpwrr0dDR8W2MmTKxwmPk1xuapZnpUQGwYqDeBxohpmc5o2qhF3lWEAO9BvF d+4kB0BsXGYtrFGWD7zyRgs3tO8LkfVwSwwRcA9qTa+opajJGUFhrbkUJUfLij0WrsjW 0+8Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1770066138; x=1770670938; 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=K8NJiyEmeAxQSeoThjdv3cQkOH7fI1FQaJXKBiKTl8o=; b=CiuOrKYH2gARVbG9MvXeauazq/pVslzZgVQmDsI2m6O6UXGpkfaI6RbOU3sbEp27Ps WlPBOOHiEk2AU62Rp727mniV9cxBezExaP6Ufzi4CQ4wTIetSx4RY8/1d2bo1nSm46dF ieC9Dg+mRzMRGoGOK22oi8vYiLlU4C3/UOPjaf9RE8BB/MB2LqyFhMDFV5w5wv+9Xkfi wYKWcYhzq6lPLTxiPkdogVn6WAN61/xynHs7veXU/5E2ZuAT7nBz7jJjN+BCK8DDfk5C lviEYOE7sjwWZpMvHUaey6sN8n9phZjLpjhpkgf0p82OucKUe0N4ktO0nxDUbT5ws4jl x7Ng== X-Gm-Message-State: AOJu0YwoOwDg/MWYwKnQBWkrzcH0cP4HpuVXPbaWcg9usJ3E4h5yo/r4 fPeFU4ZsTqn2OlN5EHDZm5RbwuFUnZNhMMUk/LH2soLHzHGTz1nTjZIX0ijrRsKjO/FLwDQavyg CVAr1aqs= X-Gm-Gg: AZuq6aLIC+zKM5vDcV3nVqzePfoGZrTk3CPdMX3KMigVHWOciDnaamQx83zIjF/1rw9 0Gos1UZqV2XqSeyflwSeGOSqmw9vjFi6SnDAL6dT8YMzlew2T2BV+tq+A2EiEonmulD74lZzEBx 8aBT8zBqmKORM7rw6oPEvhNaHBbJQLaDta/ag6m+xLfGU4Ii8BtdlkJlNadU13LiuIJBhLCmdk1 EJCb+eHX9H/u/K9Fz/AwWyaU6mZKf1zITA+LhUT+nPdYTlGjJQbovDVSAxq69iMhuZJMcBmqIT0 ohjahjz15arX1Y2wwESZuMcvDIbsKOfU1fY6hRpuVkr9vLwsYwzEta6RiuRG0EtacPt09Fds51p dXsQGwulWzgiYSDoTqDQfKM2ulJK8fmWpVt7N87js2iO/2ldCmAajNl0P19aWKE/ZL7wYnHjtzS esWXmwZy6RVTSWtiosM3/30kCGF572B94La7SLI2uVtqJct4PrGw5/aVS1oTo/ X-Received: by 2002:a05:6000:2087:b0:431:1d4:3a71 with SMTP id ffacd0b85a97d-435f3a9c028mr20770604f8f.27.1770066137589; Mon, 02 Feb 2026 13:02:17 -0800 (PST) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Anton Johansson , Nicholas Piggin , Richard Henderson , Pierrick Bouvier , Chinmay Rath , qemu-ppc@nongnu.org, =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= Subject: [PATCH v6 10/11] target/ppc: Check endianness at runtime in ppc_data_endian_env() Date: Mon, 2 Feb 2026 22:01:04 +0100 Message-ID: <20260202210106.93257-11-philmd@linaro.org> X-Mailer: git-send-email 2.52.0 In-Reply-To: <20260202210106.93257-1-philmd@linaro.org> References: <20260202210106.93257-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::42a; envelope-from=philmd@linaro.org; helo=mail-wr1-x42a.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: 1770066414363154100 Rather a runtime endianness check via env MSR over a build-time one. Now CPU can change endianness at runtime. Signed-off-by: Philippe Mathieu-Daud=C3=A9 Reviewed-by: Anton Johansson --- target/ppc/internal.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/target/ppc/internal.h b/target/ppc/internal.h index e6e60de95a4..dda23b66096 100644 --- a/target/ppc/internal.h +++ b/target/ppc/internal.h @@ -37,7 +37,7 @@ static inline bool ppc_env_is_little_endian(const CPUPPCS= tate *env) */ static inline MemOp ppc_data_endian_env(const CPUPPCState *env) { - return MO_TE; + return ppc_env_is_little_endian(env) ? MO_LE : MO_BE; } =20 /* PM instructions */ --=20 2.52.0 From nobody Mon Feb 9 03:31:53 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=1770066693; cv=none; d=zohomail.com; s=zohoarc; b=N+RqSmfqVRtFn5NEmnwkfKBI4ARQ85M4U/n/kR5Iq44U6z6gSDqny5TucJGDZSGO4TI3Qm73sGLeYaSl2DHpQwDYdAzKXk65ZFP1+8eCMl3WdiAwzj+ham6v3EFmjKU7VSWP1ExnlxAjlH7hU8E290S2da8xu9ct5n3PUg/gZag= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1770066693; 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=KDhtEQv8WkXrqREcSeWoo48wCAWVx8JbJ4n5iMqvZb0=; b=BcHupqcDIHYDktPsXeGBnMS80Zq/dYxNdtf2mgl1LDIWPIFJzSTVVhuSQeVzVBinUmkqOsFAfmiGbRs7tnifEx5jITHuAmPj5JB5DPTbNksBqorLGrfEf7VK3aAAkY56RseGmF1/mrx6tfI/LtkNXmDnV6J5HyzGfENQQbxvenQ= 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 1770066693019874.0681657778388; Mon, 2 Feb 2026 13:11:33 -0800 (PST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1vn14I-0005wZ-JP; Mon, 02 Feb 2026 16:02:46 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1vn140-0003TN-Di for qemu-devel@nongnu.org; Mon, 02 Feb 2026 16:02:28 -0500 Received: from mail-wr1-x431.google.com ([2a00:1450:4864:20::431]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1vn13y-0004bs-GF for qemu-devel@nongnu.org; Mon, 02 Feb 2026 16:02:28 -0500 Received: by mail-wr1-x431.google.com with SMTP id ffacd0b85a97d-432d2670932so4515093f8f.2 for ; Mon, 02 Feb 2026 13:02:26 -0800 (PST) Received: from localhost.localdomain (88-187-86-199.subs.proxad.net. [88.187.86.199]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-435e10ee057sm51822039f8f.15.2026.02.02.13.02.23 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Mon, 02 Feb 2026 13:02:23 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1770066144; x=1770670944; 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=KDhtEQv8WkXrqREcSeWoo48wCAWVx8JbJ4n5iMqvZb0=; b=qGQYMT73LxSLXaY3N7yfZve6AxjCXrjatMx7JPqijmL7aftj2phpSKfZ2AfiyBMK2s tERyomJRnhUqVi8m6F/u6szpXTyf3H+xn5lDzSIyK95AQ40br6W5hdKkh8LajUfcMUTb XwZP/YXeWYToxtIzKHZCeiLurL1yrba1NeG9PtwKswwYkP/2N6eKmLDIgzDcjXVy0aZZ wTRKFB/3wi0hRj2hwwoHA2rcznN3Oa77clvI2jWcPoBYGy+dVdAmCcFNXHTRTQiTv2G2 54ppgYXV9VUuxijI0fku0is5QjQa1V2Dz0BWVuxDU+zMjnHTlzuxdR4tF3TLJsAFWEIB SiOA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1770066144; x=1770670944; 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=KDhtEQv8WkXrqREcSeWoo48wCAWVx8JbJ4n5iMqvZb0=; b=JuEmEW97ZyjuICQARyPdE04G8vKTAI7lhPsMgata9dxfDNknPDDw1iR3eV0hVUkPEy kYM8GV5hEqzjXsPnyOPpuEwBtxDmxBpx+k1YtHz/UFUlRhZ60Sz8NWM5UE82GA404OBY kA9X5eCMlG5wn7q2e7EZb2opmHPjG32za9R3qtnFtaLUAiGALQ9Rm+XiDj5j/mc7wqP6 /Z4wyjTaCxhLBQ6ASV9BkvybizDwmMv1F1O1lseRBUzLvdBvSH6QDpQVo0MC4ujN7ye3 Ei/3oJ58ngo0qow8xVi4rzczf3g4v2iv39/rjE3oMMr5yE9wHwXBNnedHOAbEgndbmkb CjJQ== X-Gm-Message-State: AOJu0YyUCzJ9MgY0plXmrBEsd7XCPtY3gfsK4ngiI8LjsS2GZ4hngpC5 nhIJT/t9SUgUd4JXotMZ7ejgNjAV6sHEyfvkwnFlQ5QlJePkdAZjxyWQWHCQRJQe4+LZLKpk58y aKHNRwuA= X-Gm-Gg: AZuq6aLcTjejZBz/qoIa4iflJ36ZlsDJFE+pgAtXlyUHJMwidOJJZv95+XQdoboc4Is +xhkclKODDASzGM/oJTN+aQrTsQhYQRAy8fae+QDU5t4BAgqralsyyGjZsfIz6eecR7/bh8BwqC 07LN6FlLeFgwMSgZSES1dqSwyICnx3doua+vkP0COiqu2NDD3XII/QTUqT8BYeYeZaxrk9SQixu BaUOoTu5MxOaw0WO3Qv0nd9a+8/cOfH5nAZcxIVrqHwrlpX5JZptV49OqhSLZqJCsdjJudzeIOi b/w24XIA4lev6lvO45lXD2m7s9dF5Uz/5ci8rdFb6WLtdCIF0sklSGVMqGVIkQt8rh9X154otoS nvAp3u5nJGt1FDgg2I4LnciQwLaRFBFlZoHEuE4LheUoQx/3+AUyALx0AzsSbU+KxipSBcLdWBd 9m/hDWMjKZzPbbGyu68nVTrcGcao153LPoHvXhuArr13lf4E2HSNcQN16GYYYC X-Received: by 2002:a5d:5f83:0:b0:435:abbb:fa77 with SMTP id ffacd0b85a97d-435f3a7b8bfmr20497702f8f.20.1770066144397; Mon, 02 Feb 2026 13:02:24 -0800 (PST) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Anton Johansson , Nicholas Piggin , Richard Henderson , Pierrick Bouvier , Chinmay Rath , qemu-ppc@nongnu.org, =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= Subject: [PATCH v6 11/11] target/ppc: Inline cpu_ldl_code() call in ppc_ldl_code() Date: Mon, 2 Feb 2026 22:01:05 +0100 Message-ID: <20260202210106.93257-12-philmd@linaro.org> X-Mailer: git-send-email 2.52.0 In-Reply-To: <20260202210106.93257-1-philmd@linaro.org> References: <20260202210106.93257-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::431; envelope-from=philmd@linaro.org; helo=mail-wr1-x431.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=unavailable autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: qemu development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @linaro.org) X-ZM-MESSAGEID: 1770066694394158500 In preparation of removing the cpu_ldl_code wrapper, inline it. Get the runtime endianness with ppc_data_endian_env(), passing it to cpu_ldl_code_mmu(). No need to swap versus qemu-system binary anymore. Signed-off-by: Philippe Mathieu-Daud=C3=A9 Reviewed-by: Anton Johansson --- target/ppc/tcg-excp_helper.c | 17 ++++------------- 1 file changed, 4 insertions(+), 13 deletions(-) diff --git a/target/ppc/tcg-excp_helper.c b/target/ppc/tcg-excp_helper.c index 3f9eb3d924e..5e6c1e326d4 100644 --- a/target/ppc/tcg-excp_helper.c +++ b/target/ppc/tcg-excp_helper.c @@ -428,22 +428,13 @@ G_NORETURN void powerpc_checkstop(CPUPPCState *env, c= onst char *reason) cpu_loop_exit_noexc(cs); } =20 -/* Return true iff byteswap is needed to load instruction */ -static inline bool insn_need_byteswap(CPUArchState *env) -{ - /* SYSTEM builds TARGET_BIG_ENDIAN. Need to swap when MSR[LE] is set */ - return !!(env->msr & ((target_ulong)1 << MSR_LE)); -} - uint32_t ppc_ldl_code(CPUArchState *env, target_ulong addr) { - uint32_t insn =3D cpu_ldl_code(env, addr); + CPUState *cs =3D env_cpu(env); + MemOp op_end =3D ppc_data_endian_env(env); + MemOpIdx oi =3D make_memop_idx(MO_UL | op_end, cpu_mmu_index(cs, true)= ); =20 - if (insn_need_byteswap(env)) { - insn =3D bswap32(insn); - } - - return insn; + return cpu_ldl_code_mmu(env, addr, oi, 0); } =20 #if defined(TARGET_PPC64) --=20 2.52.0