From patchwork Sun May 25 16:02:12 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Richard Henderson X-Patchwork-Id: 892461 Delivered-To: patch@linaro.org Received: by 2002:a5d:6e53:0:b0:3a3:61c9:c5d4 with SMTP id j19csp839902wrz; Sun, 25 May 2025 09:03:30 -0700 (PDT) X-Forwarded-Encrypted: i=2; AJvYcCXM5hXUaQUyuwWOIdMPVXD/QBO/8TjDGH7Hul9fKpY0Dk6AhNm6mZN+wq4ntXTn1FFMD3wpjQ==@linaro.org X-Google-Smtp-Source: AGHT+IGZKPlItxeuwqrfbOnmQSeBhH7rrrdXSUV95mNVKQkv7weXcylkC3tEwnIY6nXSSmVfZfja X-Received: by 2002:a05:6e02:2701:b0:3d9:6485:39f0 with SMTP id e9e14a558f8ab-3dc9b6a9e4emr50671625ab.9.1748189010687; Sun, 25 May 2025 09:03:30 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1748189010; cv=none; d=google.com; s=arc-20240605; b=Plw+7rLNM0Eq4pAUDX0prPFNNCZEY4Wogdr9G7ixRD4eJkJ2y/2k+AZfS5qxQPPLxa M4PMdiyEbWKO/Gmo6y4n41h1l25gJGxJtPGru31zFSbYO0phAojyuBIRW6f7paTdXBgn udheMANFRVMS0tdfUKKalLYuI/f8r1bDaDy8qi7D9w5dSie126vmlioD/nvBloijnMmx ZzMxPcs/PJSpRBH1WLINkexva9d9YQ0ZtC7wKeO/OJG73h00musJ+EET92dOB2sATooH E/2fs7/2L+1QsDXz3pz+Atgvtcup+ln6UOkXpPHKO7kuvLSUREKULWZgZ29eCwCDRYs0 TPtA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20240605; h=sender:errors-to:list-subscribe:list-help:list-post:list-archive :list-unsubscribe:list-id:precedence:content-transfer-encoding :mime-version:references:in-reply-to:message-id:date:subject:cc:to :from:dkim-signature; bh=F/r6BR4u92dVav+xdpPWvNWTLbsmjFwEOJ+5r16ZoMU=; fh=8mBO+FwhNjUD9ALhUxcYEwIlwc/hLQI6+6+QuDX34lg=; b=eG70milxkGUA9rj4wjrI/E5M8nnbU1oGgyl7SXlQG8Nw+4ebGWajdG3VlWkm6cAQ+K O5dhsM4bfn9out/7GI8HX1DOeQV4P2+5oeVslsm4Pc/8kd2Xk7fqTBEQC6RD1gzW6Zah DKIGPVzI39VvWW+deAHaUC4l42MOwTxZyJBLlCwvhebBdPAJjqNbdmnUYhJCJC1SDLSH MOLZo0L1ugQLSXMXRgizvYNtoxLmCLYkElpjluPCWyb9LYgT/s8JaM6AgWS5eN0LEq/J MM1noFO4WTxXD9heKAYqvGSWwHDpk26dDPijQdgjZ4pCEiFH6X5Pk4FZE4YHgyLBJjsn roFA==; dara=google.com ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=K17YbPMk; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org; dara=neutral header.i=@linaro.org Return-Path: Received: from lists.gnu.org (lists.gnu.org. [209.51.188.17]) by mx.google.com with ESMTPS id 8926c6da1cb9f-4fbcc3bd7b3si17531856173.55.2025.05.25.09.03.30 for (version=TLS1_2 cipher=ECDHE-ECDSA-CHACHA20-POLY1305 bits=256/256); Sun, 25 May 2025 09:03:30 -0700 (PDT) Received-SPF: pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; Authentication-Results: mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=K17YbPMk; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org; dara=neutral header.i=@linaro.org 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) 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-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) 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) 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 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+patch=linaro.org@nongnu.org Sender: qemu-devel-bounces+patch=linaro.org@nongnu.org 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, i32, i32) DEF_HELPER_FLAGS_3(fcmp_ge, TCG_CALL_NO_WG, i32, env, i32, i32) 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" G_NORETURN @@ -64,6 +65,12 @@ void mb_cpu_do_unaligned_access(CPUState *cs, vaddr addr, } #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) {