From nobody Sat Nov 15 17:44:05 2025 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=linaro.org ARC-Seal: i=1; a=rsa-sha256; t=1748189027; cv=none; d=zohomail.com; s=zohoarc; b=ECUkXrM1CJgZwP2nSrKGVh7gWGcxP1FCk9svBwAcd144RfY3+pW5vYkxngR7oC8kH4HyJ+RRAXOCSSme5Ia0/f+AMbCL7AVqYS+koF9KqyE/3Y8Dqjp3lcoxOJAbmOw31zGtWRklcdwjbwxR8TeAaVcMF2yOis/oms9ZsyMrOnY= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1748189027; h=Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=MAhHFjlenR/Sqt29jyVYJUHEixh44cdrPOm049Pm2o4=; b=R7pX0XWnCFDz8a6ohoucxHcjf7dCKSsnz8tdHztWE6EvlCFmSMxN6vRqjBGlGa+lVt4g4iheZjpztF9Czgf+IDvO5x8njH50gfUqfGK94UnZf4NjDwGOTJKOFPQCqxb5grJ4haMd2VTEIU+DIS7r7+59b4E5dz1K2r4BXu3SIpI= 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 1748189027292643.845243272631; Sun, 25 May 2025 09:03:47 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1uJDoZ-0002GF-1B; Sun, 25 May 2025 12:03:07 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1uJDo1-0001ke-1k for qemu-devel@nongnu.org; Sun, 25 May 2025 12:02:34 -0400 Received: from mail-wr1-x42f.google.com ([2a00:1450:4864:20::42f]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1uJDnx-00035n-4i for qemu-devel@nongnu.org; Sun, 25 May 2025 12:02:32 -0400 Received: by mail-wr1-x42f.google.com with SMTP id ffacd0b85a97d-3a4c9df6f92so1358635f8f.0 for ; Sun, 25 May 2025 09:02:28 -0700 (PDT) Received: from stoup.. ([195.53.115.74]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-447f73d4a3csm215772545e9.22.2025.05.25.09.02.25 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 25 May 2025 09:02:25 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1748188946; x=1748793746; 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=MAhHFjlenR/Sqt29jyVYJUHEixh44cdrPOm049Pm2o4=; b=TDmZ2zLxNNwdzemSCR4cebTAn9HY/Ys1Fn+I1poH2sMxQVyk3qd0FKvU8xJXLUDI6a 9dCiLJKFiP1NAw96rUVcEr/WvxSbry1FIOUL2XisdYsyC9SXbfVEynl+QvH2aBlwCXeF /u3jAbhdw8PFpYohxNq0Mq+fowpiAxA/3hT33fATHtcelpZ0UGP/AqR1fnDTv3rwbKVl 2OVsNcNWvuSch8BwRZm42EUoIKvx6FQjOwJrAyjz11bhpGUTlhL5F7MhghaEB+Eu+fPs T1ncokgXvbvDxKyIBMWZ4MkMal0uQs5pNIP1ymGCmOnmVtpXShttHIKygPCQfOWVQgkp hcDQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1748188946; x=1748793746; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=MAhHFjlenR/Sqt29jyVYJUHEixh44cdrPOm049Pm2o4=; b=Idp5b172Sjivv41+tSs1FydwVrZ/HMv0twVMTXkWA+0HqpYXsWrugXyQUCzt3JGuNi 3qC4NSa+FcHcjhDO3TJoF/1igZFdpmHbw0IlOK5QFoN257wjn7mr6WfZpC3fEj0NvbNA ph9DaF1J+wpsz6c2pjUA2ngNloIStDUNi2+oCwuzq31qh7fZKNW/8BMdNhUyzKjonOtU bnvYE8J7Uk0fbhyifgmnLtzLtIGPSKyw9/76SHKEoabLYePwI1DNpYDzDsc7uk6ANHvn 8SsXdX07GA0q1QZD+CXfYy2kNRUQbOiLpXuYAaVTSa/k/FBQQNhxjnkXipgNLT8606PA u9cA== X-Gm-Message-State: AOJu0YyggY2M5AzS8tOjFgIrmkBbWpKjyary1UrU1yMEEv/0IGVZrcpM inmMhRobsls4uuwQrTHJo5MC6yoTOI4SZf68mv4y/rMyCQJxwsn6Ch+n/Ii7UiqnuuOFvDZALkx KGPJLyRc= X-Gm-Gg: ASbGncswMLqg+HpuiOdmFnyr37IutB8Z0M5cU90tgCtanL8w8qXcTxH2/ePj6L0qkRl GeQjLg6bXNxyMVWRbet8H1tRLDBdtXQXQFEkdwOkVr6Mb+gx4Aob0BXW12aS3IOk06M8J0svwUs 15fYyrkUGho8uk+bqi839VhyoVHOzAaLOkzdrQ9ypPT1cI8gYU2PxUfXyMkI99Y6hMYtgqS7rxJ nfw0JBrsA+x8KHjEn67ZmYzdvAOs4HHDPRbehZZnsqQd0w7SPo2He1x6OoNyqLQxynYjIb7erMN lSbsDrAx0xlnUC63lSACuyq/Odz2fUw4VhEgI2iUucGDp+aOVlI9239p X-Google-Smtp-Source: AGHT+IEi6ATy9l47m4j/r7ipKsrqRyScHtmR/LhPQDC4t5K66pKvgg3/gpmbMgtFIVKtmeL/7gfwpg== X-Received: by 2002:a05:6000:4203:b0:3a3:6595:9209 with SMTP id ffacd0b85a97d-3a4cb4899e8mr4490805f8f.36.1748188946310; Sun, 25 May 2025 09:02:26 -0700 (PDT) From: Richard Henderson To: qemu-devel@nongnu.org Cc: edgar.iglesias@gmail.com, philmd@linaro.org Subject: [PATCH v2 01/10] target/microblaze: Split out mb_unaligned_access_internal Date: Sun, 25 May 2025 17:02:11 +0100 Message-ID: <20250525160220.222154-2-richard.henderson@linaro.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20250525160220.222154-1-richard.henderson@linaro.org> References: <20250525160220.222154-1-richard.henderson@linaro.org> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=2a00:1450:4864:20::42f; envelope-from=richard.henderson@linaro.org; helo=mail-wr1-x42f.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: 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: 1748189029310116600 Content-Type: text/plain; charset="utf-8" Use an explicit 64-bit type for the address to store in EAR. Signed-off-by: Richard Henderson Reviewed-by: Edgar E. Iglesias --- target/microblaze/helper.c | 64 +++++++++++++++++++++----------------- 1 file changed, 36 insertions(+), 28 deletions(-) diff --git a/target/microblaze/helper.c b/target/microblaze/helper.c index 9203192483..5fe81e4b16 100644 --- a/target/microblaze/helper.c +++ b/target/microblaze/helper.c @@ -27,6 +27,42 @@ #include "qemu/host-utils.h" #include "exec/log.h" =20 + +G_NORETURN +static void mb_unaligned_access_internal(CPUState *cs, uint64_t addr, + uintptr_t retaddr) +{ + CPUMBState *env =3D cpu_env(cs); + uint32_t esr, iflags; + + /* Recover the pc and iflags from the corresponding insn_start. */ + cpu_restore_state(cs, retaddr); + iflags =3D env->iflags; + + qemu_log_mask(CPU_LOG_INT, + "Unaligned access addr=3D0x%" PRIx64 " pc=3D%x iflags=3D= %x\n", + addr, env->pc, iflags); + + esr =3D ESR_EC_UNALIGNED_DATA; + if (likely(iflags & ESR_ESS_FLAG)) { + esr |=3D iflags & ESR_ESS_MASK; + } else { + qemu_log_mask(LOG_UNIMP, "Unaligned access without ESR_ESS_FLAG\n"= ); + } + + env->ear =3D addr; + env->esr =3D esr; + cs->exception_index =3D EXCP_HW_EXCP; + cpu_loop_exit(cs); +} + +void mb_cpu_do_unaligned_access(CPUState *cs, vaddr addr, + MMUAccessType access_type, + int mmu_idx, uintptr_t retaddr) +{ + mb_unaligned_access_internal(cs, addr, retaddr); +} + #ifndef CONFIG_USER_ONLY static bool mb_cpu_access_is_secure(MicroBlazeCPU *cpu, MMUAccessType access_type) @@ -269,31 +305,3 @@ bool mb_cpu_exec_interrupt(CPUState *cs, int interrupt= _request) } =20 #endif /* !CONFIG_USER_ONLY */ - -void mb_cpu_do_unaligned_access(CPUState *cs, vaddr addr, - MMUAccessType access_type, - int mmu_idx, uintptr_t retaddr) -{ - MicroBlazeCPU *cpu =3D MICROBLAZE_CPU(cs); - uint32_t esr, iflags; - - /* Recover the pc and iflags from the corresponding insn_start. */ - cpu_restore_state(cs, retaddr); - iflags =3D cpu->env.iflags; - - qemu_log_mask(CPU_LOG_INT, - "Unaligned access addr=3D" TARGET_FMT_lx " pc=3D%x iflag= s=3D%x\n", - (target_ulong)addr, cpu->env.pc, iflags); - - esr =3D ESR_EC_UNALIGNED_DATA; - if (likely(iflags & ESR_ESS_FLAG)) { - esr |=3D iflags & ESR_ESS_MASK; - } else { - qemu_log_mask(LOG_UNIMP, "Unaligned access without ESR_ESS_FLAG\n"= ); - } - - cpu->env.ear =3D addr; - cpu->env.esr =3D esr; - cs->exception_index =3D EXCP_HW_EXCP; - cpu_loop_exit(cs); -} --=20 2.43.0 From nobody Sat Nov 15 17:44:05 2025 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=linaro.org ARC-Seal: i=1; a=rsa-sha256; t=1748189009; cv=none; d=zohomail.com; s=zohoarc; b=FbnTWYeF/1keNqeiSKcsIOVjjCG1WtjXyesqLpoz3CM2ZiyI+4ZtWtWTLOxi9MHjXPWgza4vtz2YHw7fG8wSjD6pB8TNaZEbajpnSxZJLbAKQNMNQz18Z95eQJ4oEpZ0Rwengr66t+mK5ojft0Bcos9uVsFWxbaLvSKvzcg/Cjc= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1748189009; h=Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=F/r6BR4u92dVav+xdpPWvNWTLbsmjFwEOJ+5r16ZoMU=; b=Tie6bmWHonYfLYOp0d+R4TdFlmOytT4o6qtGh/u2nXNUd985AYZLvRI+ZHKP6CWyezLIhC0WUWsQ5pZJ4n4JnJ8AJZN78epXm5Ht/GYdX6E8mHf+2AJCFw15JonB84Eh8fPOqjda/Hz1n+pBwNJM+pDAq/gjaDAFrOapxB3X7yo= 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 1748189009413289.7598971936187; Sun, 25 May 2025 09:03:29 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1uJDoK-000206-Iy; Sun, 25 May 2025 12:02:53 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1uJDo1-0001kk-Sg for qemu-devel@nongnu.org; Sun, 25 May 2025 12:02:39 -0400 Received: from mail-wr1-x42e.google.com ([2a00:1450:4864:20::42e]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1uJDny-00035s-TK for qemu-devel@nongnu.org; Sun, 25 May 2025 12:02:33 -0400 Received: by mail-wr1-x42e.google.com with SMTP id ffacd0b85a97d-3a361b8a664so1630344f8f.3 for ; Sun, 25 May 2025 09:02:29 -0700 (PDT) Received: from stoup.. ([195.53.115.74]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-447f73d4a3csm215772545e9.22.2025.05.25.09.02.26 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 25 May 2025 09:02:27 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1748188948; x=1748793748; 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=F/r6BR4u92dVav+xdpPWvNWTLbsmjFwEOJ+5r16ZoMU=; b=K17YbPMk2MaZXiNQoNNGkixnnSZBKjja0JCMN882gxH4M2mALW6jFeI+JyUIUw22So qfvbOTItU+QQHn/vKRGXr5KqdME8u8mVyk8xIDiKf6BvcNV5M03X35U2ox1K7UciGB7p YxV3GByeveXKqIQmealgnTGma4gGyHehENnfVfMDq8bSRbP8/ey57faVZzF3p41ADea3 pvLoJUn1QfCq4JYxdQPbDr4iq+TQmx+smZZSa1gFU4jteANghN6xxxUPdXKjyRE/Nl4v g8jSYJo6/h2m7tJR0nNBhwUnVZ+fj1mpesvf5ipRYrWk0gYtwDvfgURM9WKVNKDOlakc Cauw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1748188948; x=1748793748; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=F/r6BR4u92dVav+xdpPWvNWTLbsmjFwEOJ+5r16ZoMU=; b=itKhvSly1eJsnid/wtblNsUFa9aCW0fKVHZ6/8XzeMof0BsByQUZIyK4+BoNboZQpd mVFdQ/alBJEBiPv0snkyNRcMKkYkDIaXjx2a7PqJOPqIyWl3gDlnyCDgRTrmqdC+YG80 wlxiFYfU3Vc3jLBTcezmq4txqkIdJR0+7KixqwUNyLfL7LMLB3sPjNnwxNXKYY9EE5wG V+5nd5Ay3pf2Vg2PtbXrut4/TOSA9QveQ52RRZJ0gaVmBkTlMd0SaYpXGiuUru7dr4E3 JnBNLJSa8HUfxAO3/J4NR6hv8yclwf+73rbOb94OJcYyZXg2tcQ+OQJW8SOYtJFrR3Il pEWA== X-Gm-Message-State: AOJu0YyI/uCsZRCw5if8tyHY0GWq42//h2Gu09tELJcnKPD1EygVUIFs M60ZoXQ+FLXilyxySjFxCkXvThkb8kXQ3FTYPhNVZDc+eDxsjkts4ngeaTYPn+s04DiaHGDZaks zTF7HMIk= X-Gm-Gg: ASbGncuus3Fb+lzVAhLH0d7ooSDODmIM5SXsZlAIlX2PhQ0m1XrCmc/9gnSuP22gYqR wvAq+GaS1LjZSi00cWF4nz0STX5PqW2oF6NIKUtjbZ3WH2K+Tag2BLSVeb7IhtYfmJCcx4A+iKt qLp2t9VUY7/dH5IhZS/dYAt34jsiRoVAHYiyBYM4J+yscaQp2nT1EcjF+GSMMDzdBAx+4ivTHHj Ga5uM5OmuosPjuO4x9iQKgBXe0hcuQ72vTGrfX9S+AAxdZtw8jf4iRlnDW7oC8u0+/1N/W6/iI0 hRXDc/OzHlTk5gYNX5htcl/VW9D+2epo8tTAonECA40x5JsaEU6zDj9g X-Google-Smtp-Source: AGHT+IF4hbYItQL1TnbDGCcbpEY6gyDJ92bIaWM/7mSooKTrb8xr/S+7qiiAtTT/y4rYZPVMIvPejg== X-Received: by 2002:a05:6000:1a8c:b0:3a3:7bbc:d958 with SMTP id ffacd0b85a97d-3a4cb4299camr5166684f8f.1.1748188947709; Sun, 25 May 2025 09:02:27 -0700 (PDT) From: Richard Henderson To: qemu-devel@nongnu.org Cc: edgar.iglesias@gmail.com, philmd@linaro.org Subject: [PATCH v2 02/10] target/microblaze: Introduce helper_unaligned_access Date: Sun, 25 May 2025 17:02:12 +0100 Message-ID: <20250525160220.222154-3-richard.henderson@linaro.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20250525160220.222154-1-richard.henderson@linaro.org> References: <20250525160220.222154-1-richard.henderson@linaro.org> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=2a00:1450:4864:20::42e; envelope-from=richard.henderson@linaro.org; helo=mail-wr1-x42e.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @linaro.org) X-ZM-MESSAGEID: 1748189010880116600 Content-Type: text/plain; charset="utf-8" Signed-off-by: Richard Henderson Reviewed-by: Edgar E. Iglesias --- target/microblaze/helper.h | 12 ++++++------ target/microblaze/helper.c | 7 +++++++ 2 files changed, 13 insertions(+), 6 deletions(-) diff --git a/target/microblaze/helper.h b/target/microblaze/helper.h index f740835fcb..41f56a5601 100644 --- a/target/microblaze/helper.h +++ b/target/microblaze/helper.h @@ -20,12 +20,12 @@ DEF_HELPER_FLAGS_3(fcmp_ne, TCG_CALL_NO_WG, i32, env, i= 32, i32) DEF_HELPER_FLAGS_3(fcmp_ge, TCG_CALL_NO_WG, i32, env, i32, i32) =20 DEF_HELPER_FLAGS_2(pcmpbf, TCG_CALL_NO_RWG_SE, i32, i32, i32) -#if !defined(CONFIG_USER_ONLY) -DEF_HELPER_FLAGS_3(mmu_read, TCG_CALL_NO_RWG, i32, env, i32, i32) -DEF_HELPER_FLAGS_4(mmu_write, TCG_CALL_NO_RWG, void, env, i32, i32, i32) -#endif - DEF_HELPER_FLAGS_2(stackprot, TCG_CALL_NO_WG, void, env, tl) - DEF_HELPER_FLAGS_2(get, TCG_CALL_NO_RWG, i32, i32, i32) DEF_HELPER_FLAGS_3(put, TCG_CALL_NO_RWG, void, i32, i32, i32) + +#ifndef CONFIG_USER_ONLY +DEF_HELPER_FLAGS_3(mmu_read, TCG_CALL_NO_RWG, i32, env, i32, i32) +DEF_HELPER_FLAGS_4(mmu_write, TCG_CALL_NO_RWG, void, env, i32, i32, i32) +DEF_HELPER_FLAGS_2(unaligned_access, TCG_CALL_NO_WG, noreturn, env, i64) +#endif diff --git a/target/microblaze/helper.c b/target/microblaze/helper.c index 5fe81e4b16..ef0e2f973f 100644 --- a/target/microblaze/helper.c +++ b/target/microblaze/helper.c @@ -26,6 +26,7 @@ #include "exec/target_page.h" #include "qemu/host-utils.h" #include "exec/log.h" +#include "exec/helper-proto.h" =20 =20 G_NORETURN @@ -64,6 +65,12 @@ void mb_cpu_do_unaligned_access(CPUState *cs, vaddr addr, } =20 #ifndef CONFIG_USER_ONLY + +void HELPER(unaligned_access)(CPUMBState *env, uint64_t addr) +{ + mb_unaligned_access_internal(env_cpu(env), addr, GETPC()); +} + static bool mb_cpu_access_is_secure(MicroBlazeCPU *cpu, MMUAccessType access_type) { --=20 2.43.0 From nobody Sat Nov 15 17:44:05 2025 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=linaro.org ARC-Seal: i=1; a=rsa-sha256; t=1748189009; cv=none; d=zohomail.com; s=zohoarc; b=RQ2KzG1ZMy3MwCnsR6VeLGA/8lPJkV3gbvUL5MWPx8TPEPqwthcOtuFwcPiGFVZ2HkrHByQNszCp8UqnywXTH0CWXIr2zrt/1dViAcYEk2MMRNK+izoSikZZCUb1l8O3KgyrsYOuoo16kUcau4IUaMOFJbgMt3GDegcu4NqH3Q8= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1748189009; h=Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=v030sQXn38icJSu8ncIHv/E3f08VdnZ+xSGEfzy3HLE=; b=BORvT3Ak58xej2ePZ7cGAXWe+LQuf9gS7Qxp/0hru67X+Q/MLFeguPJo8FBMaelWqc/ISESGRkgGdv/MNFRdUvIeXLFbiGFEvxlFe9yH2pNTWVvPcR3VhIDClZ2cUAOcd1g0MgbtvoKIWDDGcZYccarKHzgtgfJDufU3+2HinS8= 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 1748189009440736.433641295671; Sun, 25 May 2025 09:03:29 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1uJDoB-0001sm-97; Sun, 25 May 2025 12:02:43 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1uJDo1-0001kl-SN for qemu-devel@nongnu.org; Sun, 25 May 2025 12:02:36 -0400 Received: from mail-wm1-x32b.google.com ([2a00:1450:4864:20::32b]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1uJDny-000360-To for qemu-devel@nongnu.org; Sun, 25 May 2025 12:02:33 -0400 Received: by mail-wm1-x32b.google.com with SMTP id 5b1f17b1804b1-43ce71582e9so12783395e9.1 for ; Sun, 25 May 2025 09:02:30 -0700 (PDT) Received: from stoup.. ([195.53.115.74]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-447f73d4a3csm215772545e9.22.2025.05.25.09.02.27 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 25 May 2025 09:02:28 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1748188949; x=1748793749; 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=v030sQXn38icJSu8ncIHv/E3f08VdnZ+xSGEfzy3HLE=; b=dEDEB7XRshpxYX22MZngR2WOz0n6DQbR8MrWJDqUWGJ90lIwaE5W1Ql8tAFRrTO1hI dbz2XpUXNMQXHXxbG0gERIHZTeQRBItpu1tnLf2YgA/3LmKQAn76XIFE/SWIPSTAZAae 4A7Sz3J5i7Mzd9/f4oJCzyg0QnM8WcyXzb2+Jv75mTkD9emge+xBhOEZxPgt69k69x79 YYBWqjLEa5WplI+R9UuLvhDPkRbkyyiTOosBuBgJXnhbSo0Jk68yQW77n0jBqHwMMMHS PlCobZpk5AaO7+vwZTJ9z1Ls12Q4hcfigYhoX5A/Y5+xk4a3oUhUzbFmFgDgy3rA0iAH wf8Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1748188949; x=1748793749; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=v030sQXn38icJSu8ncIHv/E3f08VdnZ+xSGEfzy3HLE=; b=EA8Vsrsdnijm0G7mKmvSzIYxKLBsUsk+J01QLc5acM3HHvCFcVWZtZEdBU8eqV7kK1 RAyLq41KtI7QoVJMxIBf3sfMHXPSqL+a8TS6ke1YXeZXXrMd5ihAf+mIzrKJPgqaH68h gKXYePThYDiYgGTcO0wr4OCIHfIrKNYzTCMj1bXgN76cDW/CeW0CK3QlGxMkJi2jKpwr pvzgyFghgL91z8enPX/iHYnG/8P5nCL3bWkKRwaOu+oaYlNRDwKjEm64qxlyERoyhmT4 kD3HE05RRRoSPbGF/Fj+isMW/u5QhEDhRLySxOc69kexOQ1RZw43Zv2yNgDGYTv8le2e 61sQ== X-Gm-Message-State: AOJu0YzkasayV8vfELU/oZbjziPi1JIP1dwwymYE71Uu2g8PX705ljQM mdesAGQxZ5aRGLPh62MadVahPT1j/YBB5NRlMhJtEo/dt9WFv7b2BT6NNWql4imGZuOOZEntdrX WZtdNWiI= X-Gm-Gg: ASbGncsqdChEjLtcrDLpoOSBAA1W/FuqGLtGoCnpHclP6rOJ6IhOxAy0SJoRBNGBRWS UkYnzZb5ALDy4UkZvx2kwWwZNMgGB2F1Y8XGEzew/M7bMJXom37+ZQRwk+pNZNms1isaJ+d57yl B1LXoNgEheKwGG4JPovy59OMRZdmP9vO8mj2a4xGezIzsT7/8EsSwoi4+gRHoHvO4c19Fj1Hiii yQt2KnMLYn7rX+iGSG4IlGO42oqJts6HBf1cm5Tg64buFr37AuEuqY/o5lP52dBCZ68ZAFYh+AL ZUfx0zDgf0YZYR6MDL7pkxocdIPoCZr9MlGHgfaiiMZOGDV2R7JGMHB2cxBA+KQ2twU= X-Google-Smtp-Source: AGHT+IG+WlHsIbfZGy/JpIYInASIFLI2yRf4a88REYqpZoND2mPE5Dw8UeWmGSq1DivFVJMen9Dsnw== X-Received: by 2002:a05:600c:1da6:b0:44a:4874:bdde with SMTP id 5b1f17b1804b1-44c8ed8f474mr57832085e9.0.1748188948925; Sun, 25 May 2025 09:02:28 -0700 (PDT) From: Richard Henderson To: qemu-devel@nongnu.org Cc: edgar.iglesias@gmail.com, philmd@linaro.org Subject: [PATCH v2 03/10] target/microblaze: Split out mb_transaction_failed_internal Date: Sun, 25 May 2025 17:02:13 +0100 Message-ID: <20250525160220.222154-4-richard.henderson@linaro.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20250525160220.222154-1-richard.henderson@linaro.org> References: <20250525160220.222154-1-richard.henderson@linaro.org> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=2a00:1450:4864:20::32b; envelope-from=richard.henderson@linaro.org; helo=mail-wm1-x32b.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @linaro.org) X-ZM-MESSAGEID: 1748189010988116600 Content-Type: text/plain; charset="utf-8" Use an explicit 64-bit type for the address to store in EAR. Signed-off-by: Richard Henderson Reviewed-by: Edgar E. Iglesias --- target/microblaze/op_helper.c | 70 +++++++++++++++++++++-------------- 1 file changed, 42 insertions(+), 28 deletions(-) diff --git a/target/microblaze/op_helper.c b/target/microblaze/op_helper.c index 9e838dfa15..4c39207a55 100644 --- a/target/microblaze/op_helper.c +++ b/target/microblaze/op_helper.c @@ -393,38 +393,52 @@ void helper_mmu_write(CPUMBState *env, uint32_t ext, = uint32_t rn, uint32_t v) mmu_write(env, ext, rn, v); } =20 +static void mb_transaction_failed_internal(CPUState *cs, hwaddr physaddr, + uint64_t addr, unsigned size, + MMUAccessType access_type, + uintptr_t retaddr) +{ + CPUMBState *env =3D cpu_env(cs); + MicroBlazeCPU *cpu =3D env_archcpu(env); + const char *access_name =3D "INVALID"; + bool take =3D env->msr & MSR_EE; + uint32_t esr =3D ESR_EC_DATA_BUS; + + switch (access_type) { + case MMU_INST_FETCH: + access_name =3D "INST_FETCH"; + esr =3D ESR_EC_INSN_BUS; + take &=3D cpu->cfg.iopb_bus_exception; + break; + case MMU_DATA_LOAD: + access_name =3D "DATA_LOAD"; + take &=3D cpu->cfg.dopb_bus_exception; + break; + case MMU_DATA_STORE: + access_name =3D "DATA_STORE"; + take &=3D cpu->cfg.dopb_bus_exception; + break; + } + + qemu_log_mask(CPU_LOG_INT, "Transaction failed: addr 0x%" PRIx64 + "physaddr 0x" HWADDR_FMT_plx " size %d access-type %s (%= s)\n", + addr, physaddr, size, access_name, + take ? "TAKEN" : "DROPPED"); + + if (take) { + env->esr =3D esr; + env->ear =3D addr; + cs->exception_index =3D EXCP_HW_EXCP; + cpu_loop_exit_restore(cs, retaddr); + } +} + void mb_cpu_transaction_failed(CPUState *cs, hwaddr physaddr, vaddr addr, unsigned size, MMUAccessType access_type, int mmu_idx, MemTxAttrs attrs, MemTxResult response, uintptr_t retaddr) { - MicroBlazeCPU *cpu =3D MICROBLAZE_CPU(cs); - CPUMBState *env =3D &cpu->env; - - qemu_log_mask(CPU_LOG_INT, "Transaction failed: vaddr 0x%" VADDR_PRIx - " physaddr 0x" HWADDR_FMT_plx " size %d access type %s\n= ", - addr, physaddr, size, - access_type =3D=3D MMU_INST_FETCH ? "INST_FETCH" : - (access_type =3D=3D MMU_DATA_LOAD ? "DATA_LOAD" : "DATA_= STORE")); - - if (!(env->msr & MSR_EE)) { - return; - } - - if (access_type =3D=3D MMU_INST_FETCH) { - if (!cpu->cfg.iopb_bus_exception) { - return; - } - env->esr =3D ESR_EC_INSN_BUS; - } else { - if (!cpu->cfg.dopb_bus_exception) { - return; - } - env->esr =3D ESR_EC_DATA_BUS; - } - - env->ear =3D addr; - cs->exception_index =3D EXCP_HW_EXCP; - cpu_loop_exit_restore(cs, retaddr); + mb_transaction_failed_internal(cs, physaddr, addr, size, + access_type, retaddr); } #endif --=20 2.43.0 From nobody Sat Nov 15 17:44:05 2025 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=linaro.org ARC-Seal: i=1; a=rsa-sha256; t=1748189071; cv=none; d=zohomail.com; s=zohoarc; b=inSB/4Ay8dH/cACm404Mf8bUXxa41PbkoPnAcM7vdhZHSn01PbO01EWXpsl+A4jeMnf/Dm8PYTxwdA4WohsSQoE0k3FxKzwcUJFPcyzssDRLqXThDgsQqQ9Fcd4bLTQcOkKWXOELFn03vdRtG8z/B/a+RjBcvfY39+0RvUozpRQ= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1748189071; h=Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=1cFE9Rav7pF61D6b2m7yUgSrF69gORHmAhwRklTnako=; b=KTjLV4nCfB1ZEZ9LS0oCXvySwVePy8nZIOE9EmQEm7cA6Y+/mnugVnXhWNoIBSrMegTPWIsU7bwil358ehOBW4R89IArpsJdJbb1W78QDkYV9twfzgrmm4amojvc8W3S27LNjTmMV1mbY8RkVYx65PKXUpXLTyw5gyHIoTt8ftI= 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 1748189071337977.5449555562715; Sun, 25 May 2025 09:04:31 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1uJDoT-00026P-SY; Sun, 25 May 2025 12:03:01 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1uJDo4-0001lX-Rm for qemu-devel@nongnu.org; Sun, 25 May 2025 12:02:40 -0400 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 1uJDo1-000364-L0 for qemu-devel@nongnu.org; Sun, 25 May 2025 12:02:35 -0400 Received: by mail-wm1-x32e.google.com with SMTP id 5b1f17b1804b1-43ede096d73so11242485e9.2 for ; Sun, 25 May 2025 09:02:32 -0700 (PDT) Received: from stoup.. ([195.53.115.74]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-447f73d4a3csm215772545e9.22.2025.05.25.09.02.29 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 25 May 2025 09:02:29 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1748188951; x=1748793751; 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=1cFE9Rav7pF61D6b2m7yUgSrF69gORHmAhwRklTnako=; b=DUIG2kFx62LkDMkMWAt6EMDexEz/W0PMsu9XrvZaoorpa0YRsornZcCmkG2LFSLU6s eQuRk5IWvx+AncJBN4wVqqiKJ580YeStI8FzSosFXoMGa+Mr1/5BB5oW8XngfXAr/w1J i5GFFTbSHF3NpDAA+ShhSQWyxEoFo/M7mLNkmGegOc2PbRsEIGFJtG2Zk93bh6APFDnV HvMrz+4LTja2Gflu2YnZoMvogfoP2YKodHm9DyWeH3qTtbOzx1do+5Fqdj1zDZN8XLlR 3mA+gg+6Enqf1HzlBICiRIxT5ge36DYQ8OzSwC/EwE/49A0+fLvAv9hcz5oyCaWDkEDU PzHA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1748188951; x=1748793751; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=1cFE9Rav7pF61D6b2m7yUgSrF69gORHmAhwRklTnako=; b=KDsOfbY7WkLe073hRyENdlejDBEkI05VEacF/y0L6E0+GLyWPu3j5QfaemIFDIArTn F3If+C+eIc5nhEPWH56rzrQtSn/hoLAJe8jrgJbhNw0+PUB6pBhu5e/UefIkHh4k/Cvt V7gxIOv/qnd80X/bW/+AEFFo4R12G2YS469SzNB9vD6f2dtp7sN5L1d4uepjV3DWrnhb nBfLhyOcICZN75iWv9JRI+t8+wrtwRqJJJvXuc9/+5dW0bW8aJ5IZP8vWSMHImy5K9E0 J6DhQXtpiTWYcyCpCYZ8pQQ+QfIF1OKWKs6F/u/mRn4mBhtIQZgNu/1tpyVy0oqCFKqq B8Eg== X-Gm-Message-State: AOJu0YwxTbgi2jZA5CyabtCe7oebxXyjgz9rVWUFDggHEQzJXMWQWlPf LTouAdKMkp4XUk6/ZqxNWoyEWHh+ngxYpIHGU6Tnvye9b/1eTgJgXDur/3SZPc4KdCW743ij+5E iBOHgQPo= X-Gm-Gg: ASbGncvxCAIUI+gfZ618ZseGJlmCTBSmqpnqYPYk1Yl8BjA8SHFo+igNC7vL7Syd0i1 hmtC4rC5nG+qbvyVJP2SlmgkqiXuZEZVHOgc3laHyKjT5grIAeeCmZsRJytV/5qM6mefLkOZVrb 9Ahwykr5MXsYyZ6v2zJcKbQ7mQhG/0BOErfb9Dvr8aG1/St9HbvC64emF2XAvS2BCDXGLFbV3Og Z6WClxVLZk/KZbXO22Cjdo9IrFYu4ZVpz+pnGvyDfC3oPnxigSLOlljZCsH/Cos4u67ry7FKKH8 Q5/EQqcsZ9FDX+kzcQ5F7OmjR9aHO84rY1pl4AnSiPbC6tE6eCw2RuZW X-Google-Smtp-Source: AGHT+IGNfUOo6w/+YiPQPgp0SLVJsqKID/+GdsRd8EG3uiqTT+lKMXSz06Y025lWqSkGbYYd8x5FRw== X-Received: by 2002:a05:600c:a07:b0:448:e8c0:c778 with SMTP id 5b1f17b1804b1-44c92a5495cmr48683135e9.22.1748188951125; Sun, 25 May 2025 09:02:31 -0700 (PDT) From: Richard Henderson To: qemu-devel@nongnu.org Cc: edgar.iglesias@gmail.com, philmd@linaro.org Subject: [PATCH v2 04/10] target/microblaze: Implement extended address load/store out of line Date: Sun, 25 May 2025 17:02:14 +0100 Message-ID: <20250525160220.222154-5-richard.henderson@linaro.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20250525160220.222154-1-richard.henderson@linaro.org> References: <20250525160220.222154-1-richard.henderson@linaro.org> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=2a00:1450:4864:20::32e; envelope-from=richard.henderson@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=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @linaro.org) X-ZM-MESSAGEID: 1748189074003116600 Content-Type: text/plain; charset="utf-8" Use helpers and address_space_ld/st instead of inline loads and stores. This allows us to perform operations on physical addresses wider than virtual addresses. Signed-off-by: Richard Henderson Reviewed-by: Edgar E. Iglesias --- target/microblaze/helper.h | 10 +++++++ target/microblaze/op_helper.c | 40 +++++++++++++++++++++++++++ target/microblaze/translate.c | 52 +++++++++++++++++++++++++++-------- 3 files changed, 90 insertions(+), 12 deletions(-) diff --git a/target/microblaze/helper.h b/target/microblaze/helper.h index 41f56a5601..ef4fad9b91 100644 --- a/target/microblaze/helper.h +++ b/target/microblaze/helper.h @@ -28,4 +28,14 @@ DEF_HELPER_FLAGS_3(put, TCG_CALL_NO_RWG, void, i32, i32,= i32) DEF_HELPER_FLAGS_3(mmu_read, TCG_CALL_NO_RWG, i32, env, i32, i32) DEF_HELPER_FLAGS_4(mmu_write, TCG_CALL_NO_RWG, void, env, i32, i32, i32) DEF_HELPER_FLAGS_2(unaligned_access, TCG_CALL_NO_WG, noreturn, env, i64) +DEF_HELPER_FLAGS_2(lbuea, TCG_CALL_NO_WG, i32, env, i64) +DEF_HELPER_FLAGS_2(lhuea_be, TCG_CALL_NO_WG, i32, env, i64) +DEF_HELPER_FLAGS_2(lhuea_le, TCG_CALL_NO_WG, i32, env, i64) +DEF_HELPER_FLAGS_2(lwea_be, TCG_CALL_NO_WG, i32, env, i64) +DEF_HELPER_FLAGS_2(lwea_le, TCG_CALL_NO_WG, i32, env, i64) +DEF_HELPER_FLAGS_3(sbea, TCG_CALL_NO_WG, void, env, i32, i64) +DEF_HELPER_FLAGS_3(shea_be, TCG_CALL_NO_WG, void, env, i32, i64) +DEF_HELPER_FLAGS_3(shea_le, TCG_CALL_NO_WG, void, env, i32, i64) +DEF_HELPER_FLAGS_3(swea_be, TCG_CALL_NO_WG, void, env, i32, i64) +DEF_HELPER_FLAGS_3(swea_le, TCG_CALL_NO_WG, void, env, i32, i64) #endif diff --git a/target/microblaze/op_helper.c b/target/microblaze/op_helper.c index 4c39207a55..b8365b3b1d 100644 --- a/target/microblaze/op_helper.c +++ b/target/microblaze/op_helper.c @@ -382,6 +382,8 @@ void helper_stackprot(CPUMBState *env, target_ulong add= r) } =20 #if !defined(CONFIG_USER_ONLY) +#include "system/memory.h" + /* Writes/reads to the MMU's special regs end up here. */ uint32_t helper_mmu_read(CPUMBState *env, uint32_t ext, uint32_t rn) { @@ -441,4 +443,42 @@ void mb_cpu_transaction_failed(CPUState *cs, hwaddr ph= ysaddr, vaddr addr, mb_transaction_failed_internal(cs, physaddr, addr, size, access_type, retaddr); } + +#define LD_EA(NAME, TYPE, FUNC) \ +uint32_t HELPER(NAME)(CPUMBState *env, uint64_t ea) \ +{ \ + CPUState *cs =3D env_cpu(env); \ + MemTxResult txres; \ + TYPE ret =3D FUNC(cs->as, ea, MEMTXATTRS_UNSPECIFIED, &txres); \ + if (unlikely(txres !=3D MEMTX_OK)) { \ + mb_transaction_failed_internal(cs, ea, ea, sizeof(TYPE), \ + MMU_DATA_LOAD, GETPC()); \ + } \ + return ret; \ +} + +LD_EA(lbuea, uint8_t, address_space_ldub) +LD_EA(lhuea_be, uint16_t, address_space_lduw_be) +LD_EA(lhuea_le, uint16_t, address_space_lduw_le) +LD_EA(lwea_be, uint32_t, address_space_ldl_be) +LD_EA(lwea_le, uint32_t, address_space_ldl_le) + +#define ST_EA(NAME, TYPE, FUNC) \ +void HELPER(NAME)(CPUMBState *env, uint32_t data, uint64_t ea) \ +{ \ + CPUState *cs =3D env_cpu(env); \ + MemTxResult txres; \ + FUNC(cs->as, ea, data, MEMTXATTRS_UNSPECIFIED, &txres); \ + if (unlikely(txres !=3D MEMTX_OK)) { \ + mb_transaction_failed_internal(cs, ea, ea, sizeof(TYPE), \ + MMU_DATA_STORE, GETPC()); \ + } \ +} + +ST_EA(sbea, uint8_t, address_space_stb) +ST_EA(shea_be, uint16_t, address_space_stw_be) +ST_EA(shea_le, uint16_t, address_space_stw_le) +ST_EA(swea_be, uint32_t, address_space_stl_be) +ST_EA(swea_le, uint32_t, address_space_stl_le) + #endif diff --git a/target/microblaze/translate.c b/target/microblaze/translate.c index 671b1ae4db..3d9756391e 100644 --- a/target/microblaze/translate.c +++ b/target/microblaze/translate.c @@ -700,6 +700,20 @@ static void record_unaligned_ess(DisasContext *dc, int= rd, =20 tcg_set_insn_start_param(dc->base.insn_start, 1, iflags); } + +static void gen_alignment_check_ea(DisasContext *dc, TCGv_i64 ea, int rb, + int rd, MemOp size, bool store) +{ + if (rb && (dc->tb_flags & MSR_EE) && dc->cfg->unaligned_exceptions) { + TCGLabel *over =3D gen_new_label(); + + record_unaligned_ess(dc, rd, size, store); + + tcg_gen_brcondi_i64(TCG_COND_TSTEQ, ea, (1 << size) - 1, over); + gen_helper_unaligned_access(tcg_env, ea); + gen_set_label(over); + } +} #endif =20 static inline MemOp mo_endian(DisasContext *dc) @@ -765,10 +779,11 @@ static bool trans_lbuea(DisasContext *dc, arg_typea *= arg) return true; } #ifdef CONFIG_USER_ONLY - return true; + g_assert_not_reached(); #else TCGv addr =3D compute_ldst_addr_ea(dc, arg->ra, arg->rb); - return do_load(dc, arg->rd, addr, MO_UB, MMU_NOMMU_IDX, false); + gen_helper_lbuea(reg_for_write(dc, arg->rd), tcg_env, addr); + return true; #endif } =20 @@ -796,10 +811,13 @@ static bool trans_lhuea(DisasContext *dc, arg_typea *= arg) return true; } #ifdef CONFIG_USER_ONLY - return true; + g_assert_not_reached(); #else TCGv addr =3D compute_ldst_addr_ea(dc, arg->ra, arg->rb); - return do_load(dc, arg->rd, addr, MO_UW, MMU_NOMMU_IDX, false); + gen_alignment_check_ea(dc, addr, arg->rb, arg->rd, MO_16, false); + (mo_endian(dc) =3D=3D MO_BE ? gen_helper_lhuea_be : gen_helper_lhuea_l= e) + (reg_for_write(dc, arg->rd), tcg_env, addr); + return true; #endif } =20 @@ -827,10 +845,13 @@ static bool trans_lwea(DisasContext *dc, arg_typea *a= rg) return true; } #ifdef CONFIG_USER_ONLY - return true; + g_assert_not_reached(); #else TCGv addr =3D compute_ldst_addr_ea(dc, arg->ra, arg->rb); - return do_load(dc, arg->rd, addr, MO_UL, MMU_NOMMU_IDX, false); + gen_alignment_check_ea(dc, addr, arg->rb, arg->rd, MO_32, false); + (mo_endian(dc) =3D=3D MO_BE ? gen_helper_lwea_be : gen_helper_lwea_le) + (reg_for_write(dc, arg->rd), tcg_env, addr); + return true; #endif } =20 @@ -918,10 +939,11 @@ static bool trans_sbea(DisasContext *dc, arg_typea *a= rg) return true; } #ifdef CONFIG_USER_ONLY - return true; + g_assert_not_reached(); #else TCGv addr =3D compute_ldst_addr_ea(dc, arg->ra, arg->rb); - return do_store(dc, arg->rd, addr, MO_UB, MMU_NOMMU_IDX, false); + gen_helper_sbea(tcg_env, reg_for_read(dc, arg->rd), addr); + return true; #endif } =20 @@ -949,10 +971,13 @@ static bool trans_shea(DisasContext *dc, arg_typea *a= rg) return true; } #ifdef CONFIG_USER_ONLY - return true; + g_assert_not_reached(); #else TCGv addr =3D compute_ldst_addr_ea(dc, arg->ra, arg->rb); - return do_store(dc, arg->rd, addr, MO_UW, MMU_NOMMU_IDX, false); + gen_alignment_check_ea(dc, addr, arg->rb, arg->rd, MO_16, true); + (mo_endian(dc) =3D=3D MO_BE ? gen_helper_shea_be : gen_helper_shea_le) + (tcg_env, reg_for_read(dc, arg->rd), addr); + return true; #endif } =20 @@ -980,10 +1005,13 @@ static bool trans_swea(DisasContext *dc, arg_typea *= arg) return true; } #ifdef CONFIG_USER_ONLY - return true; + g_assert_not_reached(); #else TCGv addr =3D compute_ldst_addr_ea(dc, arg->ra, arg->rb); - return do_store(dc, arg->rd, addr, MO_UL, MMU_NOMMU_IDX, false); + gen_alignment_check_ea(dc, addr, arg->rb, arg->rd, MO_32, true); + (mo_endian(dc) =3D=3D MO_BE ? gen_helper_swea_be : gen_helper_swea_le) + (tcg_env, reg_for_read(dc, arg->rd), addr); + return true; #endif } =20 --=20 2.43.0 From nobody Sat Nov 15 17:44:05 2025 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=linaro.org ARC-Seal: i=1; a=rsa-sha256; t=1748189027; cv=none; d=zohomail.com; s=zohoarc; b=KnyPSAdSpeT4a1JCXNcq/ktaF/kauK9kb9rxh3ACAN/IiNaVTLh1EmT9h5dLqMEOEiicd+tSVHb6nObEPZ49U6VAjPxSf1eQnmrMMdK3XPb1gADSFsNmxMx6yEUOZQDI2rQN9yApahJLyEpMhcYgbV2ZNPvfis+knIZoLEC9CWA= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1748189027; h=Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=CCPAc4kQVEvGGRVvJbn/l1McxSb2MHV9t9YV3lujsKc=; b=Bcr5IalWkpz6vKa6KxudSuKu/6s6Ot6iEnkObyS02Tb61ie9puB0nK/9gn7QqBpq90OnbUZcodz7zmm9lvHuZ4c7puG+H8XiraDgaMcBMdl36mk/151YZhNUfY8tnAljeDb1SoKbnEtpO0fZ78YDkuCIylPOljbDkRIPlBAcm8o= 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 1748189027684892.4498828546348; Sun, 25 May 2025 09:03:47 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1uJDoU-00027k-Ag; Sun, 25 May 2025 12:03:02 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1uJDo4-0001lW-QG for qemu-devel@nongnu.org; Sun, 25 May 2025 12:02:40 -0400 Received: from mail-wm1-x330.google.com ([2a00:1450:4864:20::330]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1uJDo2-00036F-2T for qemu-devel@nongnu.org; Sun, 25 May 2025 12:02:35 -0400 Received: by mail-wm1-x330.google.com with SMTP id 5b1f17b1804b1-442fda876a6so14907075e9.0 for ; Sun, 25 May 2025 09:02:33 -0700 (PDT) Received: from stoup.. ([195.53.115.74]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-447f73d4a3csm215772545e9.22.2025.05.25.09.02.31 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 25 May 2025 09:02:31 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1748188952; x=1748793752; 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=CCPAc4kQVEvGGRVvJbn/l1McxSb2MHV9t9YV3lujsKc=; b=Kk4mihk2YJmxVI6Bl9YBJonFDWCMAMU++XE0EJPDK40BOfT0Jh8upIXSHlRn+7f1As fL4OoJDHJ/sedqFT0MNZ923CN1SIRpXtmuYC9PYMu+eM/5+up5SYL3F2tM3EerQtjfwk zXn0AoVhbYSyuKy6/OgcC/UMtFfoXvmSBmPJUCKCvkFqvam/Ja8fidHDVUMsw49v3QMe 6M0kXcSLujguN4ssaiZKhncko9+lvu5sYiAQ+hl+gACud9L2gAflvf2THFA6A36G9sfd Zlq6icTGXOPBJ1q7/QdzAxiSGBkiX5jdm2mQZFCu8vE1qI5XHlLObH7f6rCNBaXcRgel 2NfQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1748188952; x=1748793752; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=CCPAc4kQVEvGGRVvJbn/l1McxSb2MHV9t9YV3lujsKc=; b=qm0dN3V6RqVZCoRuHjdNCKXM3CUTmZBw1s5l/RA8h3UljeJuCRoDyJpADZvO29mxfS dSZ2a7AEmqhx5qxvmhfdbanvreaS41qLy6HrTygfQQpYybIUnBnDm7vpsHAvh0a6iAhl f7ejqH6jfp5XtM3A0AQWXuzDxNHi31EVIA2MAAbcPBPuaCl9Yiq9nuNTXRQ7vaABhsJw QHdZ1nDdOXPHvFeZb9E8smNY+wrkgr1C4xHJWQy4UtjeNl6Jso1tRqT8af019T82C9N2 wsgHYoI5ZMnPKckJLvmGL4ddq7ibdERy1kLtgG2I+jFrZTWHdlGQF7jHHhRK+OojChyS wYxA== X-Gm-Message-State: AOJu0Yy4rTDepgkY1M+9YZCSHEOhraEPp0x+jVuBmLCu9mFXR71061g8 3FMSox8tPpfKWdP1g1W8ikPXwKatCLm0RT6VdFmg79xl7+AVPu+FtYfretisqs715XAindp+seS vy3wSqGQ= X-Gm-Gg: ASbGncttWu7SqIBiLZD+enhMHDbXgXE/lxNQVxJVvrLtvyRMZ2N7AXMBk8rqw098kqL HML+i4CDlZ80SmK+gp8Ezl5JHBhNco71JzOlRXNBVnagTyE55w5OkZN+Wn8uGlkxQd0MlfMhJk4 dneRyOhYCvrC8AYO7MTACasLVANgcPGmX8nzlsY9vau0b6WJowx9PZ1DCqn8r7uS65vZ8l6K7YP Rpf07ux3plQUL8Tgoa8Em0H8ZgpLQuzn0wPPOoDzbI9g2kEOIHbSjC2bC5ZGzuzZ0PUHusa/7jQ nyjW+goVRMOjAMq+gPnsnQ+IKaUSuptpsT/DDWMpbg//wSdvdo84AjAc X-Google-Smtp-Source: AGHT+IHsVaHxUHqGZy1/OlGJLqonUzQCqULeSxD0ZwafBUgNl+ixyCA6QyANHhpYysLAhSNeiIwIKw== X-Received: by 2002:a05:600c:8518:b0:43d:9f2:6274 with SMTP id 5b1f17b1804b1-44c91cd5123mr59877515e9.14.1748188952331; Sun, 25 May 2025 09:02:32 -0700 (PDT) From: Richard Henderson To: qemu-devel@nongnu.org Cc: edgar.iglesias@gmail.com, philmd@linaro.org Subject: [PATCH v2 05/10] target/microblaze: Use uint64_t for CPUMBState.ear Date: Sun, 25 May 2025 17:02:15 +0100 Message-ID: <20250525160220.222154-6-richard.henderson@linaro.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20250525160220.222154-1-richard.henderson@linaro.org> References: <20250525160220.222154-1-richard.henderson@linaro.org> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=2a00:1450:4864:20::330; envelope-from=richard.henderson@linaro.org; helo=mail-wm1-x330.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @linaro.org) X-ZM-MESSAGEID: 1748189029183116600 Content-Type: text/plain; charset="utf-8" Use an explicit 64-bit type for EAR. Signed-off-by: Richard Henderson Reviewed-by: Edgar E. Iglesias --- target/microblaze/cpu.h | 2 +- target/microblaze/translate.c | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/target/microblaze/cpu.h b/target/microblaze/cpu.h index 6ad8643f2e..3ce28b302f 100644 --- a/target/microblaze/cpu.h +++ b/target/microblaze/cpu.h @@ -248,7 +248,7 @@ struct CPUArchState { uint32_t pc; uint32_t msr; /* All bits of MSR except MSR[C] and MSR[CC] */ uint32_t msr_c; /* MSR[C], in low bit; other bits must be 0 */ - target_ulong ear; + uint64_t ear; uint32_t esr; uint32_t fsr; uint32_t btr; diff --git a/target/microblaze/translate.c b/target/microblaze/translate.c index 3d9756391e..b1fc9e5624 100644 --- a/target/microblaze/translate.c +++ b/target/microblaze/translate.c @@ -1857,7 +1857,7 @@ void mb_cpu_dump_state(CPUState *cs, FILE *f, int fla= gs) } =20 qemu_fprintf(f, "\nesr=3D0x%04x fsr=3D0x%02x btr=3D0x%08x edr=3D0x%x\n" - "ear=3D0x" TARGET_FMT_lx " slr=3D0x%x shr=3D0x%x\n", + "ear=3D0x%" PRIx64 " slr=3D0x%x shr=3D0x%x\n", env->esr, env->fsr, env->btr, env->edr, env->ear, env->slr, env->shr); =20 --=20 2.43.0 From nobody Sat Nov 15 17:44:05 2025 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=linaro.org ARC-Seal: i=1; a=rsa-sha256; t=1748189072; cv=none; d=zohomail.com; s=zohoarc; b=MDy1XjoVNBLmWfZIXwgbw6F83KvZckb9jjrobnrS7DGmpetrb6IFyDvjTIv8seZUkaICuJuM7FUyzv5Cgf28dQfUT495w31u4N0sDOV91HZJXHdqmtuti63/JG2ZrVrMPo6I7mibfNO5J8HPwDFa3vQvtS4HNu3RRNsmibdqE9U= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1748189072; h=Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=qePmWWXgxnxC8EgpTPJrdJSihex1YCPIe/WXpW/iZ68=; b=PT7SC8QbUQAE41VkkKBX/8eOnIMf1p0wrfEpNt5lKgnWOcYLPDD7YOWSFkC0j2U/P1ySm9fPVHb5KM/kEzSPvvzpvzeRZS8wQKvLnFD5tonyZ5XU7lnpusWuoEoiHmyufttNhowLIRlY1ovTakKqlCuk0bpjVY9nLHd4mh10Tcs= 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 1748189072289925.7061391948779; Sun, 25 May 2025 09:04:32 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1uJDoT-00025k-Ab; Sun, 25 May 2025 12:03:01 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1uJDo6-0001mf-J5 for qemu-devel@nongnu.org; Sun, 25 May 2025 12:02:40 -0400 Received: from mail-wm1-x330.google.com ([2a00:1450:4864:20::330]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1uJDo4-00036Z-JN for qemu-devel@nongnu.org; Sun, 25 May 2025 12:02:38 -0400 Received: by mail-wm1-x330.google.com with SMTP id 5b1f17b1804b1-441d1ed82dbso17636675e9.0 for ; Sun, 25 May 2025 09:02:35 -0700 (PDT) Received: from stoup.. ([195.53.115.74]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-447f73d4a3csm215772545e9.22.2025.05.25.09.02.32 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 25 May 2025 09:02:33 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1748188954; x=1748793754; 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=qePmWWXgxnxC8EgpTPJrdJSihex1YCPIe/WXpW/iZ68=; b=H/UwtqjncIN3h5/SVIpwEP/BLuSGikag6aHgg5go4AwuUdST9zTY6Z2J2bU7lhhP5j hLDpMWMdYiUfrqA1wveLwrlZsPZeNouspWEg8YryXudT5pSL/cLVS3cwLvP/ylsnjpXe 7QFNe/a1Yi24749s0HXrMPzzG5O5YP4YWONNuj9vfAIxVZOLTn01tA66wYbWWe/+1KNk 7s/v49y8pu1KJr2c0JacEoiTuXhwTNBZkuW5dAartVPzZytZqdj/jRI2+r5iiK9Z0FQL I+W59dShX/sXLk4VkTYya/+X8xvmlZroLcKhjs/bIX8504Mvo8EmpYLExToDkFuEpCsC SD1g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1748188954; x=1748793754; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=qePmWWXgxnxC8EgpTPJrdJSihex1YCPIe/WXpW/iZ68=; b=Beem3aJELzoRDGQAYYdGfUoSxsjSuiec1WPlNStQTwKpbrT4CM+K4gKCzXGPBwahnS +HFKnXVzr4WxsoQD6tkdO1sLlmMdgsTFJc0PLcAp14RhcW+KpENnfF1nn97URNWinpeN HVQry7WxqADfTlI6tpp/apLxze4SYNxGW+65PyfQX56Lo5AvsoSWMNd23qXejpp0xmLR I7IqJCvCofFJzDeEY4mVQVXQw/OtkKDipSHgkUOCLv/c/p2OksKWZsmqDyc/TUfte/Gi ksKQZN+VkceEaEZF1MExsWA8DlUjOX3eCHo9YgLf7YPi5y/2SEFIibsTa9ASmQqimTvY GnyQ== X-Gm-Message-State: AOJu0YyhMdcxoH8moaNtSITsV9+VRSPYnTcc7MKrzL0mf4u3gEo0jQx5 jX4XVqWJCtS/li0ghT9aNOFK5yxtdlqujrPQN62uG8s47sJRC5M5/Zo7xVLEuJIj0MxE5sNQlZF lfx0i5D8= X-Gm-Gg: ASbGncsvbMyai+k1MnKcp0+GA+7SVEgJ+ONdoWokrKnEuYTeP50k4KBabe1Rxu2HFmj /h2hZDGk9c2s2kD5P9Ol/OjoIQZqCrmVK42KfStjigaxkN+Cig70D0fV15RFS/O4StNq68AgyhY AGeHWusoqqSIeYBhK9LzdtBKI4HOh5BJ9xwS6qHPzsw8oddjyr6yksFQtCThmsW81P/ZMELlr3h +kD16qDuqG3tozjhPOEes5bxaEjFBrqLvYdSh52p2tD+T7xZRj7ApE8pq6dAilmMOgSlXT9gJ8f cDaLfgAH6yoxYebziACfDMBZBxYr8CzUwpzK4YdQVhcb/JY/MIg5NROO X-Google-Smtp-Source: AGHT+IF/wUJM2459oYMWgpblO3zNFpGXYEL7CD1f9mAWcEKlY+Y7AUOepIfgzS3mE/iPMn/6TVNI/g== X-Received: by 2002:a05:600c:4fcd:b0:43c:ec0a:ddfd with SMTP id 5b1f17b1804b1-44c91ad6abbmr49054965e9.6.1748188954343; Sun, 25 May 2025 09:02:34 -0700 (PDT) From: Richard Henderson To: qemu-devel@nongnu.org Cc: edgar.iglesias@gmail.com, philmd@linaro.org Subject: [PATCH v2 06/10] target/microblaze: Use TCGv_i64 for compute_ldst_addr_ea Date: Sun, 25 May 2025 17:02:16 +0100 Message-ID: <20250525160220.222154-7-richard.henderson@linaro.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20250525160220.222154-1-richard.henderson@linaro.org> References: <20250525160220.222154-1-richard.henderson@linaro.org> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=2a00:1450:4864:20::330; envelope-from=richard.henderson@linaro.org; helo=mail-wm1-x330.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @linaro.org) X-ZM-MESSAGEID: 1748189073742116600 Content-Type: text/plain; charset="utf-8" Use an explicit 64-bit type for extended addresses. Signed-off-by: Richard Henderson Reviewed-by: Edgar E. Iglesias --- target/microblaze/translate.c | 24 ++++++++++++------------ 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/target/microblaze/translate.c b/target/microblaze/translate.c index b1fc9e5624..dc597b36e6 100644 --- a/target/microblaze/translate.c +++ b/target/microblaze/translate.c @@ -660,23 +660,23 @@ static TCGv compute_ldst_addr_typeb(DisasContext *dc,= int ra, int imm) } =20 #ifndef CONFIG_USER_ONLY -static TCGv compute_ldst_addr_ea(DisasContext *dc, int ra, int rb) +static TCGv_i64 compute_ldst_addr_ea(DisasContext *dc, int ra, int rb) { int addr_size =3D dc->cfg->addr_size; - TCGv ret =3D tcg_temp_new(); + TCGv_i64 ret =3D tcg_temp_new_i64(); =20 if (addr_size =3D=3D 32 || ra =3D=3D 0) { if (rb) { - tcg_gen_extu_i32_tl(ret, cpu_R[rb]); + tcg_gen_extu_i32_i64(ret, cpu_R[rb]); } else { - tcg_gen_movi_tl(ret, 0); + return tcg_constant_i64(0); } } else { if (rb) { tcg_gen_concat_i32_i64(ret, cpu_R[rb], cpu_R[ra]); } else { - tcg_gen_extu_i32_tl(ret, cpu_R[ra]); - tcg_gen_shli_tl(ret, ret, 32); + tcg_gen_extu_i32_i64(ret, cpu_R[ra]); + tcg_gen_shli_i64(ret, ret, 32); } if (addr_size < 64) { /* Mask off out of range bits. */ @@ -781,7 +781,7 @@ static bool trans_lbuea(DisasContext *dc, arg_typea *ar= g) #ifdef CONFIG_USER_ONLY g_assert_not_reached(); #else - TCGv addr =3D compute_ldst_addr_ea(dc, arg->ra, arg->rb); + TCGv_i64 addr =3D compute_ldst_addr_ea(dc, arg->ra, arg->rb); gen_helper_lbuea(reg_for_write(dc, arg->rd), tcg_env, addr); return true; #endif @@ -813,7 +813,7 @@ static bool trans_lhuea(DisasContext *dc, arg_typea *ar= g) #ifdef CONFIG_USER_ONLY g_assert_not_reached(); #else - TCGv addr =3D compute_ldst_addr_ea(dc, arg->ra, arg->rb); + TCGv_i64 addr =3D compute_ldst_addr_ea(dc, arg->ra, arg->rb); gen_alignment_check_ea(dc, addr, arg->rb, arg->rd, MO_16, false); (mo_endian(dc) =3D=3D MO_BE ? gen_helper_lhuea_be : gen_helper_lhuea_l= e) (reg_for_write(dc, arg->rd), tcg_env, addr); @@ -847,7 +847,7 @@ static bool trans_lwea(DisasContext *dc, arg_typea *arg) #ifdef CONFIG_USER_ONLY g_assert_not_reached(); #else - TCGv addr =3D compute_ldst_addr_ea(dc, arg->ra, arg->rb); + TCGv_i64 addr =3D compute_ldst_addr_ea(dc, arg->ra, arg->rb); gen_alignment_check_ea(dc, addr, arg->rb, arg->rd, MO_32, false); (mo_endian(dc) =3D=3D MO_BE ? gen_helper_lwea_be : gen_helper_lwea_le) (reg_for_write(dc, arg->rd), tcg_env, addr); @@ -941,7 +941,7 @@ static bool trans_sbea(DisasContext *dc, arg_typea *arg) #ifdef CONFIG_USER_ONLY g_assert_not_reached(); #else - TCGv addr =3D compute_ldst_addr_ea(dc, arg->ra, arg->rb); + TCGv_i64 addr =3D compute_ldst_addr_ea(dc, arg->ra, arg->rb); gen_helper_sbea(tcg_env, reg_for_read(dc, arg->rd), addr); return true; #endif @@ -973,7 +973,7 @@ static bool trans_shea(DisasContext *dc, arg_typea *arg) #ifdef CONFIG_USER_ONLY g_assert_not_reached(); #else - TCGv addr =3D compute_ldst_addr_ea(dc, arg->ra, arg->rb); + TCGv_i64 addr =3D compute_ldst_addr_ea(dc, arg->ra, arg->rb); gen_alignment_check_ea(dc, addr, arg->rb, arg->rd, MO_16, true); (mo_endian(dc) =3D=3D MO_BE ? gen_helper_shea_be : gen_helper_shea_le) (tcg_env, reg_for_read(dc, arg->rd), addr); @@ -1007,7 +1007,7 @@ static bool trans_swea(DisasContext *dc, arg_typea *a= rg) #ifdef CONFIG_USER_ONLY g_assert_not_reached(); #else - TCGv addr =3D compute_ldst_addr_ea(dc, arg->ra, arg->rb); + TCGv_i64 addr =3D compute_ldst_addr_ea(dc, arg->ra, arg->rb); gen_alignment_check_ea(dc, addr, arg->rb, arg->rd, MO_32, true); (mo_endian(dc) =3D=3D MO_BE ? gen_helper_swea_be : gen_helper_swea_le) (tcg_env, reg_for_read(dc, arg->rd), addr); --=20 2.43.0 From nobody Sat Nov 15 17:44:05 2025 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=linaro.org ARC-Seal: i=1; a=rsa-sha256; t=1748189008; cv=none; d=zohomail.com; s=zohoarc; b=OSDaFQubVCS8MJ36c5sdgje+dwnUIt0ghVkikkK3q5sJaFFJOHRPDAR0u3IdXPEwzQ6fDhlkQVZozgUXEOrsT7qlEJnB51GRX52WhYSA3+bVCL4ocGrHWTSPx6yIu5Fk+ORNl4VG8TpGY5bkXQ/Fuv2sXsDyzRmbJvKNqs5aJTc= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1748189008; h=Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=QrsiPPIKs9uqNggfC2fgEnSDXqetMhiV3VJ4jE1p+tM=; b=jGwvgsdIww3N6r8md6sBVV2EO6Vq3bPracvSMmYcI/jDoVYYyJE6tE0vfwtkYuL6Q5MXXN4JhPWlvVwNOFBgMRyuFiflo+y7HrPhCfFJ7m/pAkpV0dUbb3qZCN9hD+eUXGqs6xUW6TSPuxa0QwLESC3gp524iEWsVoAkT0HR2c8= 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 1748189008519645.2852331151975; Sun, 25 May 2025 09:03:28 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1uJDoB-0001t0-DQ; Sun, 25 May 2025 12:02:44 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1uJDo7-0001mg-5V for qemu-devel@nongnu.org; Sun, 25 May 2025 12:02:40 -0400 Received: from mail-wm1-x32a.google.com ([2a00:1450:4864:20::32a]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1uJDo5-00036h-LJ for qemu-devel@nongnu.org; Sun, 25 May 2025 12:02:38 -0400 Received: by mail-wm1-x32a.google.com with SMTP id 5b1f17b1804b1-44b1f5b917fso8607945e9.3 for ; Sun, 25 May 2025 09:02:37 -0700 (PDT) Received: from stoup.. ([195.53.115.74]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-447f73d4a3csm215772545e9.22.2025.05.25.09.02.34 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 25 May 2025 09:02:35 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1748188956; x=1748793756; 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=QrsiPPIKs9uqNggfC2fgEnSDXqetMhiV3VJ4jE1p+tM=; b=ryuA5q0fwezoJBOiwpAJaQmFW/bwFzh9E4oszvF4qe4+uOQC147/XstAE81Xu1/W4v xujnGOLEON2A+sS5ePIEZrmnowQRSUannXW4wUEnZYRN7vjBbjNRmCikUVKmKlfE4rQR 77XNMsYL4THGqOdt3Qs0Ty0BJJusOGe0GX/6v55hX7NsTnxlBrXMShtwppuCRQeicqUk /w7KZvxziQH/FQZ0zzovNgu10AmnBDPUI0btodw3jAbGOSfbsvrFbPQNByyou5cL5OsR c3tLIpuLsPhCLpjtfwOyPWVwr5aiIuDKuZrIaYR8fBdZ9YTblDGZ+lQnWuFOchWo6OK3 Hxwg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1748188956; x=1748793756; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=QrsiPPIKs9uqNggfC2fgEnSDXqetMhiV3VJ4jE1p+tM=; b=w8TSilZj62e8Fmk0IPW5qbpIjuwEZLtAjNjm+IIjZKTvFYXs1IhqTwjqy1VEy4GPmW 7HrpZ5Z5o0XAazg4kFUVRqX5nlMokjNhkHZxFTT/L0npmwESTdk5eTPJ5QE0+0vvC74r VaWbU0OHpSWeJnIk5fD4Qj6n9FFzyEvL3bIh5aupYfB0TKZ9ytM8/XM7VfyJUY9qgZXy lrhe8N7vwhxQ1fwNFp+aVFWd3nAI+uxHQhQxMiAsVi3NPyVhZhBxu0T50Gzdi8N1dCt7 vbBah/uA2cTe1wWVU+B68NFgu2khK3mfGSFbwx0QiPY3UZPJuoq8X7rpUATOUeIRHuc4 Gx/Q== X-Gm-Message-State: AOJu0YwnQN/lyf2pEJnR2cedddUYV8cVtxPNKCWwGVc7jK+PX8/VegcF P4Eg0kHYkP9wGoI7CTisOrArsp8bzEMhoncPgTarJzV+gokua6NjA436QyPPKbZu/u0uqSB/zwM fGmmO8a0= X-Gm-Gg: ASbGncvBNfbftvF7IDy9gSiFxnlHtikOiftLiW4/RsjvjNi86aaRbLdZaLfmvPnXZ1H vm5Qpss64VGpkVK8LtvbPW7AEzKkqRsC+u0Ul8QVkhmgYHFDVl19NxQ5opiKx0CVqaw/MQXta5i uCu6DW7RPwQnKNHH1b477xm4XLRaVScCc7Iyrkk15yN9VjEZ1yrm5IivvWejcSmPUTqbEJKJ3h8 o1VRIpZaQ2CyVK6uieqgrONfEgLik7KIjJO3XEtWzzp2ZJES7BybbrVQjEbay8LuTEQaqbOEc6x bsllF6KkBGIGo7oKFcgDbpbfAm6nbwCmYCyYkrZMWai/A63Qrzvw4mBu X-Google-Smtp-Source: AGHT+IFMEunXKctrHeJnpbl6Fx4vn8IPv32kFL1QL1JZIhk1CTBV9DMLZoa99IRwbrb0+Y1pdSI7ow== X-Received: by 2002:adf:e381:0:b0:3a4:cbbd:6345 with SMTP id ffacd0b85a97d-3a4cbbd64bcmr3397468f8f.13.1748188956001; Sun, 25 May 2025 09:02:36 -0700 (PDT) From: Richard Henderson To: qemu-devel@nongnu.org Cc: edgar.iglesias@gmail.com, philmd@linaro.org Subject: [PATCH v2 07/10] target/microblaze: Fix printf format in mmu_translate Date: Sun, 25 May 2025 17:02:17 +0100 Message-ID: <20250525160220.222154-8-richard.henderson@linaro.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20250525160220.222154-1-richard.henderson@linaro.org> References: <20250525160220.222154-1-richard.henderson@linaro.org> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=2a00:1450:4864:20::32a; envelope-from=richard.henderson@linaro.org; helo=mail-wm1-x32a.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @linaro.org) X-ZM-MESSAGEID: 1748189010877116600 Content-Type: text/plain; charset="utf-8" Use TARGET_FMT_lx to match the target_ulong type of vaddr. Signed-off-by: Richard Henderson Reviewed-by: Edgar E. Iglesias --- target/microblaze/mmu.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/target/microblaze/mmu.c b/target/microblaze/mmu.c index 95a12e16f8..8703ff5c65 100644 --- a/target/microblaze/mmu.c +++ b/target/microblaze/mmu.c @@ -172,7 +172,8 @@ unsigned int mmu_translate(MicroBlazeCPU *cpu, MicroBla= zeMMULookup *lu, } done: qemu_log_mask(CPU_LOG_MMU, - "MMU vaddr=3D%" PRIx64 " rw=3D%d tlb_wr=3D%d tlb_ex=3D%d= hit=3D%d\n", + "MMU vaddr=3D0x" TARGET_FMT_lx + " rw=3D%d tlb_wr=3D%d tlb_ex=3D%d hit=3D%d\n", vaddr, rw, tlb_wr, tlb_ex, hit); return hit; } --=20 2.43.0 From nobody Sat Nov 15 17:44:05 2025 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=linaro.org ARC-Seal: i=1; a=rsa-sha256; t=1748189009; cv=none; d=zohomail.com; s=zohoarc; b=ARA6PoEMRREqIOwDV7BM5mbEV9CqPY0wYSZG3TCAVcHHFpsKaKVbvvlemqKVDEXi5F4k4+PwvK6TMHMecg6d+ysLJ2bluuIgl7R9WCG9BsvUIEcyAIqyes6vJQjzuhWTvUijLRSJGwFQexT3nHcDafwEgZ+cqwHRTq44M7BQ1Pk= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1748189009; h=Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=gQn6nujfDXJziLVy4jFPVSDzZo2UJbaBzGcbgRQnjJU=; b=HPNidVKdw6HRxXIyG/42zYSzpGyVlbky9yYcHK1dy0JBnn0cFNbzxJ6SWq/qfubYNXzEANYglv+7m9p57V0xXt0I47Bx2k8a20O084Ep1Q22FyJvS5zlkQhcs0U2B6z5hgHtDT60NuohR+52yNFEZ60VHRgB843Yk+7evdjwUbE= 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 1748189009432906.4208850469457; Sun, 25 May 2025 09:03:29 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1uJDoK-000201-J9; Sun, 25 May 2025 12:02:53 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1uJDo9-0001pd-55 for qemu-devel@nongnu.org; Sun, 25 May 2025 12:02:41 -0400 Received: from mail-wm1-x330.google.com ([2a00:1450:4864:20::330]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1uJDo7-00037P-GW for qemu-devel@nongnu.org; Sun, 25 May 2025 12:02:40 -0400 Received: by mail-wm1-x330.google.com with SMTP id 5b1f17b1804b1-442f5b3c710so14753125e9.1 for ; Sun, 25 May 2025 09:02:39 -0700 (PDT) Received: from stoup.. ([195.53.115.74]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-447f73d4a3csm215772545e9.22.2025.05.25.09.02.36 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 25 May 2025 09:02:36 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1748188958; x=1748793758; 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=gQn6nujfDXJziLVy4jFPVSDzZo2UJbaBzGcbgRQnjJU=; b=PZPEefaJnr5EdNnxJ8jod2N6nPwHC9eU2NTvMIZu11JNFEC++UC7gdI+Sk6LFXHtBT 10LJ2ApOgApPXhz9lBt4p1YfWewHBXkfXci1tDsX+cxljPXb027oagIV7h4WOfqP/XEi F/8PaewSJpAlEeM5i+74ZJ7tFO2suWG6IY/BiJhbun9G5F7I8Z3NyaWcgitBn43mkHiF 3RT5l5i3X1j4RlCUGnrobk0Ob0sYwssGmHBpwQ6oScpiO1yfiX7bh3Bzu4AV3+6kHogh LwzW9fo/iAkx0FGo9LzgxedtNRLPWOKR88kOIefd3qFXOpP8h0JZVvcqzV9zRY9L1H8P jM7Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1748188958; x=1748793758; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=gQn6nujfDXJziLVy4jFPVSDzZo2UJbaBzGcbgRQnjJU=; b=wVzQoY9Wpu33Q5wFQolRSXZ8t3s0lbwWFgJvuw4F8sMGxBivlHaXBKFjWmI2bbgc4W Hq56uuT1pEJe/ClUb5im/bcPmdqO99rw9bGLktQHt48tWtNBVtlp7vBZWb/cHYpeFntR 9lhKAX9NEajhctHMIKRsqTzAyzR5gT803VPMEzs6z8awz+gC44XwUTxK8LjK0JcAHdI7 yXi+1lUWH5LTpSGf9ZbCN1ysS0EAr9kTapQz9iT+9mz85nGvQakWK1EDctR+vgZ6pM/u nYLhmPIrOg7PzjAJhO11YHQfPXvWASvJTXrPFudIKLa9B7gEmSP1Dwerp9dhb6zGe8Pl FISg== X-Gm-Message-State: AOJu0YwtPVSirxlfT4NevBUJyTtU4eFFoIIZpQHm6VQjKAZQ9XDEQVOS 0feI0lnfU7TDBo4Wog7wV5hbysunhDvIpwel3wQnYyyRSkoW5zbpLmB7IQywzOTbrfoYocO4Mob xYJDUHR0= X-Gm-Gg: ASbGncsuTMeW8BYolk+4Ni2QVsGgaJVe/bKWNcex8JACxKKTdxx5cVByJxCK2a8f6M3 la/3ByBHwHp+g71vxbIs/OG8q8WgxLbTJtjtIY0C9xvPYO722D76Ek/bQ0gQzwN67ayAqWkduyf wYSStOJXA4dj4LrxiVsf9AeK0fxWdI9tQ07nrFIaeiDuWHgySKxK28q76JW1KO1IceB1sYBG5vi Wv93b5rrBZat+8XnY9c9d2sPyDaWkJe/807kdO6mRrk+5eCsU+NyweaMlBFZP5ykuQm0MHbtfJL cFR1iGVCNuksnoWSehv83C1SbGAvq5/RXgn2yplF8G4eZxmFXihNiRZL X-Google-Smtp-Source: AGHT+IEI2Wnh+hLBuUAu6qaKL4PJLChM+Hzmv8sJreBjs9OuyxU19XJ1mlX9bDQF/axqCeiirjDbkg== X-Received: by 2002:a05:600c:1d0d:b0:43c:f44c:72a6 with SMTP id 5b1f17b1804b1-44c9160702fmr60834985e9.2.1748188958114; Sun, 25 May 2025 09:02:38 -0700 (PDT) From: Richard Henderson To: qemu-devel@nongnu.org Cc: edgar.iglesias@gmail.com, philmd@linaro.org Subject: [PATCH v2 08/10] target/microblaze: Use TARGET_LONG_BITS == 32 for system mode Date: Sun, 25 May 2025 17:02:18 +0100 Message-ID: <20250525160220.222154-9-richard.henderson@linaro.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20250525160220.222154-1-richard.henderson@linaro.org> References: <20250525160220.222154-1-richard.henderson@linaro.org> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=2a00:1450:4864:20::330; envelope-from=richard.henderson@linaro.org; helo=mail-wm1-x330.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @linaro.org) X-ZM-MESSAGEID: 1748189010959116600 Content-Type: text/plain; charset="utf-8" Now that the extended address instructions are handled separately from virtual addresses, we can narrow the emulation to 32-bit. Signed-off-by: Richard Henderson Reviewed-by: Edgar E. Iglesias --- configs/targets/microblaze-softmmu.mak | 4 +--- configs/targets/microblazeel-softmmu.mak | 4 +--- 2 files changed, 2 insertions(+), 6 deletions(-) diff --git a/configs/targets/microblaze-softmmu.mak b/configs/targets/micro= blaze-softmmu.mak index 23457d0ae6..bab7b498c2 100644 --- a/configs/targets/microblaze-softmmu.mak +++ b/configs/targets/microblaze-softmmu.mak @@ -3,6 +3,4 @@ TARGET_BIG_ENDIAN=3Dy # needed by boot.c TARGET_NEED_FDT=3Dy TARGET_XML_FILES=3Dgdb-xml/microblaze-core.xml gdb-xml/microblaze-stack-pr= otect.xml -# System mode can address up to 64 bits via lea/sea instructions. -# TODO: These bypass the mmu, so we could emulate these differently. -TARGET_LONG_BITS=3D64 +TARGET_LONG_BITS=3D32 diff --git a/configs/targets/microblazeel-softmmu.mak b/configs/targets/mic= roblazeel-softmmu.mak index c82c509623..8aee7ebc5c 100644 --- a/configs/targets/microblazeel-softmmu.mak +++ b/configs/targets/microblazeel-softmmu.mak @@ -2,6 +2,4 @@ TARGET_ARCH=3Dmicroblaze # needed by boot.c TARGET_NEED_FDT=3Dy TARGET_XML_FILES=3Dgdb-xml/microblaze-core.xml gdb-xml/microblaze-stack-pr= otect.xml -# System mode can address up to 64 bits via lea/sea instructions. -# TODO: These bypass the mmu, so we could emulate these differently. -TARGET_LONG_BITS=3D64 +TARGET_LONG_BITS=3D32 --=20 2.43.0 From nobody Sat Nov 15 17:44:05 2025 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=linaro.org ARC-Seal: i=1; a=rsa-sha256; t=1748189027; cv=none; d=zohomail.com; s=zohoarc; b=hDYKgkmLtA2iVLazngHGmO8nMqrzjLbXQ+ZO1Hy86CyC0d1lxQX+twpTdpjo0gVF1fHfFAx6RVMTzXBiwC4Y+43NmJMTkhSo+sEQAyHQz0jHui8wQQus4+bGVoLZ68tvGziFqWhuTxxhISgbBVTM9KGcWy+9jTrX92DIAbs1QWo= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1748189027; h=Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=3z8i6F7kymnU0LwN0DeHuQEwxf48sA9XDGghzhBVGcM=; b=MadTI6p4ELJIR0bF/MyI0I6JDe1zYcUzBcZrV/tgp8Qoge9l9jvsutCNcTQKfi/CDm9MePX7VpUJaXd7E/RtNQHXmNnBo+YfcrCjXnSM9mn9HFbGyRGP9C7MNXUN20PfISg4I3mI5ynTSu6w8P+IwsWUBGcjWfE9z8wDA9kgMc4= 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 17481890278621020.6224923694027; Sun, 25 May 2025 09:03:47 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1uJDoU-00028g-Oe; Sun, 25 May 2025 12:03:02 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1uJDoA-0001sn-UP for qemu-devel@nongnu.org; Sun, 25 May 2025 12:02:43 -0400 Received: from mail-wm1-x336.google.com ([2a00:1450:4864:20::336]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1uJDo9-00038c-99 for qemu-devel@nongnu.org; Sun, 25 May 2025 12:02:42 -0400 Received: by mail-wm1-x336.google.com with SMTP id 5b1f17b1804b1-441d1ed82faso11186115e9.0 for ; Sun, 25 May 2025 09:02:40 -0700 (PDT) Received: from stoup.. ([195.53.115.74]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-447f73d4a3csm215772545e9.22.2025.05.25.09.02.38 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 25 May 2025 09:02:38 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1748188959; x=1748793759; 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=3z8i6F7kymnU0LwN0DeHuQEwxf48sA9XDGghzhBVGcM=; b=H5oJLQSW84F/cOfyoi32qJShah4CT1j/orWF5NtpZHRBSOgV4z5Ag3SNOhWvGjYaaL uAL6xEVtPdL7OYuyTEkqyVLmbYJQQMcnaQlYmCYcm8r7MJ616zNeBf5TSxN8qHzHveLi VZ3y0ycY6mOdJpkeb2yojo2wFRtTMjHx1R1Maa24GAW/B2k7Fo9Ls/ag/nhZAwRDn1Z/ P8F4qvVcuBk7i0AM82cGTqzbdoJST2YaIGt7wX2i/4C6YHio3oGaFoUtxd9MrOiVtynV UEDZafLIOBmwI9HRqJ3OFp6DKNjW5t+gCVb/Iyr1BRRKOKntvkcXCiZ0LUXvXdvGwM2q t7nw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1748188959; x=1748793759; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=3z8i6F7kymnU0LwN0DeHuQEwxf48sA9XDGghzhBVGcM=; b=NEdb+2lqGybi05LBoH+iy9qUUeqORs9APhQNaxiX6H/rxPGJkp5FWnJQKemkPIYVVT o9pzbkYMQPmuyKvfd8UVj3/37tmDvDQ+k/rA/1Kr5vJyQITRcG/CLmqASSO2/EF5migb xJQZev/YCWBV6WLpbaEy/taQJK+cb7KoDxUIhiMZHILjEoU2b3S98XpSr5Zpb5NSTxGT C1Wus9LFzdL1csEaLyND1zZ1MfxP42ZCHqwsWlgbvuersZAVLEWreA0XlW4BJGY8fVsg vR9OTTDgbC56o1MYmpGt9btCmcDc5OSLXWK3wsEF4CX1MDoOEorJG/NQpHUVZRf+E0wT NUuw== X-Gm-Message-State: AOJu0YzDvBf09Go/sGWvnhIXlKYZkJbzM3XHzo98D5qGHybcEL/HlIVQ mquW/i/5XeRQSiASNvqLJHKlnXFu2VwX28Lx7UgPT2dfOrUDNTROUyWW0/8ULzm7CMAjhYWLsB2 uVJ52VFs= X-Gm-Gg: ASbGncsMW9V4EYNZgE5VTq7AsiH98VQ3qLj/Sg/LzOc+IugSCobJigxvZ1cwQlAg0T1 mG0oxrDT0PD5Qx3kdgCFnYdmecb4gtIY8FurLH33/lSmbL0Fi0DC+cxDJshrYfXNxKMWaLQsmmI bO/uxT+k258jtIIzwg/1g8+4xxtTdJYEh2+kU28orIPNgtR7HiKojwcwrh3GzlWJXCZ3Jz6QH/i 1oLIe2H1IPqmoQStPVGxp7i4Ml9mIf6HVAfWfiWY2JxbfbGrseINTJgSwVbudqLk2+T1TVXzkJV a5ap47mcC1dDb356/1T16eFduWsWI7ZSAg0RjVOtpsseiTUOuro2WORi X-Google-Smtp-Source: AGHT+IFocV0yokKkb0W9gKPEx0CGAgb2fOO25aufHGjMixHEOswguxserhXcAHksHxSaYST8S3HK3A== X-Received: by 2002:a05:600c:1f18:b0:43d:4e9:27f3 with SMTP id 5b1f17b1804b1-44c935dd80dmr51511815e9.9.1748188959528; Sun, 25 May 2025 09:02:39 -0700 (PDT) From: Richard Henderson To: qemu-devel@nongnu.org Cc: edgar.iglesias@gmail.com, philmd@linaro.org Subject: [PATCH v2 09/10] target/microblaze: Drop DisasContext.r0 Date: Sun, 25 May 2025 17:02:19 +0100 Message-ID: <20250525160220.222154-10-richard.henderson@linaro.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20250525160220.222154-1-richard.henderson@linaro.org> References: <20250525160220.222154-1-richard.henderson@linaro.org> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=2a00:1450:4864:20::336; envelope-from=richard.henderson@linaro.org; helo=mail-wm1-x336.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @linaro.org) X-ZM-MESSAGEID: 1748189029187116600 Content-Type: text/plain; charset="utf-8" Return a constant 0 from reg_for_read, and a new temporary from reg_for_write. Signed-off-by: Richard Henderson Reviewed-by: Edgar E. Iglesias --- target/microblaze/translate.c | 24 ++---------------------- 1 file changed, 2 insertions(+), 22 deletions(-) diff --git a/target/microblaze/translate.c b/target/microblaze/translate.c index dc597b36e6..047d97e2c5 100644 --- a/target/microblaze/translate.c +++ b/target/microblaze/translate.c @@ -63,9 +63,6 @@ typedef struct DisasContext { DisasContextBase base; const MicroBlazeCPUConfig *cfg; =20 - TCGv_i32 r0; - bool r0_set; - /* Decoder. */ uint32_t ext_imm; unsigned int tb_flags; @@ -179,14 +176,7 @@ static TCGv_i32 reg_for_read(DisasContext *dc, int reg) if (likely(reg !=3D 0)) { return cpu_R[reg]; } - if (!dc->r0_set) { - if (dc->r0 =3D=3D NULL) { - dc->r0 =3D tcg_temp_new_i32(); - } - tcg_gen_movi_i32(dc->r0, 0); - dc->r0_set =3D true; - } - return dc->r0; + return tcg_constant_i32(0); } =20 static TCGv_i32 reg_for_write(DisasContext *dc, int reg) @@ -194,10 +184,7 @@ static TCGv_i32 reg_for_write(DisasContext *dc, int re= g) if (likely(reg !=3D 0)) { return cpu_R[reg]; } - if (dc->r0 =3D=3D NULL) { - dc->r0 =3D tcg_temp_new_i32(); - } - return dc->r0; + return tcg_temp_new_i32(); } =20 static bool do_typea(DisasContext *dc, arg_typea *arg, bool side_effects, @@ -1635,8 +1622,6 @@ static void mb_tr_init_disas_context(DisasContextBase= *dcb, CPUState *cs) dc->cfg =3D &cpu->cfg; dc->tb_flags =3D dc->base.tb->flags; dc->ext_imm =3D dc->base.tb->cs_base; - dc->r0 =3D NULL; - dc->r0_set =3D false; dc->mem_index =3D cpu_mmu_index(cs, false); dc->jmp_cond =3D dc->tb_flags & D_FLAG ? TCG_COND_ALWAYS : TCG_COND_NE= VER; dc->jmp_dest =3D -1; @@ -1675,11 +1660,6 @@ static void mb_tr_translate_insn(DisasContextBase *d= cb, CPUState *cs) trap_illegal(dc, true); } =20 - if (dc->r0) { - dc->r0 =3D NULL; - dc->r0_set =3D false; - } - /* Discard the imm global when its contents cannot be used. */ if ((dc->tb_flags & ~dc->tb_flags_to_set) & IMM_FLAG) { tcg_gen_discard_i32(cpu_imm); --=20 2.43.0 From nobody Sat Nov 15 17:44:05 2025 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=fail; 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=fail(p=none dis=none) header.from=linaro.org Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1748189009566267.4711123593273; Sun, 25 May 2025 09:03:29 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1uJDoW-0002B9-Pf; Sun, 25 May 2025 12:03:04 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1uJDoC-0001wY-RJ for qemu-devel@nongnu.org; Sun, 25 May 2025 12:02:44 -0400 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 1uJDoA-00038u-Pm for qemu-devel@nongnu.org; Sun, 25 May 2025 12:02:44 -0400 Received: by mail-wm1-x32f.google.com with SMTP id 5b1f17b1804b1-44b1ff82597so13672935e9.3 for ; Sun, 25 May 2025 09:02:42 -0700 (PDT) Received: from stoup.. ([195.53.115.74]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-447f73d4a3csm215772545e9.22.2025.05.25.09.02.39 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 25 May 2025 09:02:40 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1748188961; x=1748793761; 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=dgSJN1ppHGjsT9JgPnrurYdg7bW60fCBF3+cvS+Ghsc=; b=WMChrVLSW4nt2P3nbe4XCzea7fGcrYP6Ohgfi3jrYaPO7e9df5haGS/l9qvhCJnUKg MALy4KXK4eTtPv26sMzAFnth7N1aOt0EyNBl8LPEZNdmdsAi5nudoQm2FdyUlfXwWv0L TXiasUj75E0AuRnZKEjRoF8qxFNb0dpgFVMFLifKPJnpfHkL4sBGUh6cZEnZ0mAsj57w 7JFnVRLDcjOH6fCmc24uQZUh13/ENzWqjRHPQiHHue0PCtRamrHhIddSMKP11RJpoJxm RV1GEMNCK2FLx5KAZNTJXBmMp8eOuzs1Tm5G3zL9cX6jKWJu153fLWd5633E9WzrSwEw V3Dw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1748188961; x=1748793761; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=dgSJN1ppHGjsT9JgPnrurYdg7bW60fCBF3+cvS+Ghsc=; b=JMf8x37jnsdsSGPy/OSKG2Zl0Aps1dkkJRdy0jNs+Zo/6AZgVxOo34VzMq/4EzOW5A 3O/+//Qmv2xodfrc/LtR3tqxPn8NKbSh79d1JvFANFXYqIAlaYBBfgFsm3R7j/ucziT0 4BhPYb5OZCoS77h0SIV2RlM6BgGQ7zuSTBXZDZWS6RLTpaS1gyJvaCV7ExbGjSfJjjgv Ml/HNlVbwazMryi0G3dDRa4g0V9NVPtnitXcQ5VizJ3Hs2ju6k8xNJINKLAM6Ea/txEf yX4GgiNo8sJtadFMLjtRfS2PfQfLrJQaXPlnlV07qzUNnzr7uKBuLBGDYAg+mDzU5E2r zl2Q== X-Gm-Message-State: AOJu0Yy9pI8jig8ntPjmFczPfZ468xzmsE91OiIPSoOE+Mze434Vj3oj UDclbftgA6rUqrL79bRHsJCpU26PGq7qbLH+9B2C2liBXPAMMCsJjykzJqfGP6yPosKdfz9ADLK 40DWO/OY= X-Gm-Gg: ASbGncu/MjuvLmjdfEq9vYsvD84ltmFfRxs24L8POMCeMsK/eqswJ3EDiLNk6MIh+jt CDUV23IiSbi3MbXY6GMEA9lsEdDfjsXT9HlxA4NbgsTUslsKwZMDeuO/4RTijDHpkP91j27DI/F OLFVuEu5xXt7MKtH8LfO8/bHk4mlbFiUnYjq9TXTnr1fThMKRBKjHk6aC0P9l9/7YQ8N5m4umAd GAyAvNDbh/BVhiQRqZJXfIjgSwWcc+xGoFyi+5Hqefc/SvyBqO8U6f++4ARmxRz2828D1anUCiP 3V+l5hodTUH8WwVAu+lj6tk8wGVigvrwzAgvkAOeo/rlQHIcgrqFl4oydY+ZH7KSwNY= X-Google-Smtp-Source: AGHT+IEdaGaZ/8xXQYowS5TQjfRMVy1N4wewhAl196DVyIU9rGR9VA7nBMVwR8+KLMSb4gpOh2X5HA== X-Received: by 2002:a05:600c:8518:b0:43d:9f2:6274 with SMTP id 5b1f17b1804b1-44c91cd5123mr59883715e9.14.1748188961024; Sun, 25 May 2025 09:02:41 -0700 (PDT) From: Richard Henderson To: qemu-devel@nongnu.org Cc: edgar.iglesias@gmail.com, philmd@linaro.org Subject: [PATCH v2 10/10] target/microblaze: Simplify compute_ldst_addr_type{a, b} Date: Sun, 25 May 2025 17:02:20 +0100 Message-ID: <20250525160220.222154-11-richard.henderson@linaro.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20250525160220.222154-1-richard.henderson@linaro.org> References: <20250525160220.222154-1-richard.henderson@linaro.org> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=2a00:1450:4864:20::32f; envelope-from=richard.henderson@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=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: fail (Header signature does not verify) X-ZM-MESSAGEID: 1748189010952116600 Content-Type: text/plain; charset="utf-8" Require TCGv_i32 and TCGv be identical, so drop the extensions. Return constants when possible instead of a mov into a temporary. Return register inputs unchanged when possible. Signed-off-by: Richard Henderson Reviewed-by: Edgar E. Iglesias --- target/microblaze/translate.c | 26 +++++++++++++------------- 1 file changed, 13 insertions(+), 13 deletions(-) diff --git a/target/microblaze/translate.c b/target/microblaze/translate.c index 047d97e2c5..5098a1db4d 100644 --- a/target/microblaze/translate.c +++ b/target/microblaze/translate.c @@ -606,19 +606,18 @@ DO_TYPEBI(xori, false, tcg_gen_xori_i32) =20 static TCGv compute_ldst_addr_typea(DisasContext *dc, int ra, int rb) { - TCGv ret =3D tcg_temp_new(); + TCGv ret; =20 /* If any of the regs is r0, set t to the value of the other reg. */ if (ra && rb) { - TCGv_i32 tmp =3D tcg_temp_new_i32(); - tcg_gen_add_i32(tmp, cpu_R[ra], cpu_R[rb]); - tcg_gen_extu_i32_tl(ret, tmp); + ret =3D tcg_temp_new_i32(); + tcg_gen_add_i32(ret, cpu_R[ra], cpu_R[rb]); } else if (ra) { - tcg_gen_extu_i32_tl(ret, cpu_R[ra]); + ret =3D cpu_R[ra]; } else if (rb) { - tcg_gen_extu_i32_tl(ret, cpu_R[rb]); + ret =3D cpu_R[rb]; } else { - tcg_gen_movi_tl(ret, 0); + ret =3D tcg_constant_i32(0); } =20 if ((ra =3D=3D 1 || rb =3D=3D 1) && dc->cfg->stackprot) { @@ -629,15 +628,16 @@ static TCGv compute_ldst_addr_typea(DisasContext *dc,= int ra, int rb) =20 static TCGv compute_ldst_addr_typeb(DisasContext *dc, int ra, int imm) { - TCGv ret =3D tcg_temp_new(); + TCGv ret; =20 /* If any of the regs is r0, set t to the value of the other reg. */ - if (ra) { - TCGv_i32 tmp =3D tcg_temp_new_i32(); - tcg_gen_addi_i32(tmp, cpu_R[ra], imm); - tcg_gen_extu_i32_tl(ret, tmp); + if (ra && imm) { + ret =3D tcg_temp_new_i32(); + tcg_gen_addi_i32(ret, cpu_R[ra], imm); + } else if (ra) { + ret =3D cpu_R[ra]; } else { - tcg_gen_movi_tl(ret, (uint32_t)imm); + ret =3D tcg_constant_i32(imm); } =20 if (ra =3D=3D 1 && dc->cfg->stackprot) { --=20 2.43.0