From nobody Sat May 4 23:35:41 2024 Delivered-To: importer@patchew.org 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; 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=1576534420; cv=none; d=zohomail.com; s=zohoarc; b=LuUqJhM5NFVVrrcFq6WxfxwYeeX57QEaZ0DA0iWO157ieIShLHm+d+B4Tx5Ku6kBQPNtIjw03D/UcEngv6wEBEDzx7MBmk45J+djwCTZrS65Fyy3gocR6eJ4ZzqZ47PskOFLR3idxUOp8vGw/ECNfbGMVGk3uf065oMKOs2cjMQ= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1576534420; h=Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=mkGQo9JLGR6e+tkSUmklU8FYrD77VgZJcPg0K42unB0=; b=ktk+zK9SHlPPjNtpPx3WIZh3QCnODxJ4asdTyDdTw7eLOKA/dV/NDEiCv/4p5otiAACbzwU0peq1nz2uouYYCunNjNPrRrDeP7jx/Q2ODj//2Y+5UNF45uvdjz+eyPwgM2r6RLAj3yVrZHEP1SBn/+rKM6hclUs+5/eLT9QmbBY= 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) header.from= Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 15765344208421015.3143289484285; Mon, 16 Dec 2019 14:13:40 -0800 (PST) Received: from localhost ([::1]:60622 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1igycU-0006K8-5P for importer@patchew.org; Mon, 16 Dec 2019 17:13:38 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:36573) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1igyb0-0004l7-84 for qemu-devel@nongnu.org; Mon, 16 Dec 2019 17:12:07 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1igyaz-0006ux-56 for qemu-devel@nongnu.org; Mon, 16 Dec 2019 17:12:05 -0500 Received: from mail-pf1-x442.google.com ([2607:f8b0:4864:20::442]:33246) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1igyaz-0006uM-09 for qemu-devel@nongnu.org; Mon, 16 Dec 2019 17:12:05 -0500 Received: by mail-pf1-x442.google.com with SMTP id y206so6391479pfb.0 for ; Mon, 16 Dec 2019 14:12:04 -0800 (PST) Received: from localhost.localdomain ([2605:e000:c74f:dc00:6838:d2b2:17e2:8445]) by smtp.gmail.com with ESMTPSA id d6sm529767pjl.8.2019.12.16.14.12.02 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 16 Dec 2019 14:12:03 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=mkGQo9JLGR6e+tkSUmklU8FYrD77VgZJcPg0K42unB0=; b=ZBNnvLPc3i/1x2D21xmEqk2Y0xOIwQ3QoZVxwjkpg6uHJmNsz6ogUhm5qgovjNao2Q DuUDp++WaI7lviLQ7EfApsaKyDjkR/9Ssvs40eXPUaRBALOWQI1KkGr8EZjf7QoqwYUz TJNEv0ZONze7XUVmIY3qRh9Nw1DL3VICtzJ370oWEO+Fo0BOs6If7GvWJK5fH+UuD9BG CcVoiRtge2De1DpEdINLVi5b7gByoJAUWniEjAJH437teDQ/dp0Xqswxm1SZ+4Tj2nCe mA1BNr8RLamBHLnBLPy6JGb6slR30DjJqibQJ2u4CKpwEEjp5RHY9qoY7Cqlw5DrxZ5P 8krg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=mkGQo9JLGR6e+tkSUmklU8FYrD77VgZJcPg0K42unB0=; b=DPZYeW1wq1zfr48iOT5qWbgMgMzVGeU7zo6cleBRhJNsqdmA88GkoOYQ9+J8Gkg+KE yL4ndgTPy8XVNmdfQJY+9G/H9rZ3iKjw3aRKy08koyo5xCiPSMMyInP1Qs2VY8enbpbP O0GzNpeDw5ocOxmIbId1/j5unEl7UyIAUHbquNGRKyDNORdyflwWIbFoTb+UBorH72Ht RF48yGq9MPYjtZJXO0WClna6p3hUpRirruIJ7rSet9s9EvG+a9Hl+ELaZbKrMrCVBUA5 ni0vWTJ3y8xm7jllqxfXpPdfFa9L0HUCbVAojYbdNzJx+yxvxG24PVxV8AcYA02p7uv8 UvXQ== X-Gm-Message-State: APjAAAURLRWOkgKru1a430DAXgumkSC6ykKa9BvXbhVjPqIdLt1Fflv9 0tL7PJhVQBqY+3Ee/f5kwfkiNpnrQXg= X-Google-Smtp-Source: APXvYqw5SerGq1TVHD77BdfSZwC65r4VM/DDx/rwiBUZNxDB3U4LLwRDgfXlmFv3SomGA8ILe4Wi5A== X-Received: by 2002:aa7:8a88:: with SMTP id a8mr18783531pfc.224.1576534323719; Mon, 16 Dec 2019 14:12:03 -0800 (PST) From: Richard Henderson To: qemu-devel@nongnu.org Subject: [PATCH v2 01/28] target/xtensa: Use probe_access for itlb_hit_test Date: Mon, 16 Dec 2019 12:11:31 -1000 Message-Id: <20191216221158.29572-2-richard.henderson@linaro.org> X-Mailer: git-send-email 2.20.1 In-Reply-To: <20191216221158.29572-1-richard.henderson@linaro.org> References: <20191216221158.29572-1-richard.henderson@linaro.org> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2607:f8b0:4864:20::442 X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Max Filippov Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: pass (identity @linaro.org) Content-Type: text/plain; charset="utf-8" We don't actually need the result of the read, only to probe that the memory mapping exists. This is exactly what probe_access does. This is also the only user of any cpu_ld*_code_ra function. Removing this allows the interface to be removed shortly. Acked-by: Max Filippov Signed-off-by: Richard Henderson Reviewed-by: Alex Benn=C3=A9e Reviewed-by: Philippe Mathieu-Daud=C3=A9 --- target/xtensa/mmu_helper.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/target/xtensa/mmu_helper.c b/target/xtensa/mmu_helper.c index f15bff306f..b01ff9399a 100644 --- a/target/xtensa/mmu_helper.c +++ b/target/xtensa/mmu_helper.c @@ -63,10 +63,11 @@ void HELPER(itlb_hit_test)(CPUXtensaState *env, uint32_t vaddr) { /* - * Attempt the memory load; we don't care about the result but + * Probe the memory; we don't care about the result but * only the side-effects (ie any MMU or other exception) */ - cpu_ldub_code_ra(env, vaddr, GETPC()); + probe_access(env, vaddr, 1, MMU_INST_FETCH, + cpu_mmu_index(env, true), GETPC()); } =20 void HELPER(wsr_rasid)(CPUXtensaState *env, uint32_t v) --=20 2.20.1 From nobody Sat May 4 23:35:41 2024 Delivered-To: importer@patchew.org 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; 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=1576534437; cv=none; d=zohomail.com; s=zohoarc; b=OJSBlLyQiNfZKPOM6QIh8IQb/MyzPrdTplajk0m//iJN84dUW/L196uQl8R3MZ6UozlTaTN8FkzzvEowphVWro4Ojmtj2RJFosrb6+1Vq4FNbg9x8CVoZnBoap1NObeam81DCT8fGm3RtkuH0a/bz2et1hQVTDR8a5LR9E28YCQ= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1576534437; h=Content-Transfer-Encoding:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=L1jHeOFQAeKhXPKxXaTdBBGGRizQ9egD6BUcKiL091Y=; b=biQ9ei7vlE0DhB8gO3lhDIAT15/rB99eY6HCRyoicauWW/vtXez5muHAMQsIU1taCMkMuuL5rM5S0abyaYq2WdaDH1Awj+tXAhLXkamzgBZP2D+D4CUDkA7dj85lMwNTac4lboT1nkVcN16TCXvyLQKFiqtNitSKc+wrpPMO80M= 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) header.from= Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 15765344373271016.2927318258955; Mon, 16 Dec 2019 14:13:57 -0800 (PST) Received: from localhost ([::1]:60626 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1igycl-0006Tc-J6 for importer@patchew.org; Mon, 16 Dec 2019 17:13:55 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:36597) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1igyb2-0004lE-Ea for qemu-devel@nongnu.org; Mon, 16 Dec 2019 17:12:09 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1igyb1-0006ve-3I for qemu-devel@nongnu.org; Mon, 16 Dec 2019 17:12:08 -0500 Received: from mail-pl1-x62f.google.com ([2607:f8b0:4864:20::62f]:36998) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1igyb0-0006vF-Te for qemu-devel@nongnu.org; Mon, 16 Dec 2019 17:12:07 -0500 Received: by mail-pl1-x62f.google.com with SMTP id c23so5121793plz.4 for ; Mon, 16 Dec 2019 14:12:06 -0800 (PST) Received: from localhost.localdomain ([2605:e000:c74f:dc00:6838:d2b2:17e2:8445]) by smtp.gmail.com with ESMTPSA id d6sm529767pjl.8.2019.12.16.14.12.03 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 16 Dec 2019 14:12:04 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=from:to:subject:date:message-id:in-reply-to:references:mime-version :content-transfer-encoding; bh=L1jHeOFQAeKhXPKxXaTdBBGGRizQ9egD6BUcKiL091Y=; b=eifVvz6eHqww7voesCY7JTeZsXZHcK2Zo15G/oQBKE7qX2LkmRwuVv0yNpv1gdVwd9 XDFNP2jdfl/WrZ/0C+64+vbbe7pX2IR8KcY5OUMny3XJxbx4891BomgIaNQ4T30EcVHp s3gOQkol14QT1UL8kC+V5fTZR0i6JooCi8Np1A/D4yF6wtKnL8bRg0rrj3R7kOVZcX64 Xzvxdk9x3M0w+s87kwN3hbYbGIgwgC4+eJk7v6TG1/dfkcP0wK7GsqTxAM+Or1LNz+W1 7ZOrlDfCrhDn31I2HfxvKnLIS8iQbni0rnhXEfu+6l8D1XVUJ3KMb7zpqZbIN4xqSMkl 2URQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=L1jHeOFQAeKhXPKxXaTdBBGGRizQ9egD6BUcKiL091Y=; b=njLxPFo2j5TsTvpTxaWQvgVEpC+BdOsKy0gSylTCngRza55JiagaXEPuL+3i9ZAbxf 0gQ9GDytK0slPvJgTcBZUoURMUWe5uJuiDIZMUAGctJnTcHnDY3+9HSm9nCdzze6qQmL a9DYuEKaphzyGWP8FyjAzpqXxDJNRZM4sf6tBGziR+5xTUhzwHKUWDqW0YBffl2laOnI bEvKvZLNFhmB/PePbyR2wvR+oyqFVOD5FzI4lxpYmP1xvxJw/iIHixtV/0uh5yZxtVmy BkfK1VOEMnC2GmyxePPtIezib/5d1qj13PJ9rd8UGWZPxheKpKTMyIqpkjC6WRURKv3Q +HQQ== X-Gm-Message-State: APjAAAU/nLqyr6NeT7tangyvt8u1qb+buxTTIwTNsyEb9H0aWfMztxLs jyvfsi4nQu+N0LyVOeF6PpuC9nDh79w= X-Google-Smtp-Source: APXvYqy/nYD+ZeGgth9tx0UPbmWeZO0avXuqC3syiPE0n4r9tFyPwg0r6U1rXWXIhQknwMspd0RDvw== X-Received: by 2002:a17:90a:c697:: with SMTP id n23mr1873320pjt.37.1576534325190; Mon, 16 Dec 2019 14:12:05 -0800 (PST) From: Richard Henderson To: qemu-devel@nongnu.org Subject: [PATCH v2 02/28] cputlb: Use trace_mem_get_info instead of trace_mem_build_info Date: Mon, 16 Dec 2019 12:11:32 -1000 Message-Id: <20191216221158.29572-3-richard.henderson@linaro.org> X-Mailer: git-send-email 2.20.1 In-Reply-To: <20191216221158.29572-1-richard.henderson@linaro.org> References: <20191216221158.29572-1-richard.henderson@linaro.org> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2607:f8b0:4864:20::62f X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 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" X-ZohoMail-DKIM: pass (identity @linaro.org) Content-Type: text/plain; charset="utf-8" In the cpu_ldst templates, we already require a MemOp, and it is cleaner and clearer to pass that instead of 3 separate arguments describing the memory operation. Signed-off-by: Richard Henderson Reviewed-by: Alex Benn=C3=A9e Reviewed-by: Philippe Mathieu-Daud=C3=A9 --- include/exec/cpu_ldst_template.h | 22 +++++++++++----------- include/exec/cpu_ldst_useronly_template.h | 12 ++++++------ 2 files changed, 17 insertions(+), 17 deletions(-) diff --git a/include/exec/cpu_ldst_template.h b/include/exec/cpu_ldst_templ= ate.h index 54b5e858ce..0ad5de3ef9 100644 --- a/include/exec/cpu_ldst_template.h +++ b/include/exec/cpu_ldst_template.h @@ -86,9 +86,9 @@ glue(glue(glue(cpu_ld, USUFFIX), MEMSUFFIX), _ra)(CPUArch= State *env, RES_TYPE res; target_ulong addr; int mmu_idx =3D CPU_MMU_INDEX; - TCGMemOpIdx oi; + MemOp op =3D MO_TE | SHIFT; #if !defined(SOFTMMU_CODE_ACCESS) - uint16_t meminfo =3D trace_mem_build_info(SHIFT, false, MO_TE, false, = mmu_idx); + uint16_t meminfo =3D trace_mem_get_info(op, mmu_idx, false); trace_guest_mem_before_exec(env_cpu(env), ptr, meminfo); #endif =20 @@ -96,9 +96,9 @@ glue(glue(glue(cpu_ld, USUFFIX), MEMSUFFIX), _ra)(CPUArch= State *env, entry =3D tlb_entry(env, mmu_idx, addr); if (unlikely(entry->ADDR_READ !=3D (addr & (TARGET_PAGE_MASK | (DATA_SIZE - 1))))) { - oi =3D make_memop_idx(SHIFT, mmu_idx); + TCGMemOpIdx oi =3D make_memop_idx(op, mmu_idx); res =3D glue(glue(helper_ret_ld, URETSUFFIX), MMUSUFFIX)(env, addr, - oi, retaddr); + oi, retaddr= ); } else { uintptr_t hostaddr =3D addr + entry->addend; res =3D glue(glue(ld, USUFFIX), _p)((uint8_t *)hostaddr); @@ -125,9 +125,9 @@ glue(glue(glue(cpu_lds, SUFFIX), MEMSUFFIX), _ra)(CPUAr= chState *env, int res; target_ulong addr; int mmu_idx =3D CPU_MMU_INDEX; - TCGMemOpIdx oi; -#if !defined(SOFTMMU_CODE_ACCESS) - uint16_t meminfo =3D trace_mem_build_info(SHIFT, true, MO_TE, false, m= mu_idx); + MemOp op =3D MO_TE | MO_SIGN | SHIFT; +#ifndef SOFTMMU_CODE_ACCESS + uint16_t meminfo =3D trace_mem_get_info(op, mmu_idx, false); trace_guest_mem_before_exec(env_cpu(env), ptr, meminfo); #endif =20 @@ -135,7 +135,7 @@ glue(glue(glue(cpu_lds, SUFFIX), MEMSUFFIX), _ra)(CPUAr= chState *env, entry =3D tlb_entry(env, mmu_idx, addr); if (unlikely(entry->ADDR_READ !=3D (addr & (TARGET_PAGE_MASK | (DATA_SIZE - 1))))) { - oi =3D make_memop_idx(SHIFT, mmu_idx); + TCGMemOpIdx oi =3D make_memop_idx(op & ~MO_SIGN, mmu_idx); res =3D (DATA_STYPE)glue(glue(helper_ret_ld, SRETSUFFIX), MMUSUFFIX)(env, addr, oi, retaddr); } else { @@ -167,9 +167,9 @@ glue(glue(glue(cpu_st, SUFFIX), MEMSUFFIX), _ra)(CPUArc= hState *env, CPUTLBEntry *entry; target_ulong addr; int mmu_idx =3D CPU_MMU_INDEX; - TCGMemOpIdx oi; + MemOp op =3D MO_TE | SHIFT; #if !defined(SOFTMMU_CODE_ACCESS) - uint16_t meminfo =3D trace_mem_build_info(SHIFT, false, MO_TE, true, m= mu_idx); + uint16_t meminfo =3D trace_mem_get_info(op, mmu_idx, true); trace_guest_mem_before_exec(env_cpu(env), ptr, meminfo); #endif =20 @@ -177,7 +177,7 @@ glue(glue(glue(cpu_st, SUFFIX), MEMSUFFIX), _ra)(CPUArc= hState *env, entry =3D tlb_entry(env, mmu_idx, addr); if (unlikely(tlb_addr_write(entry) !=3D (addr & (TARGET_PAGE_MASK | (DATA_SIZE - 1))))) { - oi =3D make_memop_idx(SHIFT, mmu_idx); + TCGMemOpIdx oi =3D make_memop_idx(op, mmu_idx); glue(glue(helper_ret_st, SUFFIX), MMUSUFFIX)(env, addr, v, oi, retaddr); } else { diff --git a/include/exec/cpu_ldst_useronly_template.h b/include/exec/cpu_l= dst_useronly_template.h index dbdc7a845d..e5a3d1983a 100644 --- a/include/exec/cpu_ldst_useronly_template.h +++ b/include/exec/cpu_ldst_useronly_template.h @@ -70,8 +70,8 @@ glue(glue(cpu_ld, USUFFIX), MEMSUFFIX)(CPUArchState *env,= abi_ptr ptr) ret =3D glue(glue(ld, USUFFIX), _p)(g2h(ptr)); clear_helper_retaddr(); #else - uint16_t meminfo =3D trace_mem_build_info(SHIFT, false, MO_TE, false, - MMU_USER_IDX); + MemOp op =3D MO_TE | SHIFT; + uint16_t meminfo =3D trace_mem_get_info(op, MMU_USER_IDX, false); trace_guest_mem_before_exec(env_cpu(env), ptr, meminfo); ret =3D glue(glue(ld, USUFFIX), _p)(g2h(ptr)); #endif @@ -102,8 +102,8 @@ glue(glue(cpu_lds, SUFFIX), MEMSUFFIX)(CPUArchState *en= v, abi_ptr ptr) ret =3D glue(glue(lds, SUFFIX), _p)(g2h(ptr)); clear_helper_retaddr(); #else - uint16_t meminfo =3D trace_mem_build_info(SHIFT, true, MO_TE, false, - MMU_USER_IDX); + MemOp op =3D MO_TE | MO_SIGN | SHIFT; + uint16_t meminfo =3D trace_mem_get_info(op, MMU_USER_IDX, false); trace_guest_mem_before_exec(env_cpu(env), ptr, meminfo); ret =3D glue(glue(lds, SUFFIX), _p)(g2h(ptr)); qemu_plugin_vcpu_mem_cb(env_cpu(env), ptr, meminfo); @@ -131,8 +131,8 @@ static inline void glue(glue(cpu_st, SUFFIX), MEMSUFFIX)(CPUArchState *env, abi_ptr ptr, RES_TYPE v) { - uint16_t meminfo =3D trace_mem_build_info(SHIFT, false, MO_TE, true, - MMU_USER_IDX); + MemOp op =3D MO_TE | SHIFT; + uint16_t meminfo =3D trace_mem_get_info(op, MMU_USER_IDX, true); trace_guest_mem_before_exec(env_cpu(env), ptr, meminfo); glue(glue(st, SUFFIX), _p)(g2h(ptr), v); qemu_plugin_vcpu_mem_cb(env_cpu(env), ptr, meminfo); --=20 2.20.1 From nobody Sat May 4 23:35:41 2024 Delivered-To: importer@patchew.org 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; 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=1576534438; cv=none; d=zohomail.com; s=zohoarc; b=cbyxS+wZD930YBYGLW4aD8s5ftS/jtwXkmJu0kX30bDxZyyqr3WktaqXZV+a2v64Sif+QcROc9xUgOTa2xtLCG9Elg+4IELuNbrIzRHfoYdrRwfkM3cgcFfWFPZzDFup9x/Hlt87VfT/Y8shYBdCywvDlf5nExVuE2iFajM816w= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1576534438; h=Content-Transfer-Encoding:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=RS/kUrwws8zXejELfRCwC8ziQ//v3quP81JyrfoDA60=; b=gtP8/nOc6o/zG4BAzh9/2iQgyUID3ZfvPjl46e6lCORQTunRzRp4g2KQ/8+2RJtMUe/R3MK9JtOZCXBwnFiHeVF+Ay/ijEHEgXzp/wuEHv5+tOAEbAaEJFiRIVr+qW+12vnhKjWTqre4mFsGt/Fsq1xPTRQRNC3AmrDpYyrM24I= 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) header.from= Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1576534438953546.9017136329401; Mon, 16 Dec 2019 14:13:58 -0800 (PST) Received: from localhost ([::1]:60630 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1igycn-0006Wc-7e for importer@patchew.org; Mon, 16 Dec 2019 17:13:57 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:36617) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1igyb3-0004mC-S4 for qemu-devel@nongnu.org; Mon, 16 Dec 2019 17:12:11 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1igyb2-0006wW-Dq for qemu-devel@nongnu.org; Mon, 16 Dec 2019 17:12:09 -0500 Received: from mail-pl1-x62c.google.com ([2607:f8b0:4864:20::62c]:40472) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1igyb2-0006wL-5j for qemu-devel@nongnu.org; Mon, 16 Dec 2019 17:12:08 -0500 Received: by mail-pl1-x62c.google.com with SMTP id g6so5111448plp.7 for ; Mon, 16 Dec 2019 14:12:08 -0800 (PST) Received: from localhost.localdomain ([2605:e000:c74f:dc00:6838:d2b2:17e2:8445]) by smtp.gmail.com with ESMTPSA id d6sm529767pjl.8.2019.12.16.14.12.05 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 16 Dec 2019 14:12:05 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=from:to:subject:date:message-id:in-reply-to:references:mime-version :content-transfer-encoding; bh=RS/kUrwws8zXejELfRCwC8ziQ//v3quP81JyrfoDA60=; b=BtctEVPBfOrzanvikFEs/BY2dC9eQw7rbaheEolEp09XX20azf9Ut/VIMfEw+wF4zj 4rdjfzd7uXoKUMcsZFEvmaLe1muItu6uQ2eRUpS3m4v3IDU3sp5mSb4nUNRrpTdbBbZm 2Ob1bSldsD7xqmZL1V/dX09o8ZdjK6jxSuJQtjRHI95F4pfi6/utScoTx5NO3D0OuoRd TdMYTtyN2tkZCN41wWRlfimdcTR6PXWqGyMWF+Cf+Xy03UCROI/TDgP2JzAkKnXyS36c jm/jfEw2vP8BepnctywdRrQg6m7owMz3H5woln2md2Ihtm/cyn8Eod/6UnjrvBIl8n2l +JBA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=RS/kUrwws8zXejELfRCwC8ziQ//v3quP81JyrfoDA60=; b=V/FxHGlRACbN/DPU6OPp4Uu33Z7kOsLgILRar9v94/sLpF63+hxoKfrifTjZp0DW7/ XpxDOhf2+pyG2enyOtv3+pYuAUyBTCsP3905cXjb7YvTb+lsk38W/V4pzRSmtaWwJSMa 7d9wpI0+s9URSvU2qcNedW/5FUZKSWY3x/4z595db68tNJEoV7tsnK1EYqOWR7sB8ix8 ffTnJM9H7uw+hrAKUBK4Rgdc/FGQ33jGfzhZXFjULVDfhSWZ/JB0OtptHFu9cpd1NP06 Db30aSUNIEyduBmyEg/DJaAp6kcW/tubLi/xWunFpl2FTtlfqN67q9ugOP8HVPo6ZqNh mC8g== X-Gm-Message-State: APjAAAXYYkHCG1CCXl6GkhrgPvQWdZb7tuQXSDruDsV3SlVReCRIDGE1 3LRHjZ83WYbScxWjMYCqlZdzsPNYGQ0= X-Google-Smtp-Source: APXvYqwDbKLBnvhhq3o/3Z/grsujlm8YqgRbNOLXptcMKl1hWSFnbzLjVCT3PdMfyLgniNOlPnbK/A== X-Received: by 2002:a17:90a:fb87:: with SMTP id cp7mr1978705pjb.56.1576534326518; Mon, 16 Dec 2019 14:12:06 -0800 (PST) From: Richard Henderson To: qemu-devel@nongnu.org Subject: [PATCH v2 03/28] trace: Remove trace_mem_build_info_no_se_[bl]e Date: Mon, 16 Dec 2019 12:11:33 -1000 Message-Id: <20191216221158.29572-4-richard.henderson@linaro.org> X-Mailer: git-send-email 2.20.1 In-Reply-To: <20191216221158.29572-1-richard.henderson@linaro.org> References: <20191216221158.29572-1-richard.henderson@linaro.org> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2607:f8b0:4864:20::62c X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 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" X-ZohoMail-DKIM: pass (identity @linaro.org) Content-Type: text/plain; charset="utf-8" It is easy for the atomic helpers to use trace_mem_build_info directly, without resorting to symbol pasting. For this usage, we cannot use trace_mem_get_info, because the MemOp does not support 16-byte accesses. Signed-off-by: Richard Henderson Reviewed-by: Alex Benn=C3=A9e --- accel/tcg/atomic_template.h | 67 +++++++++++++------------------------ trace/mem-internal.h | 17 ---------- 2 files changed, 24 insertions(+), 60 deletions(-) diff --git a/accel/tcg/atomic_template.h b/accel/tcg/atomic_template.h index 837676231f..26969487d6 100644 --- a/accel/tcg/atomic_template.h +++ b/accel/tcg/atomic_template.h @@ -64,13 +64,10 @@ the ATOMIC_NAME macro, and redefined below. */ #if DATA_SIZE =3D=3D 1 # define END -# define MEND _be /* either le or be would be fine */ #elif defined(HOST_WORDS_BIGENDIAN) # define END _be -# define MEND _be #else # define END _le -# define MEND _le #endif =20 ABI_TYPE ATOMIC_NAME(cmpxchg)(CPUArchState *env, target_ulong addr, @@ -79,8 +76,8 @@ ABI_TYPE ATOMIC_NAME(cmpxchg)(CPUArchState *env, target_u= long addr, ATOMIC_MMU_DECLS; DATA_TYPE *haddr =3D ATOMIC_MMU_LOOKUP; DATA_TYPE ret; - uint16_t info =3D glue(trace_mem_build_info_no_se, MEND)(SHIFT, false, - ATOMIC_MMU_IDX); + uint16_t info =3D trace_mem_build_info(SHIFT, false, 0, false, + ATOMIC_MMU_IDX); =20 atomic_trace_rmw_pre(env, addr, info); #if DATA_SIZE =3D=3D 16 @@ -99,8 +96,8 @@ ABI_TYPE ATOMIC_NAME(ld)(CPUArchState *env, target_ulong = addr EXTRA_ARGS) { ATOMIC_MMU_DECLS; DATA_TYPE val, *haddr =3D ATOMIC_MMU_LOOKUP; - uint16_t info =3D glue(trace_mem_build_info_no_se, MEND)(SHIFT, false, - ATOMIC_MMU_IDX); + uint16_t info =3D trace_mem_build_info(SHIFT, false, 0, false, + ATOMIC_MMU_IDX); =20 atomic_trace_ld_pre(env, addr, info); val =3D atomic16_read(haddr); @@ -114,8 +111,8 @@ void ATOMIC_NAME(st)(CPUArchState *env, target_ulong ad= dr, { ATOMIC_MMU_DECLS; DATA_TYPE *haddr =3D ATOMIC_MMU_LOOKUP; - uint16_t info =3D glue(trace_mem_build_info_no_se, MEND)(SHIFT, true, - ATOMIC_MMU_IDX); + uint16_t info =3D trace_mem_build_info(SHIFT, false, 0, true, + ATOMIC_MMU_IDX); =20 atomic_trace_st_pre(env, addr, info); atomic16_set(haddr, val); @@ -130,8 +127,8 @@ ABI_TYPE ATOMIC_NAME(xchg)(CPUArchState *env, target_ul= ong addr, ATOMIC_MMU_DECLS; DATA_TYPE *haddr =3D ATOMIC_MMU_LOOKUP; DATA_TYPE ret; - uint16_t info =3D glue(trace_mem_build_info_no_se, MEND)(SHIFT, false, - ATOMIC_MMU_IDX); + uint16_t info =3D trace_mem_build_info(SHIFT, false, 0, false, + ATOMIC_MMU_IDX); =20 atomic_trace_rmw_pre(env, addr, info); ret =3D atomic_xchg__nocheck(haddr, val); @@ -147,10 +144,8 @@ ABI_TYPE ATOMIC_NAME(X)(CPUArchState *env, target_ulon= g addr, \ ATOMIC_MMU_DECLS; \ DATA_TYPE *haddr =3D ATOMIC_MMU_LOOKUP; \ DATA_TYPE ret; \ - uint16_t info =3D glue(trace_mem_build_info_no_se, MEND)(SHIFT, \ - false, \ - ATOMIC_MMU_IDX)= ; \ - \ + uint16_t info =3D trace_mem_build_info(SHIFT, false, 0, false, \ + ATOMIC_MMU_IDX); \ atomic_trace_rmw_pre(env, addr, info); \ ret =3D atomic_##X(haddr, val); \ ATOMIC_MMU_CLEANUP; \ @@ -183,10 +178,8 @@ ABI_TYPE ATOMIC_NAME(X)(CPUArchState *env, target_ulon= g addr, \ ATOMIC_MMU_DECLS; \ XDATA_TYPE *haddr =3D ATOMIC_MMU_LOOKUP; \ XDATA_TYPE cmp, old, new, val =3D xval; \ - uint16_t info =3D glue(trace_mem_build_info_no_se, MEND)(SHIFT, \ - false, \ - ATOMIC_MMU_IDX)= ; \ - \ + uint16_t info =3D trace_mem_build_info(SHIFT, false, 0, false, \ + ATOMIC_MMU_IDX); \ atomic_trace_rmw_pre(env, addr, info); \ smp_mb(); \ cmp =3D atomic_read__nocheck(haddr); \ @@ -213,7 +206,6 @@ GEN_ATOMIC_HELPER_FN(umax_fetch, MAX, DATA_TYPE, new) #endif /* DATA SIZE >=3D 16 */ =20 #undef END -#undef MEND =20 #if DATA_SIZE > 1 =20 @@ -221,10 +213,8 @@ GEN_ATOMIC_HELPER_FN(umax_fetch, MAX, DATA_TYPE, new) within the ATOMIC_NAME macro. */ #ifdef HOST_WORDS_BIGENDIAN # define END _le -# define MEND _le #else # define END _be -# define MEND _be #endif =20 ABI_TYPE ATOMIC_NAME(cmpxchg)(CPUArchState *env, target_ulong addr, @@ -233,9 +223,8 @@ ABI_TYPE ATOMIC_NAME(cmpxchg)(CPUArchState *env, target= _ulong addr, ATOMIC_MMU_DECLS; DATA_TYPE *haddr =3D ATOMIC_MMU_LOOKUP; DATA_TYPE ret; - uint16_t info =3D glue(trace_mem_build_info_no_se, MEND)(SHIFT, - false, - ATOMIC_MMU_IDX); + uint16_t info =3D trace_mem_build_info(SHIFT, false, MO_BSWAP, false, + ATOMIC_MMU_IDX); =20 atomic_trace_rmw_pre(env, addr, info); #if DATA_SIZE =3D=3D 16 @@ -254,9 +243,8 @@ ABI_TYPE ATOMIC_NAME(ld)(CPUArchState *env, target_ulon= g addr EXTRA_ARGS) { ATOMIC_MMU_DECLS; DATA_TYPE val, *haddr =3D ATOMIC_MMU_LOOKUP; - uint16_t info =3D glue(trace_mem_build_info_no_se, MEND)(SHIFT, - false, - ATOMIC_MMU_IDX); + uint16_t info =3D trace_mem_build_info(SHIFT, false, MO_BSWAP, false, + ATOMIC_MMU_IDX); =20 atomic_trace_ld_pre(env, addr, info); val =3D atomic16_read(haddr); @@ -270,9 +258,8 @@ void ATOMIC_NAME(st)(CPUArchState *env, target_ulong ad= dr, { ATOMIC_MMU_DECLS; DATA_TYPE *haddr =3D ATOMIC_MMU_LOOKUP; - uint16_t info =3D glue(trace_mem_build_info_no_se, MEND)(SHIFT, - true, - ATOMIC_MMU_IDX); + uint16_t info =3D trace_mem_build_info(SHIFT, false, MO_BSWAP, true, + ATOMIC_MMU_IDX); =20 val =3D BSWAP(val); atomic_trace_st_pre(env, addr, info); @@ -289,9 +276,8 @@ ABI_TYPE ATOMIC_NAME(xchg)(CPUArchState *env, target_ul= ong addr, ATOMIC_MMU_DECLS; DATA_TYPE *haddr =3D ATOMIC_MMU_LOOKUP; ABI_TYPE ret; - uint16_t info =3D glue(trace_mem_build_info_no_se, MEND)(SHIFT, - false, - ATOMIC_MMU_IDX); + uint16_t info =3D trace_mem_build_info(SHIFT, false, MO_BSWAP, false, + ATOMIC_MMU_IDX); =20 atomic_trace_rmw_pre(env, addr, info); ret =3D atomic_xchg__nocheck(haddr, BSWAP(val)); @@ -307,10 +293,8 @@ ABI_TYPE ATOMIC_NAME(X)(CPUArchState *env, target_ulon= g addr, \ ATOMIC_MMU_DECLS; \ DATA_TYPE *haddr =3D ATOMIC_MMU_LOOKUP; \ DATA_TYPE ret; \ - uint16_t info =3D glue(trace_mem_build_info_no_se, MEND)(SHIFT, \ - false, \ - ATOMIC_MMU_IDX)= ; \ - \ + uint16_t info =3D trace_mem_build_info(SHIFT, false, MO_BSWAP, \ + false, ATOMIC_MMU_IDX); \ atomic_trace_rmw_pre(env, addr, info); \ ret =3D atomic_##X(haddr, BSWAP(val)); \ ATOMIC_MMU_CLEANUP; \ @@ -341,10 +325,8 @@ ABI_TYPE ATOMIC_NAME(X)(CPUArchState *env, target_ulon= g addr, \ ATOMIC_MMU_DECLS; \ XDATA_TYPE *haddr =3D ATOMIC_MMU_LOOKUP; \ XDATA_TYPE ldo, ldn, old, new, val =3D xval; \ - uint16_t info =3D glue(trace_mem_build_info_no_se, MEND)(SHIFT, \ - false, \ - ATOMIC_MMU_IDX)= ; \ - \ + uint16_t info =3D trace_mem_build_info(SHIFT, false, MO_BSWAP, \ + false, ATOMIC_MMU_IDX); \ atomic_trace_rmw_pre(env, addr, info); \ smp_mb(); \ ldn =3D atomic_read__nocheck(haddr); \ @@ -378,7 +360,6 @@ GEN_ATOMIC_HELPER_FN(add_fetch, ADD, DATA_TYPE, new) #endif /* DATA_SIZE >=3D 16 */ =20 #undef END -#undef MEND #endif /* DATA_SIZE > 1 */ =20 #undef BSWAP diff --git a/trace/mem-internal.h b/trace/mem-internal.h index 0a32aa22ca..8b72b678fa 100644 --- a/trace/mem-internal.h +++ b/trace/mem-internal.h @@ -47,21 +47,4 @@ static inline uint16_t trace_mem_get_info(MemOp op, mmu_idx); } =20 -/* Used by the atomic helpers */ -static inline -uint16_t trace_mem_build_info_no_se_be(int size_shift, bool store, - TCGMemOpIdx oi) -{ - return trace_mem_build_info(size_shift, false, MO_BE, store, - get_mmuidx(oi)); -} - -static inline -uint16_t trace_mem_build_info_no_se_le(int size_shift, bool store, - TCGMemOpIdx oi) -{ - return trace_mem_build_info(size_shift, false, MO_LE, store, - get_mmuidx(oi)); -} - #endif /* TRACE__MEM_INTERNAL_H */ --=20 2.20.1 From nobody Sat May 4 23:35:41 2024 Delivered-To: importer@patchew.org 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; 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=1576534612; cv=none; d=zohomail.com; s=zohoarc; b=LpJG3VqykKHg2xUg3kpv2ZLRdATpanWOdbtUMX8XG60DWNQHk+2UWKu/QdyLnIQkJyEBGrlf/rgyPXJKuosrSR6Qj36xE93W/ZQpZeJuX6QPnOEPZHUaBh2u3DJuO2Ex9AfZlKFkx/xvJz01kwyds+MaKbIDviwaLcwXu/2EVIo= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1576534612; h=Content-Transfer-Encoding:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=NbXcHmPvccOg4ApdYdFLAPaKmhXfD3r1GQk/f9IlktA=; b=V1JkZDVMTIPsfSehGdl/EEz7PV+Km4bzhiGqufV9lBKEKG8xgZuITcNavGQio4QO2ATR9KlZ+CHRMMEO+07IwbXzt9VaLuo6a4+mlt7YlQIkEEQbWo0LVC+DHPc1OblWzWmnwyKimYgc8MtFhakdSdFoUcXsOmA5nlvksU0Rx88= 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) header.from= Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1576534612657572.0752727030995; Mon, 16 Dec 2019 14:16:52 -0800 (PST) Received: from localhost ([::1]:60694 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1igyfa-0001e6-Uw for importer@patchew.org; Mon, 16 Dec 2019 17:16:51 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:36634) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1igyb5-0004oy-Qs for qemu-devel@nongnu.org; Mon, 16 Dec 2019 17:12:13 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1igyb3-0006y5-Pp for qemu-devel@nongnu.org; Mon, 16 Dec 2019 17:12:11 -0500 Received: from mail-pf1-x443.google.com ([2607:f8b0:4864:20::443]:41189) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1igyb3-0006wk-Hj for qemu-devel@nongnu.org; Mon, 16 Dec 2019 17:12:09 -0500 Received: by mail-pf1-x443.google.com with SMTP id s18so6375020pfd.8 for ; Mon, 16 Dec 2019 14:12:09 -0800 (PST) Received: from localhost.localdomain ([2605:e000:c74f:dc00:6838:d2b2:17e2:8445]) by smtp.gmail.com with ESMTPSA id d6sm529767pjl.8.2019.12.16.14.12.06 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 16 Dec 2019 14:12:07 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=from:to:subject:date:message-id:in-reply-to:references:mime-version :content-transfer-encoding; bh=NbXcHmPvccOg4ApdYdFLAPaKmhXfD3r1GQk/f9IlktA=; b=RXqunFBH/hWJW+YR1NpAkTmn/s5ZVCPMAOkp/Y79IjYrfEJjzFBJloY9yb3ORi0CHY JQ3U5E2Dw0Kxgt9HKBG6Z2uJvg3MhtTf0bbbyOHr6Mgrceobyt0WrM81Pvx6+6UkHib9 em5A9ac173AYr1eAiLPs+inUqd3zHq6nDauBT1T/X+NDU5g8p6li854Zc6WiUNCaq7Zh 62PF72ej6LPIxjnJdAgVEsouZ4QftSCtqgDUS3DJ+v0c0xB3wj4TuLC6hz5cxKF1soBX 2DrkAwUQaYmIrvJ1+xLqSUdlHSFr/lrjzUfNMZ5/jeSi/Osa/I9uUZJekvsOwQUAeVDU 88VQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=NbXcHmPvccOg4ApdYdFLAPaKmhXfD3r1GQk/f9IlktA=; b=Aby9PTKjiXG3cXZgGToaZg4Ec+0xCTP28axMp1WlMHiNfVMI93vpqj1a9WfSkYl58F 2XdaVjktyvlWHRrWa/NuLLL5QBN0k8m96vWbnYJ4Flm+vT8qlBYUqE48ScoeTxkUXTIa w/1xNdDebKp9fQd56OCMK2TWFsUN6kJw45aQbw6Ys/B0n4+3lNHmh8c1icNQ3u1dOrPI wSAtzMlW5s6PUkZlvy5FCvkuhJmmH0X7J8uBSTMtvAMy3g/Qh11e0WR3vgRN+1LyxwpA TdSbn17mKyHWXgrQ4bmxyRJICTg3dvKTEKyhJXJYK/kKD8InykQo4NnceOMk3RwGBZxu AMrw== X-Gm-Message-State: APjAAAVF8Qr6sRvxkWhx+kEYp8JtQx8LMppAn7Rx4UEyFKnJeeDvdQBE OGTAuTpEjFpm71ZDX36nkpnueNQXIxg= X-Google-Smtp-Source: APXvYqz9o99/BjTIY0DQ6kJDnj1Gyftt99jc5d1pMI54HkWQ2pfX31r19fWCeJbp2MPFgP4qqXjXfA== X-Received: by 2002:a63:f814:: with SMTP id n20mr20920041pgh.318.1576534328037; Mon, 16 Dec 2019 14:12:08 -0800 (PST) From: Richard Henderson To: qemu-devel@nongnu.org Subject: [PATCH v2 04/28] cputlb: Move body of cpu_ldst_template.h out of line Date: Mon, 16 Dec 2019 12:11:34 -1000 Message-Id: <20191216221158.29572-5-richard.henderson@linaro.org> X-Mailer: git-send-email 2.20.1 In-Reply-To: <20191216221158.29572-1-richard.henderson@linaro.org> References: <20191216221158.29572-1-richard.henderson@linaro.org> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2607:f8b0:4864:20::443 X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 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" X-ZohoMail-DKIM: pass (identity @linaro.org) Content-Type: text/plain; charset="utf-8" With the tracing hooks, the inline functions are no longer so simple. Once out-of-line, the current tlb_entry lookup is redundant with the one in the main load/store_helper. This also begins the introduction of a new target facing interface, with suffix *_mmuidx_ra. This is not yet official because the interface is not done for user-only. Use abi_ptr instead of target_ulong in preparation for user-only; the two types are identical for softmmu. What remains in cpu_ldst_template.h are the expansions for _code, _data, and MMU_MODE_SUFFIX. Signed-off-by: Richard Henderson Reviewed-by: Alex Benn=C3=A9e --- include/exec/cpu_ldst.h | 25 ++++++- include/exec/cpu_ldst_template.h | 125 +++++++------------------------ accel/tcg/cputlb.c | 116 ++++++++++++++++++++++++++++ 3 files changed, 166 insertions(+), 100 deletions(-) diff --git a/include/exec/cpu_ldst.h b/include/exec/cpu_ldst.h index fd499f7e2f..cf8af36dbc 100644 --- a/include/exec/cpu_ldst.h +++ b/include/exec/cpu_ldst.h @@ -152,7 +152,7 @@ static inline void clear_helper_retaddr(void) =20 #else =20 -/* The memory helpers for tcg-generated code need tcg_target_long etc. */ +/* Needed for TCG_OVERSIZED_GUEST */ #include "tcg.h" =20 static inline target_ulong tlb_addr_write(const CPUTLBEntry *entry) @@ -185,6 +185,29 @@ static inline CPUTLBEntry *tlb_entry(CPUArchState *env= , uintptr_t mmu_idx, return &env_tlb(env)->f[mmu_idx].table[tlb_index(env, mmu_idx, addr)]; } =20 +uint32_t cpu_ldub_mmuidx_ra(CPUArchState *env, abi_ptr addr, + int mmu_idx, uintptr_t ra); +uint32_t cpu_lduw_mmuidx_ra(CPUArchState *env, abi_ptr addr, + int mmu_idx, uintptr_t ra); +uint32_t cpu_ldl_mmuidx_ra(CPUArchState *env, abi_ptr addr, + int mmu_idx, uintptr_t ra); +uint64_t cpu_ldq_mmuidx_ra(CPUArchState *env, abi_ptr addr, + int mmu_idx, uintptr_t ra); + +int cpu_ldsb_mmuidx_ra(CPUArchState *env, abi_ptr addr, + int mmu_idx, uintptr_t ra); +int cpu_ldsw_mmuidx_ra(CPUArchState *env, abi_ptr addr, + int mmu_idx, uintptr_t ra); + +void cpu_stb_mmuidx_ra(CPUArchState *env, abi_ptr addr, uint32_t val, + int mmu_idx, uintptr_t retaddr); +void cpu_stw_mmuidx_ra(CPUArchState *env, abi_ptr addr, uint32_t val, + int mmu_idx, uintptr_t retaddr); +void cpu_stl_mmuidx_ra(CPUArchState *env, abi_ptr addr, uint32_t val, + int mmu_idx, uintptr_t retaddr); +void cpu_stq_mmuidx_ra(CPUArchState *env, abi_ptr addr, uint64_t val, + int mmu_idx, uintptr_t retaddr); + #ifdef MMU_MODE0_SUFFIX #define CPU_MMU_INDEX 0 #define MEMSUFFIX MMU_MODE0_SUFFIX diff --git a/include/exec/cpu_ldst_template.h b/include/exec/cpu_ldst_templ= ate.h index 0ad5de3ef9..ea39e29c19 100644 --- a/include/exec/cpu_ldst_template.h +++ b/include/exec/cpu_ldst_template.h @@ -24,13 +24,6 @@ * License along with this library; if not, see . */ =20 -#if !defined(SOFTMMU_CODE_ACCESS) -#include "trace-root.h" -#endif - -#include "qemu/plugin.h" -#include "trace/mem.h" - #if DATA_SIZE =3D=3D 8 #define SUFFIX q #define USUFFIX q @@ -63,56 +56,40 @@ #define RES_TYPE uint32_t #endif =20 +/* generic load/store macros */ + #ifdef SOFTMMU_CODE_ACCESS -#define ADDR_READ addr_code -#define MMUSUFFIX _cmmu -#define URETSUFFIX USUFFIX -#define SRETSUFFIX glue(s, SUFFIX) -#else -#define ADDR_READ addr_read -#define MMUSUFFIX _mmu -#define URETSUFFIX USUFFIX -#define SRETSUFFIX glue(s, SUFFIX) + +static inline RES_TYPE +glue(glue(cpu_ld, USUFFIX), _code)(CPUArchState *env, target_ulong ptr) +{ + TCGMemOpIdx oi =3D make_memop_idx(MO_TE | SHIFT, CPU_MMU_INDEX); + return glue(glue(helper_ret_ld, USUFFIX), _cmmu)(env, ptr, oi, 0); +} + +#if DATA_SIZE <=3D 2 +static inline int +glue(glue(cpu_lds, SUFFIX), _code)(CPUArchState *env, target_ulong ptr) +{ + return (DATA_STYPE)glue(glue(cpu_ld, USUFFIX), _code)(env, ptr); +} #endif =20 -/* generic load/store macros */ +#else =20 static inline RES_TYPE glue(glue(glue(cpu_ld, USUFFIX), MEMSUFFIX), _ra)(CPUArchState *env, target_ulong ptr, uintptr_t retaddr) { - CPUTLBEntry *entry; - RES_TYPE res; - target_ulong addr; - int mmu_idx =3D CPU_MMU_INDEX; - MemOp op =3D MO_TE | SHIFT; -#if !defined(SOFTMMU_CODE_ACCESS) - uint16_t meminfo =3D trace_mem_get_info(op, mmu_idx, false); - trace_guest_mem_before_exec(env_cpu(env), ptr, meminfo); -#endif - - addr =3D ptr; - entry =3D tlb_entry(env, mmu_idx, addr); - if (unlikely(entry->ADDR_READ !=3D - (addr & (TARGET_PAGE_MASK | (DATA_SIZE - 1))))) { - TCGMemOpIdx oi =3D make_memop_idx(op, mmu_idx); - res =3D glue(glue(helper_ret_ld, URETSUFFIX), MMUSUFFIX)(env, addr, - oi, retaddr= ); - } else { - uintptr_t hostaddr =3D addr + entry->addend; - res =3D glue(glue(ld, USUFFIX), _p)((uint8_t *)hostaddr); - } -#ifndef SOFTMMU_CODE_ACCESS - qemu_plugin_vcpu_mem_cb(env_cpu(env), ptr, meminfo); -#endif - return res; + return glue(glue(cpu_ld, USUFFIX), _mmuidx_ra)(env, ptr, CPU_MMU_INDEX, + retaddr); } =20 static inline RES_TYPE glue(glue(cpu_ld, USUFFIX), MEMSUFFIX)(CPUArchState *env, target_ulong ptr) { - return glue(glue(glue(cpu_ld, USUFFIX), MEMSUFFIX), _ra)(env, ptr, 0); + return glue(glue(cpu_ld, USUFFIX), _mmuidx_ra)(env, ptr, CPU_MMU_INDEX= , 0); } =20 #if DATA_SIZE <=3D 2 @@ -121,42 +98,17 @@ glue(glue(glue(cpu_lds, SUFFIX), MEMSUFFIX), _ra)(CPUA= rchState *env, target_ulong ptr, uintptr_t retaddr) { - CPUTLBEntry *entry; - int res; - target_ulong addr; - int mmu_idx =3D CPU_MMU_INDEX; - MemOp op =3D MO_TE | MO_SIGN | SHIFT; -#ifndef SOFTMMU_CODE_ACCESS - uint16_t meminfo =3D trace_mem_get_info(op, mmu_idx, false); - trace_guest_mem_before_exec(env_cpu(env), ptr, meminfo); -#endif - - addr =3D ptr; - entry =3D tlb_entry(env, mmu_idx, addr); - if (unlikely(entry->ADDR_READ !=3D - (addr & (TARGET_PAGE_MASK | (DATA_SIZE - 1))))) { - TCGMemOpIdx oi =3D make_memop_idx(op & ~MO_SIGN, mmu_idx); - res =3D (DATA_STYPE)glue(glue(helper_ret_ld, SRETSUFFIX), - MMUSUFFIX)(env, addr, oi, retaddr); - } else { - uintptr_t hostaddr =3D addr + entry->addend; - res =3D glue(glue(lds, SUFFIX), _p)((uint8_t *)hostaddr); - } -#ifndef SOFTMMU_CODE_ACCESS - qemu_plugin_vcpu_mem_cb(env_cpu(env), ptr, meminfo); -#endif - return res; + return glue(glue(cpu_lds, SUFFIX), _mmuidx_ra)(env, ptr, CPU_MMU_INDEX, + retaddr); } =20 static inline int glue(glue(cpu_lds, SUFFIX), MEMSUFFIX)(CPUArchState *env, target_ulong ptr) { - return glue(glue(glue(cpu_lds, SUFFIX), MEMSUFFIX), _ra)(env, ptr, 0); + return glue(glue(cpu_lds, SUFFIX), _mmuidx_ra)(env, ptr, CPU_MMU_INDEX= , 0); } #endif =20 -#ifndef SOFTMMU_CODE_ACCESS - /* generic store macro */ =20 static inline void @@ -164,36 +116,15 @@ glue(glue(glue(cpu_st, SUFFIX), MEMSUFFIX), _ra)(CPUA= rchState *env, target_ulong ptr, RES_TYPE v, uintptr_t ret= addr) { - CPUTLBEntry *entry; - target_ulong addr; - int mmu_idx =3D CPU_MMU_INDEX; - MemOp op =3D MO_TE | SHIFT; -#if !defined(SOFTMMU_CODE_ACCESS) - uint16_t meminfo =3D trace_mem_get_info(op, mmu_idx, true); - trace_guest_mem_before_exec(env_cpu(env), ptr, meminfo); -#endif - - addr =3D ptr; - entry =3D tlb_entry(env, mmu_idx, addr); - if (unlikely(tlb_addr_write(entry) !=3D - (addr & (TARGET_PAGE_MASK | (DATA_SIZE - 1))))) { - TCGMemOpIdx oi =3D make_memop_idx(op, mmu_idx); - glue(glue(helper_ret_st, SUFFIX), MMUSUFFIX)(env, addr, v, oi, - retaddr); - } else { - uintptr_t hostaddr =3D addr + entry->addend; - glue(glue(st, SUFFIX), _p)((uint8_t *)hostaddr, v); - } -#ifndef SOFTMMU_CODE_ACCESS - qemu_plugin_vcpu_mem_cb(env_cpu(env), ptr, meminfo); -#endif + glue(glue(cpu_st, SUFFIX), _mmuidx_ra)(env, ptr, v, CPU_MMU_INDEX, + retaddr); } =20 static inline void glue(glue(cpu_st, SUFFIX), MEMSUFFIX)(CPUArchState *env, target_ulong ptr, RES_TYPE v) { - glue(glue(glue(cpu_st, SUFFIX), MEMSUFFIX), _ra)(env, ptr, v, 0); + glue(glue(cpu_st, SUFFIX), _mmuidx_ra)(env, ptr, v, CPU_MMU_INDEX, 0); } =20 #endif /* !SOFTMMU_CODE_ACCESS */ @@ -204,8 +135,4 @@ glue(glue(cpu_st, SUFFIX), MEMSUFFIX)(CPUArchState *env= , target_ulong ptr, #undef SUFFIX #undef USUFFIX #undef DATA_SIZE -#undef MMUSUFFIX -#undef ADDR_READ -#undef URETSUFFIX -#undef SRETSUFFIX #undef SHIFT diff --git a/accel/tcg/cputlb.c b/accel/tcg/cputlb.c index 98221948d6..ddd19718bf 100644 --- a/accel/tcg/cputlb.c +++ b/accel/tcg/cputlb.c @@ -34,6 +34,9 @@ #include "qemu/atomic.h" #include "qemu/atomic128.h" #include "translate-all.h" +#include "trace-root.h" +#include "qemu/plugin.h" +#include "trace/mem.h" #ifdef CONFIG_PLUGIN #include "qemu/plugin-memory.h" #endif @@ -1625,6 +1628,75 @@ tcg_target_ulong helper_be_ldsl_mmu(CPUArchState *en= v, target_ulong addr, return (int32_t)helper_be_ldul_mmu(env, addr, oi, retaddr); } =20 +/* + * Load helpers for cpu_ldst.h. + */ + +static inline uint64_t cpu_load_helper(CPUArchState *env, abi_ptr addr, + int mmu_idx, uintptr_t retaddr, + MemOp op, FullLoadHelper *full_load) +{ + uint16_t meminfo; + TCGMemOpIdx oi; + uint64_t ret; + + meminfo =3D trace_mem_get_info(op, mmu_idx, false); + trace_guest_mem_before_exec(env_cpu(env), addr, meminfo); + + op &=3D ~MO_SIGN; + oi =3D make_memop_idx(op, mmu_idx); + ret =3D full_load(env, addr, oi, retaddr); + + qemu_plugin_vcpu_mem_cb(env_cpu(env), addr, meminfo); + + return ret; +} + +uint32_t cpu_ldub_mmuidx_ra(CPUArchState *env, abi_ptr addr, + int mmu_idx, uintptr_t ra) +{ + return cpu_load_helper(env, addr, mmu_idx, ra, MO_UB, full_ldub_mmu); +} + +int cpu_ldsb_mmuidx_ra(CPUArchState *env, abi_ptr addr, + int mmu_idx, uintptr_t ra) +{ + return (int8_t)cpu_load_helper(env, addr, mmu_idx, ra, MO_SB, + full_ldub_mmu); +} + +uint32_t cpu_lduw_mmuidx_ra(CPUArchState *env, abi_ptr addr, + int mmu_idx, uintptr_t ra) +{ + return cpu_load_helper(env, addr, mmu_idx, ra, MO_TEUW, + MO_TE =3D=3D MO_LE + ? full_le_lduw_mmu : full_be_lduw_mmu); +} + +int cpu_ldsw_mmuidx_ra(CPUArchState *env, abi_ptr addr, + int mmu_idx, uintptr_t ra) +{ + return (int16_t)cpu_load_helper(env, addr, mmu_idx, ra, MO_TESW, + MO_TE =3D=3D MO_LE + ? full_le_lduw_mmu : full_be_lduw_mmu); +} + +uint32_t cpu_ldl_mmuidx_ra(CPUArchState *env, abi_ptr addr, + int mmu_idx, uintptr_t ra) +{ + return cpu_load_helper(env, addr, mmu_idx, ra, MO_TEUL, + MO_TE =3D=3D MO_LE + ? full_le_ldul_mmu : full_be_ldul_mmu); +} + +uint64_t cpu_ldq_mmuidx_ra(CPUArchState *env, abi_ptr addr, + int mmu_idx, uintptr_t ra) +{ + return cpu_load_helper(env, addr, mmu_idx, ra, MO_TEQ, + MO_TE =3D=3D MO_LE + ? helper_le_ldq_mmu : helper_be_ldq_mmu); +} + /* * Store Helpers */ @@ -1854,6 +1926,50 @@ void helper_be_stq_mmu(CPUArchState *env, target_ulo= ng addr, uint64_t val, store_helper(env, addr, val, oi, retaddr, MO_BEQ); } =20 +/* + * Store Helpers for cpu_ldst.h + */ + +static inline void QEMU_ALWAYS_INLINE +cpu_store_helper(CPUArchState *env, target_ulong addr, uint64_t val, + int mmu_idx, uintptr_t retaddr, MemOp op) +{ + TCGMemOpIdx oi; + uint16_t meminfo; + + meminfo =3D trace_mem_get_info(op, mmu_idx, true); + trace_guest_mem_before_exec(env_cpu(env), addr, meminfo); + + oi =3D make_memop_idx(op, mmu_idx); + store_helper(env, addr, val, oi, retaddr, op); + + qemu_plugin_vcpu_mem_cb(env_cpu(env), addr, meminfo); +} + +void cpu_stb_mmuidx_ra(CPUArchState *env, target_ulong addr, uint32_t val, + int mmu_idx, uintptr_t retaddr) +{ + cpu_store_helper(env, addr, val, mmu_idx, retaddr, MO_UB); +} + +void cpu_stw_mmuidx_ra(CPUArchState *env, target_ulong addr, uint32_t val, + int mmu_idx, uintptr_t retaddr) +{ + cpu_store_helper(env, addr, val, mmu_idx, retaddr, MO_TEUW); +} + +void cpu_stl_mmuidx_ra(CPUArchState *env, target_ulong addr, uint32_t val, + int mmu_idx, uintptr_t retaddr) +{ + cpu_store_helper(env, addr, val, mmu_idx, retaddr, MO_TEUL); +} + +void cpu_stq_mmuidx_ra(CPUArchState *env, target_ulong addr, uint64_t val, + int mmu_idx, uintptr_t retaddr) +{ + cpu_store_helper(env, addr, val, mmu_idx, retaddr, MO_TEQ); +} + /* First set of helpers allows passing in of OI and RETADDR. This makes them callable from other helpers. */ =20 --=20 2.20.1 From nobody Sat May 4 23:35:41 2024 Delivered-To: importer@patchew.org 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; 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=1576534769; cv=none; d=zohomail.com; s=zohoarc; b=cmiATskpeuXZthjFxr3PvV8yysh5JvpmKA0Gd0qaA7bD4mQp1nxxBraiCl5j2h79gcgY9usXdccfXNNK/DY1N/eLQqO+An4N3WaEQowkHuQno9H8EofAKhBCrefW2sz0uvSiqzqZu6UoZfC7DHDrE7ruC+1qziPWHK3iXJB+tEI= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1576534769; h=Content-Transfer-Encoding:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=LZjfj7f7LiMXr9N5B8njH/lhRDK1JnIrdikl5tdqwbU=; b=im/VmuP3afS0es+zOnBhS7zcZ7CqhZndFM3sTDZZxtCsBYQYDhwd2iZJOPWDN55QWE6goijs89rcKpQWkhl9gOsWP6BRbmV5hI2Nx4iC012H2fFMnVeBrLYqA3sres8tqNwnKcrfZV50efzWNX0dsggQAjRyKDkvBVImK1vJ9Vs= 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) header.from= Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1576534769394288.8479913673391; Mon, 16 Dec 2019 14:19:29 -0800 (PST) Received: from localhost ([::1]:60738 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1igyi6-00056H-V1 for importer@patchew.org; Mon, 16 Dec 2019 17:19:27 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:36641) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1igyb6-0004qL-I4 for qemu-devel@nongnu.org; Mon, 16 Dec 2019 17:12:14 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1igyb5-0006zU-8n for qemu-devel@nongnu.org; Mon, 16 Dec 2019 17:12:12 -0500 Received: from mail-pg1-x543.google.com ([2607:f8b0:4864:20::543]:38442) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1igyb5-0006zM-30 for qemu-devel@nongnu.org; Mon, 16 Dec 2019 17:12:11 -0500 Received: by mail-pg1-x543.google.com with SMTP id a33so4500417pgm.5 for ; Mon, 16 Dec 2019 14:12:11 -0800 (PST) Received: from localhost.localdomain ([2605:e000:c74f:dc00:6838:d2b2:17e2:8445]) by smtp.gmail.com with ESMTPSA id d6sm529767pjl.8.2019.12.16.14.12.08 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 16 Dec 2019 14:12:08 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=from:to:subject:date:message-id:in-reply-to:references:mime-version :content-transfer-encoding; bh=LZjfj7f7LiMXr9N5B8njH/lhRDK1JnIrdikl5tdqwbU=; b=tBtwE3Luzpx99iyXa1B18fGUgCPrg1ftkjeQ8PHIDqiOc6Zbh716zAL7gEeLtx1fAO fB5k5pF6eLsNxcTdaGqGdpafX2uRyYNagaO08Ea7ghtVoIHaR7c7E2l4VvU3Y93tCcPx 47V08FW/4EkQqMmHfZ2epFhrN1KZp7PumR79OihzCFHl3nEYtKfVKMpcN+x0Hvl3yrGK wKwnJJey2a4RmQ7BOJR5AKvG4Dg9WGy0W4tn4LS6G12BDSDjsvH8VsrMjFV2Lyfdd4bh eMEE7E2jxKb0U+hk9WObnp/8WESuroPCl4Np3o4sabr5i1HTDWnEIcf80VSRj9CpDo+E ERCw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=LZjfj7f7LiMXr9N5B8njH/lhRDK1JnIrdikl5tdqwbU=; b=o012W0CnY0d6PK482iIkZWXt2yS44SshXnzn1/LPh2eE4f+g89d6oHNz7SmQTTbQuk vHQw+mv9d3gc6ewpYuli1y90ShAo9dE7pLqp6Bb8CzHFW1QfHUaaF0a2e8LUQL28DbOX bArmLkYMfZFumq7d9dkscR7+L1ZQOZzKzb407SfEjZsOlD82ctCoOd9rhbTcPz3/6PME ATSLtUZX1zY/cpZ2iR9JRqENqNnljVstjsFpMDI1vbhLNICjnRy8tZScg+xwfCHVvWGE aLXQpnVxTvD1cFsuIQoJ5qVpSKgl46RVPgdssb7O5ShIx1uNB7VzATrSPhwptOkg0DUn rowQ== X-Gm-Message-State: APjAAAUho4DQTXa4vQwzIjL5HHpeEzVqM6gxVbUhD9kdF0NQHX/Ifpdw W04IW1WpQi3AzkRT8OrPMnTDVjm52OA= X-Google-Smtp-Source: APXvYqytm1kFEqDYZcdN5HhkOTof18hUgRP0vZOsVZXgxa34t0v2ADS4nSdoD7hgqyNFT/vX/3r8QA== X-Received: by 2002:a65:530d:: with SMTP id m13mr21246848pgq.351.1576534329663; Mon, 16 Dec 2019 14:12:09 -0800 (PST) From: Richard Henderson To: qemu-devel@nongnu.org Subject: [PATCH v2 05/28] translator: Use cpu_ld*_code instead of open-coding Date: Mon, 16 Dec 2019 12:11:35 -1000 Message-Id: <20191216221158.29572-6-richard.henderson@linaro.org> X-Mailer: git-send-email 2.20.1 In-Reply-To: <20191216221158.29572-1-richard.henderson@linaro.org> References: <20191216221158.29572-1-richard.henderson@linaro.org> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2607:f8b0:4864:20::543 X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 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" X-ZohoMail-DKIM: pass (identity @linaro.org) Content-Type: text/plain; charset="utf-8" The DO_LOAD macros replicate the distinction already performed by the cpu_ldst.h functions. Use them. Signed-off-by: Richard Henderson Reviewed-by: Alex Benn=C3=A9e --- include/exec/cpu_ldst.h | 11 --------- include/exec/translator.h | 48 +++++++++++---------------------------- 2 files changed, 13 insertions(+), 46 deletions(-) diff --git a/include/exec/cpu_ldst.h b/include/exec/cpu_ldst.h index cf8af36dbc..399ff6c3da 100644 --- a/include/exec/cpu_ldst.h +++ b/include/exec/cpu_ldst.h @@ -129,11 +129,6 @@ static inline void clear_helper_retaddr(void) #include "exec/cpu_ldst_useronly_template.h" #undef MEMSUFFIX =20 -/* - * Code access is deprecated in favour of translator_ld* functions - * (see translator.h). However there are still users that need to - * converted so for now these stay. - */ #define MEMSUFFIX _code #define CODE_ACCESS #define DATA_SIZE 1 @@ -455,12 +450,6 @@ void cpu_stq_mmuidx_ra(CPUArchState *env, abi_ptr addr= , uint64_t val, #undef CPU_MMU_INDEX #undef MEMSUFFIX =20 -/* - * Code access is deprecated in favour of translator_ld* functions - * (see translator.h). However there are still users that need to - * converted so for now these stay. - */ - #define CPU_MMU_INDEX (cpu_mmu_index(env, true)) #define MEMSUFFIX _code #define SOFTMMU_CODE_ACCESS diff --git a/include/exec/translator.h b/include/exec/translator.h index 459dd72aab..638e1529c5 100644 --- a/include/exec/translator.h +++ b/include/exec/translator.h @@ -148,41 +148,19 @@ void translator_loop_temp_check(DisasContextBase *db); /* * Translator Load Functions * - * These are intended to replace the old cpu_ld*_code functions and - * are mandatory for front-ends that have been migrated to the common - * translator_loop. These functions are only intended to be called - * from the translation stage and should not be called from helper - * functions. Those functions should be converted to encode the - * relevant information at translation time. + * These are intended to replace the direct usage of the cpu_ld*_code + * functions and are mandatory for front-ends that have been migrated + * to the common translator_loop. These functions are only intended + * to be called from the translation stage and should not be called + * from helper functions. Those functions should be converted to encode + * the relevant information at translation time. */ =20 -#ifdef CONFIG_USER_ONLY - -#define DO_LOAD(type, name, shift) \ - do { \ - set_helper_retaddr(1); \ - ret =3D name ## _p(g2h(pc)); \ - clear_helper_retaddr(); \ - } while (0) - -#else - -#define DO_LOAD(type, name, shift) \ - do { \ - int mmu_idx =3D cpu_mmu_index(env, true); \ - TCGMemOpIdx oi =3D make_memop_idx(shift, mmu_idx); \ - ret =3D helper_ret_ ## name ## _cmmu(env, pc, oi, 0); \ - } while (0) - -#endif - -#define GEN_TRANSLATOR_LD(fullname, name, type, shift, swap_fn) \ +#define GEN_TRANSLATOR_LD(fullname, type, load_fn, swap_fn) \ static inline type \ fullname ## _swap(CPUArchState *env, abi_ptr pc, bool do_swap) \ { \ - type ret; \ - DO_LOAD(type, name, shift); \ - \ + type ret =3D load_fn(env, pc); \ if (do_swap) { \ ret =3D swap_fn(ret); \ } \ @@ -195,11 +173,11 @@ void translator_loop_temp_check(DisasContextBase *db); return fullname ## _swap(env, pc, false); \ } =20 -GEN_TRANSLATOR_LD(translator_ldub, ldub, uint8_t, 0, /* no swap */ ) -GEN_TRANSLATOR_LD(translator_ldsw, ldsw, int16_t, 1, bswap16) -GEN_TRANSLATOR_LD(translator_lduw, lduw, uint16_t, 1, bswap16) -GEN_TRANSLATOR_LD(translator_ldl, ldl, uint32_t, 2, bswap32) -GEN_TRANSLATOR_LD(translator_ldq, ldq, uint64_t, 3, bswap64) +GEN_TRANSLATOR_LD(translator_ldub, uint8_t, cpu_ldub_code, /* no swap */) +GEN_TRANSLATOR_LD(translator_ldsw, int16_t, cpu_ldsw_code, bswap16) +GEN_TRANSLATOR_LD(translator_lduw, uint16_t, cpu_lduw_code, bswap16) +GEN_TRANSLATOR_LD(translator_ldl, uint32_t, cpu_ldl_code, bswap32) +GEN_TRANSLATOR_LD(translator_ldq, uint64_t, cpu_ldq_code, bswap64) #undef GEN_TRANSLATOR_LD =20 #endif /* EXEC__TRANSLATOR_H */ --=20 2.20.1 From nobody Sat May 4 23:35:41 2024 Delivered-To: importer@patchew.org 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; 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=1576534615; cv=none; d=zohomail.com; s=zohoarc; b=F9615IGU0TVXZQIW1Rx3RsuuG4nrdjfNF4Izb+k9Mg64Qqsa1ElpQsstd1H4won2AD1VII2LxW9/lnQu5K+Cxy2NS9Tm6x6+8URIsVjI6JfwsV6xj4duOM1ukXmwT+kLNB24t5CFgHEPlI8sD2vGKiUtCkCSG8yW10WoQC9jofA= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1576534615; h=Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=uB1yLwtWzwXzHBHtzMIQQis21sgQatB5l68T1HO/TXw=; b=TL/eBy7lMZZ6JoHS12XykVw2H/wVQMeriKRKyXkYpDmx6qN0/AF9rOdum5f2FbOPyrvebsoPQMJx+oXluqzTvxusNymlU66UENxCOkZ8VZD4UGXNWB3UnuuaigY9by5/+PhwROgWhnLUewnqlkVofsD6QEHosqSiKiSbKvlYPwM= 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) header.from= Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1576534615774353.0099490689919; Mon, 16 Dec 2019 14:16:55 -0800 (PST) Received: from localhost ([::1]:60698 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1igyfd-0001jB-VF for importer@patchew.org; Mon, 16 Dec 2019 17:16:53 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:36666) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1igyb8-0004t9-Q1 for qemu-devel@nongnu.org; Mon, 16 Dec 2019 17:12:16 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1igyb6-00070N-Vc for qemu-devel@nongnu.org; Mon, 16 Dec 2019 17:12:14 -0500 Received: from mail-pg1-x541.google.com ([2607:f8b0:4864:20::541]:41848) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1igyb6-0006zy-Ne for qemu-devel@nongnu.org; Mon, 16 Dec 2019 17:12:12 -0500 Received: by mail-pg1-x541.google.com with SMTP id x8so4494282pgk.8 for ; Mon, 16 Dec 2019 14:12:12 -0800 (PST) Received: from localhost.localdomain ([2605:e000:c74f:dc00:6838:d2b2:17e2:8445]) by smtp.gmail.com with ESMTPSA id d6sm529767pjl.8.2019.12.16.14.12.09 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 16 Dec 2019 14:12:10 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=uB1yLwtWzwXzHBHtzMIQQis21sgQatB5l68T1HO/TXw=; b=uMBhtMfd8rigRwDaQd0LZZZ1zMBdx6bCQ3JDEPqM5IbmHb3xCnPQZMFmKPWIPWdJ7m 5m/qsKmAVXC6pPSglsD/dg0aDpr8wX/cSXvL3knCoiXzXA1rHhwoR6IT3Tab+emR1bhi 1UXicdCE+YV97aw8V1iN+ro9LZvgrqhaI8geqiCLMUW3kAHtpCpzdHF6ldNBnjBAx+Xq MAnQekIKmM9D23+X3lY3CEHB6x+Wp44kWDLDZ/t3re5yBIzdYLLfWdas3WKfo+12rVin lqP1JIqPmbcLRhI5WmtpIBXbevGk6+LxlTKchQMugssmNM45b6xpiBKhh19cTxA5kCBT f9Aw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=uB1yLwtWzwXzHBHtzMIQQis21sgQatB5l68T1HO/TXw=; b=hFn/O5HjlsIcpO9eeBxnxH+jBGn9kNvLvOIsU6Pu2esorH8fgo9Nhi75z9F6sEOVzA 9a+5xRQ+J6axBvG2xmSBahXMCfnr0kz0RhB9NsbZ8hODVxApO6OW/QyBQFDBSvVE9bnh Nsm2xD9bpAcRxf14XmzFBIgg3nOb3gnihOoAsf1NNX/htaG0fvbIv6aekmYurSXK0nsX FeKjySGKELf3D1kB8SDhpdf4BMHY2lq6l9EZy4KcN2gUOCaUAEqnxln3G4Qm6WNPoF66 ZkUc5ReVlawKLgEVjQA1ro8bwrgbVVolWLBh5WhdPTMrbrhZdNoqlwV1UKOVMwYHE9kP WE7g== X-Gm-Message-State: APjAAAW5pguKvXogTdd0xQjRgsXjh1lcomVdv6Cw7AfnvkYUKN6yr29q lgIKvaSDkUKGgtX3sduJ+gtGmWahOs8= X-Google-Smtp-Source: APXvYqzqdPlRuYtlGYn+z5YARWx/58ImJ58xOa3UgNLyDz1rO13ATViJjM9kFzDu10GDomsSLC4TvQ== X-Received: by 2002:a63:f844:: with SMTP id v4mr20627254pgj.71.1576534331237; Mon, 16 Dec 2019 14:12:11 -0800 (PST) From: Richard Henderson To: qemu-devel@nongnu.org Subject: [PATCH v2 06/28] cputlb: Rename helper_ret_ld*_cmmu to cpu_ld*_code Date: Mon, 16 Dec 2019 12:11:36 -1000 Message-Id: <20191216221158.29572-7-richard.henderson@linaro.org> X-Mailer: git-send-email 2.20.1 In-Reply-To: <20191216221158.29572-1-richard.henderson@linaro.org> References: <20191216221158.29572-1-richard.henderson@linaro.org> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2607:f8b0:4864:20::541 X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Aleksandar Markovic Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: pass (identity @linaro.org) Content-Type: text/plain; charset="utf-8" There are no uses of the *_cmmu names other than the bare wrapping within the *_code inlines. Therefore rename the functions so we can drop the inlines. Use abi_ptr instead of target_ulong in preparation for user-only; the two types are identical for softmmu. Reviewed-by: Aleksandar Markovic Signed-off-by: Richard Henderson --- include/exec/cpu_ldst.h | 29 ++++------ include/exec/cpu_ldst_template.h | 21 ------- tcg/tcg.h | 29 ---------- accel/tcg/cputlb.c | 94 ++++++++------------------------ docs/devel/loads-stores.rst | 4 +- 5 files changed, 36 insertions(+), 141 deletions(-) diff --git a/include/exec/cpu_ldst.h b/include/exec/cpu_ldst.h index 399ff6c3da..ef59ed61e4 100644 --- a/include/exec/cpu_ldst.h +++ b/include/exec/cpu_ldst.h @@ -450,25 +450,20 @@ void cpu_stq_mmuidx_ra(CPUArchState *env, abi_ptr add= r, uint64_t val, #undef CPU_MMU_INDEX #undef MEMSUFFIX =20 -#define CPU_MMU_INDEX (cpu_mmu_index(env, true)) -#define MEMSUFFIX _code -#define SOFTMMU_CODE_ACCESS +uint32_t cpu_ldub_code(CPUArchState *env, abi_ptr addr); +uint32_t cpu_lduw_code(CPUArchState *env, abi_ptr addr); +uint32_t cpu_ldl_code(CPUArchState *env, abi_ptr addr); +uint64_t cpu_ldq_code(CPUArchState *env, abi_ptr addr); =20 -#define DATA_SIZE 1 -#include "exec/cpu_ldst_template.h" +static inline int cpu_ldsb_code(CPUArchState *env, abi_ptr addr) +{ + return (int8_t)cpu_ldub_code(env, addr); +} =20 -#define DATA_SIZE 2 -#include "exec/cpu_ldst_template.h" - -#define DATA_SIZE 4 -#include "exec/cpu_ldst_template.h" - -#define DATA_SIZE 8 -#include "exec/cpu_ldst_template.h" - -#undef CPU_MMU_INDEX -#undef MEMSUFFIX -#undef SOFTMMU_CODE_ACCESS +static inline int cpu_ldsw_code(CPUArchState *env, abi_ptr addr) +{ + return (int16_t)cpu_lduw_code(env, addr); +} =20 #endif /* defined(CONFIG_USER_ONLY) */ =20 diff --git a/include/exec/cpu_ldst_template.h b/include/exec/cpu_ldst_templ= ate.h index ea39e29c19..e400979f23 100644 --- a/include/exec/cpu_ldst_template.h +++ b/include/exec/cpu_ldst_template.h @@ -58,25 +58,6 @@ =20 /* generic load/store macros */ =20 -#ifdef SOFTMMU_CODE_ACCESS - -static inline RES_TYPE -glue(glue(cpu_ld, USUFFIX), _code)(CPUArchState *env, target_ulong ptr) -{ - TCGMemOpIdx oi =3D make_memop_idx(MO_TE | SHIFT, CPU_MMU_INDEX); - return glue(glue(helper_ret_ld, USUFFIX), _cmmu)(env, ptr, oi, 0); -} - -#if DATA_SIZE <=3D 2 -static inline int -glue(glue(cpu_lds, SUFFIX), _code)(CPUArchState *env, target_ulong ptr) -{ - return (DATA_STYPE)glue(glue(cpu_ld, USUFFIX), _code)(env, ptr); -} -#endif - -#else - static inline RES_TYPE glue(glue(glue(cpu_ld, USUFFIX), MEMSUFFIX), _ra)(CPUArchState *env, target_ulong ptr, @@ -127,8 +108,6 @@ glue(glue(cpu_st, SUFFIX), MEMSUFFIX)(CPUArchState *env= , target_ulong ptr, glue(glue(cpu_st, SUFFIX), _mmuidx_ra)(env, ptr, v, CPU_MMU_INDEX, 0); } =20 -#endif /* !SOFTMMU_CODE_ACCESS */ - #undef RES_TYPE #undef DATA_TYPE #undef DATA_STYPE diff --git a/tcg/tcg.h b/tcg/tcg.h index 92ca10dffc..3b4f79301c 100644 --- a/tcg/tcg.h +++ b/tcg/tcg.h @@ -1290,27 +1290,6 @@ void helper_be_stl_mmu(CPUArchState *env, target_ulo= ng addr, uint32_t val, void helper_be_stq_mmu(CPUArchState *env, target_ulong addr, uint64_t val, TCGMemOpIdx oi, uintptr_t retaddr); =20 -uint8_t helper_ret_ldub_cmmu(CPUArchState *env, target_ulong addr, - TCGMemOpIdx oi, uintptr_t retaddr); -int8_t helper_ret_ldsb_cmmu(CPUArchState *env, target_ulong addr, - TCGMemOpIdx oi, uintptr_t retaddr); -uint16_t helper_le_lduw_cmmu(CPUArchState *env, target_ulong addr, - TCGMemOpIdx oi, uintptr_t retaddr); -int16_t helper_le_ldsw_cmmu(CPUArchState *env, target_ulong addr, - TCGMemOpIdx oi, uintptr_t retaddr); -uint32_t helper_le_ldl_cmmu(CPUArchState *env, target_ulong addr, - TCGMemOpIdx oi, uintptr_t retaddr); -uint64_t helper_le_ldq_cmmu(CPUArchState *env, target_ulong addr, - TCGMemOpIdx oi, uintptr_t retaddr); -uint16_t helper_be_lduw_cmmu(CPUArchState *env, target_ulong addr, - TCGMemOpIdx oi, uintptr_t retaddr); -int16_t helper_be_ldsw_cmmu(CPUArchState *env, target_ulong addr, - TCGMemOpIdx oi, uintptr_t retaddr); -uint32_t helper_be_ldl_cmmu(CPUArchState *env, target_ulong addr, - TCGMemOpIdx oi, uintptr_t retaddr); -uint64_t helper_be_ldq_cmmu(CPUArchState *env, target_ulong addr, - TCGMemOpIdx oi, uintptr_t retaddr); - /* Temporary aliases until backends are converted. */ #ifdef TARGET_WORDS_BIGENDIAN # define helper_ret_ldsw_mmu helper_be_ldsw_mmu @@ -1322,10 +1301,6 @@ uint64_t helper_be_ldq_cmmu(CPUArchState *env, targe= t_ulong addr, # define helper_ret_stw_mmu helper_be_stw_mmu # define helper_ret_stl_mmu helper_be_stl_mmu # define helper_ret_stq_mmu helper_be_stq_mmu -# define helper_ret_lduw_cmmu helper_be_lduw_cmmu -# define helper_ret_ldsw_cmmu helper_be_ldsw_cmmu -# define helper_ret_ldl_cmmu helper_be_ldl_cmmu -# define helper_ret_ldq_cmmu helper_be_ldq_cmmu #else # define helper_ret_ldsw_mmu helper_le_ldsw_mmu # define helper_ret_lduw_mmu helper_le_lduw_mmu @@ -1336,10 +1311,6 @@ uint64_t helper_be_ldq_cmmu(CPUArchState *env, targe= t_ulong addr, # define helper_ret_stw_mmu helper_le_stw_mmu # define helper_ret_stl_mmu helper_le_stl_mmu # define helper_ret_stq_mmu helper_le_stq_mmu -# define helper_ret_lduw_cmmu helper_le_lduw_cmmu -# define helper_ret_ldsw_cmmu helper_le_ldsw_cmmu -# define helper_ret_ldl_cmmu helper_le_ldl_cmmu -# define helper_ret_ldq_cmmu helper_le_ldq_cmmu #endif =20 uint32_t helper_atomic_cmpxchgb_mmu(CPUArchState *env, target_ulong addr, diff --git a/accel/tcg/cputlb.c b/accel/tcg/cputlb.c index ddd19718bf..f0e4b0aee4 100644 --- a/accel/tcg/cputlb.c +++ b/accel/tcg/cputlb.c @@ -2028,98 +2028,50 @@ void cpu_stq_mmuidx_ra(CPUArchState *env, target_ul= ong addr, uint64_t val, =20 /* Code access functions. */ =20 -static uint64_t full_ldub_cmmu(CPUArchState *env, target_ulong addr, +static uint64_t full_ldub_code(CPUArchState *env, target_ulong addr, TCGMemOpIdx oi, uintptr_t retaddr) { - return load_helper(env, addr, oi, retaddr, MO_8, true, full_ldub_cmmu); + return load_helper(env, addr, oi, retaddr, MO_8, true, full_ldub_code); } =20 -uint8_t helper_ret_ldub_cmmu(CPUArchState *env, target_ulong addr, - TCGMemOpIdx oi, uintptr_t retaddr) +uint32_t cpu_ldub_code(CPUArchState *env, abi_ptr addr) { - return full_ldub_cmmu(env, addr, oi, retaddr); + TCGMemOpIdx oi =3D make_memop_idx(MO_UB, cpu_mmu_index(env, true)); + return full_ldub_code(env, addr, oi, 0); } =20 -int8_t helper_ret_ldsb_cmmu(CPUArchState *env, target_ulong addr, - TCGMemOpIdx oi, uintptr_t retaddr) +static uint64_t full_lduw_code(CPUArchState *env, target_ulong addr, + TCGMemOpIdx oi, uintptr_t retaddr) { - return (int8_t) full_ldub_cmmu(env, addr, oi, retaddr); + return load_helper(env, addr, oi, retaddr, MO_TEUW, true, full_lduw_co= de); } =20 -static uint64_t full_le_lduw_cmmu(CPUArchState *env, target_ulong addr, - TCGMemOpIdx oi, uintptr_t retaddr) +uint32_t cpu_lduw_code(CPUArchState *env, abi_ptr addr) { - return load_helper(env, addr, oi, retaddr, MO_LEUW, true, - full_le_lduw_cmmu); + TCGMemOpIdx oi =3D make_memop_idx(MO_TEUW, cpu_mmu_index(env, true)); + return full_lduw_code(env, addr, oi, 0); } =20 -uint16_t helper_le_lduw_cmmu(CPUArchState *env, target_ulong addr, - TCGMemOpIdx oi, uintptr_t retaddr) +static uint64_t full_ldl_code(CPUArchState *env, target_ulong addr, + TCGMemOpIdx oi, uintptr_t retaddr) { - return full_le_lduw_cmmu(env, addr, oi, retaddr); + return load_helper(env, addr, oi, retaddr, MO_TEUL, true, full_ldl_cod= e); } =20 -int16_t helper_le_ldsw_cmmu(CPUArchState *env, target_ulong addr, - TCGMemOpIdx oi, uintptr_t retaddr) +uint32_t cpu_ldl_code(CPUArchState *env, abi_ptr addr) { - return (int16_t) full_le_lduw_cmmu(env, addr, oi, retaddr); + TCGMemOpIdx oi =3D make_memop_idx(MO_TEUL, cpu_mmu_index(env, true)); + return full_ldl_code(env, addr, oi, 0); } =20 -static uint64_t full_be_lduw_cmmu(CPUArchState *env, target_ulong addr, - TCGMemOpIdx oi, uintptr_t retaddr) +static uint64_t full_ldq_code(CPUArchState *env, target_ulong addr, + TCGMemOpIdx oi, uintptr_t retaddr) { - return load_helper(env, addr, oi, retaddr, MO_BEUW, true, - full_be_lduw_cmmu); + return load_helper(env, addr, oi, retaddr, MO_TEQ, true, full_ldq_code= ); } =20 -uint16_t helper_be_lduw_cmmu(CPUArchState *env, target_ulong addr, - TCGMemOpIdx oi, uintptr_t retaddr) +uint64_t cpu_ldq_code(CPUArchState *env, abi_ptr addr) { - return full_be_lduw_cmmu(env, addr, oi, retaddr); -} - -int16_t helper_be_ldsw_cmmu(CPUArchState *env, target_ulong addr, - TCGMemOpIdx oi, uintptr_t retaddr) -{ - return (int16_t) full_be_lduw_cmmu(env, addr, oi, retaddr); -} - -static uint64_t full_le_ldul_cmmu(CPUArchState *env, target_ulong addr, - TCGMemOpIdx oi, uintptr_t retaddr) -{ - return load_helper(env, addr, oi, retaddr, MO_LEUL, true, - full_le_ldul_cmmu); -} - -uint32_t helper_le_ldl_cmmu(CPUArchState *env, target_ulong addr, - TCGMemOpIdx oi, uintptr_t retaddr) -{ - return full_le_ldul_cmmu(env, addr, oi, retaddr); -} - -static uint64_t full_be_ldul_cmmu(CPUArchState *env, target_ulong addr, - TCGMemOpIdx oi, uintptr_t retaddr) -{ - return load_helper(env, addr, oi, retaddr, MO_BEUL, true, - full_be_ldul_cmmu); -} - -uint32_t helper_be_ldl_cmmu(CPUArchState *env, target_ulong addr, - TCGMemOpIdx oi, uintptr_t retaddr) -{ - return full_be_ldul_cmmu(env, addr, oi, retaddr); -} - -uint64_t helper_le_ldq_cmmu(CPUArchState *env, target_ulong addr, - TCGMemOpIdx oi, uintptr_t retaddr) -{ - return load_helper(env, addr, oi, retaddr, MO_LEQ, true, - helper_le_ldq_cmmu); -} - -uint64_t helper_be_ldq_cmmu(CPUArchState *env, target_ulong addr, - TCGMemOpIdx oi, uintptr_t retaddr) -{ - return load_helper(env, addr, oi, retaddr, MO_BEQ, true, - helper_be_ldq_cmmu); + TCGMemOpIdx oi =3D make_memop_idx(MO_TEQ, cpu_mmu_index(env, true)); + return full_ldq_code(env, addr, oi, 0); } diff --git a/docs/devel/loads-stores.rst b/docs/devel/loads-stores.rst index c74cd090e6..8a5bc912a5 100644 --- a/docs/devel/loads-stores.rst +++ b/docs/devel/loads-stores.rst @@ -171,8 +171,6 @@ more in line with the other memory access functions. =20 load: ``helper_{endian}_ld{sign}{size}_mmu(env, addr, opindex, retaddr)`` =20 -load (code): ``helper_{endian}_ld{sign}{size}_cmmu(env, addr, opindex, ret= addr)`` - store: ``helper_{endian}_st{size}_mmu(env, addr, val, opindex, retaddr)`` =20 ``sign`` @@ -192,7 +190,7 @@ store: ``helper_{endian}_st{size}_mmu(env, addr, val, o= pindex, retaddr)`` - ``ret`` : target endianness =20 Regexes for git grep - - ``\`` + - ``\`` - ``\`` =20 ``address_space_*`` --=20 2.20.1 From nobody Sat May 4 23:35:41 2024 Delivered-To: importer@patchew.org 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; 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 ARC-Seal: i=1; a=rsa-sha256; t=1576534447; cv=none; d=zohomail.com; s=zohoarc; b=F2YIkl5JygbXpjpjCrJLK6gGKTeCEnu4m2JImj8GjDSxnpkEENbw6y8JeZ9Lc/Dg/8zZTr5Bc/ZUHQMvxMOsUmFejx6az360QfTuRO0RyhcmjN/qDHak/w2dnF+raruqcmis8iOmiL7b4jVJmmzrMFYONcEBGvgPYy+eohXOB50= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1576534447; h=Content-Transfer-Encoding:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=IvU8cEi4DBw99OHU9o8JrqkePPDwEm7ICJM03idOP4o=; b=DL14PP/7UoY9cqP3rocriDa6xlbt5UHge0xcE/tJSK9cjRB7sHXgM6kP/ZTgXg8QBfWXakaNHivJcc+imMv8osAfnqTXzmLxw49DD2M3RN+kRzsmFmVIyLd+OR42Beenh94MP4yeuLUV5nMiPuzla2f10zM06XqO6qlWZWfpTBg= ARC-Authentication-Results: i=1; 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 header.from= (p=none dis=none) header.from= Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1576534447477411.4653942826858; Mon, 16 Dec 2019 14:14:07 -0800 (PST) Received: from localhost ([::1]:60634 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1igycv-0006mg-VH for importer@patchew.org; Mon, 16 Dec 2019 17:14:05 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:36696) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1igybA-0004wn-QB for qemu-devel@nongnu.org; Mon, 16 Dec 2019 17:12:18 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1igyb8-000717-HK for qemu-devel@nongnu.org; Mon, 16 Dec 2019 17:12:16 -0500 Received: from mail-pl1-x644.google.com ([2607:f8b0:4864:20::644]:40699) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1igyb8-00070V-9F for qemu-devel@nongnu.org; Mon, 16 Dec 2019 17:12:14 -0500 Received: by mail-pl1-x644.google.com with SMTP id g6so5111554plp.7 for ; Mon, 16 Dec 2019 14:12:14 -0800 (PST) Received: from localhost.localdomain ([2605:e000:c74f:dc00:6838:d2b2:17e2:8445]) by smtp.gmail.com with ESMTPSA id d6sm529767pjl.8.2019.12.16.14.12.11 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 16 Dec 2019 14:12:12 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=from:to:subject:date:message-id:in-reply-to:references:mime-version :content-transfer-encoding; bh=IvU8cEi4DBw99OHU9o8JrqkePPDwEm7ICJM03idOP4o=; b=X84hW1CBqF/Qt5Tevy/tTF4UA9n7PO0Z3vgmQYrpvy1qKIpCCErsjJMZvQUB5m+r6Z AKHO6B+N1LEh8GeKjRZ6WTbd21BlAJNiQ6KdfvktdCQCvz0SgwuQ/+H8ErZJ9pQ9LVpD r9R0SgFhf6dJ4+QQVM8GbRDctnDi9KX+Il8eHOLDBhgsZM9vwRCpK9SH5cD2xKZANZqm 5dnMwPrnG3qAsI3mjxpCH0yc34vsYrUyL/UtNVj/sAoLIRa4HYehmyCSoFRf+nvWcWKd yO7cn1I17SRlxy7ojxRC7vZXq6dWsS8OEZOEJlpG6j9Pij9eOdE5MgqhPhy/hf7pEHNt 7vAA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=IvU8cEi4DBw99OHU9o8JrqkePPDwEm7ICJM03idOP4o=; b=sFFTKs8aRaRKe37a37LB9UtFVQCDd6UGHTEKMrI9nKLwB73ZZKZf3LgksKlGPP5Yrg ZtTLFWjkJri3wXDV+c9P1C25OoTmgMTmvPac36qcLPPgxvsO8vRtP1YzHNjFqONhunS9 AZGrXb9x0UnMbx9ukQA34h2jVIOLX5iyhRbw9YidCGs1TyRUkqgCaMrrZwHLb763G7Ft ZS/NRK+XlA3goc9TSPnyKGE+4VPdUI2oJhKZjD4xUv2bHX5ISKvrCf+wqXJBxQ/WYE5u 3ymCgyNIisD1CZXglISkyVhcAhp84KdVkN7GKed5pbboo6mmoEi++xwX2UALe8E0TFCf q0Iw== X-Gm-Message-State: APjAAAWbFxcQF0zNuwj4pmTCh9ILDM2x4fuLbMRLro4buxQ0u9bfGWAp K3S4uzr8lCjURA/1RP1wmtDjWyoaBio= X-Google-Smtp-Source: APXvYqxXOcLQqpI99Q6PpO5ILZKsyw/o7WSjv6bGUrZuSvbpf+9e776wpMffM5wx1kN5ffWat0TwhA== X-Received: by 2002:a17:90a:8a0c:: with SMTP id w12mr1894920pjn.61.1576534332567; Mon, 16 Dec 2019 14:12:12 -0800 (PST) From: Richard Henderson To: qemu-devel@nongnu.org Subject: [PATCH v2 07/28] cputlb: Provide cpu_(ld, st}*_mmuidx_ra for user-only Date: Mon, 16 Dec 2019 12:11:37 -1000 Message-Id: <20191216221158.29572-8-richard.henderson@linaro.org> X-Mailer: git-send-email 2.20.1 In-Reply-To: <20191216221158.29572-1-richard.henderson@linaro.org> References: <20191216221158.29572-1-richard.henderson@linaro.org> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2607:f8b0:4864:20::644 X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 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" X-ZohoMail-DKIM: fail (Header signature does not verify) Content-Type: text/plain; charset="utf-8" This finishes the new interface began with the previous patch. Document the interface and deprecate MMU_MODE_SUFFIX. Signed-off-by: Richard Henderson Reviewed-by: Alex Benn=C3=A9e --- include/exec/cpu_ldst.h | 80 +++++++++++++- docs/devel/loads-stores.rst | 211 ++++++++++++++++++++++++++---------- 2 files changed, 230 insertions(+), 61 deletions(-) diff --git a/include/exec/cpu_ldst.h b/include/exec/cpu_ldst.h index ef59ed61e4..41b98ba801 100644 --- a/include/exec/cpu_ldst.h +++ b/include/exec/cpu_ldst.h @@ -25,9 +25,13 @@ * * The syntax for the accessors is: * - * load: cpu_ld{sign}{size}_{mmusuffix}(env, ptr) + * load: cpu_ld{sign}{size}_{mmusuffix}(env, ptr) + * cpu_ld{sign}{size}_{mmusuffix}_ra(env, ptr, retaddr) + * cpu_ld{sign}{size}_mmuidx_ra(env, ptr, mmu_idx, retaddr) * - * store: cpu_st{sign}{size}_{mmusuffix}(env, ptr, val) + * store: cpu_st{size}_{mmusuffix}(env, ptr, val) + * cpu_st{size}_{mmusuffix}_ra(env, ptr, val, retaddr) + * cpu_st{size}_mmuidx_ra(env, ptr, val, mmu_idx, retaddr) * * sign is: * (empty): for 32 and 64 bit sizes @@ -40,9 +44,10 @@ * l: 32 bits * q: 64 bits * - * mmusuffix is one of the generic suffixes "data" or "code", or - * (for softmmu configs) a target-specific MMU mode suffix as defined - * in target cpu.h. + * mmusuffix is one of the generic suffixes "data" or "code", or "mmuidx". + * The "mmuidx" suffix carries an extra mmu_idx argument that specifies + * the index to use; the "data" and "code" suffixes take the index from + * cpu_mmu_index(). */ #ifndef CPU_LDST_H #define CPU_LDST_H @@ -145,6 +150,71 @@ static inline void clear_helper_retaddr(void) #undef MEMSUFFIX #undef CODE_ACCESS =20 +/* + * Provide the same *_mmuidx_ra interface as for softmmu. + * The mmu_idx argument is ignored. + */ + +static inline uint32_t cpu_ldub_mmuidx_ra(CPUArchState *env, abi_ptr addr, + int mmu_idx, uintptr_t ra) +{ + return cpu_ldub_data_ra(env, addr, ra); +} + +static inline uint32_t cpu_lduw_mmuidx_ra(CPUArchState *env, abi_ptr addr, + int mmu_idx, uintptr_t ra) +{ + return cpu_lduw_data_ra(env, addr, ra); +} + +static inline uint32_t cpu_ldl_mmuidx_ra(CPUArchState *env, abi_ptr addr, + int mmu_idx, uintptr_t ra) +{ + return cpu_ldl_data_ra(env, addr, ra); +} + +static inline uint64_t cpu_ldq_mmuidx_ra(CPUArchState *env, abi_ptr addr, + int mmu_idx, uintptr_t ra) +{ + return cpu_ldq_data_ra(env, addr, ra); +} + +static inline int cpu_ldsb_mmuidx_ra(CPUArchState *env, abi_ptr addr, + int mmu_idx, uintptr_t ra) +{ + return cpu_ldsb_data_ra(env, addr, ra); +} + +static inline int cpu_ldsw_mmuidx_ra(CPUArchState *env, abi_ptr addr, + int mmu_idx, uintptr_t ra) +{ + return cpu_ldsw_data_ra(env, addr, ra); +} + +static inline void cpu_stb_mmuidx_ra(CPUArchState *env, abi_ptr addr, + uint32_t val, int mmu_idx, uintptr_t = ra) +{ + cpu_stb_data_ra(env, addr, val, ra); +} + +static inline void cpu_stw_mmuidx_ra(CPUArchState *env, abi_ptr addr, + uint32_t val, int mmu_idx, uintptr_t = ra) +{ + cpu_stw_data_ra(env, addr, val, ra); +} + +static inline void cpu_stl_mmuidx_ra(CPUArchState *env, abi_ptr addr, + uint32_t val, int mmu_idx, uintptr_t = ra) +{ + cpu_stl_data_ra(env, addr, val, ra); +} + +static inline void cpu_stq_mmuidx_ra(CPUArchState *env, abi_ptr addr, + uint64_t val, int mmu_idx, uintptr_t = ra) +{ + cpu_stq_data_ra(env, addr, val, ra); +} + #else =20 /* Needed for TCG_OVERSIZED_GUEST */ diff --git a/docs/devel/loads-stores.rst b/docs/devel/loads-stores.rst index 8a5bc912a5..03aa9e7ff8 100644 --- a/docs/devel/loads-stores.rst +++ b/docs/devel/loads-stores.rst @@ -72,31 +72,34 @@ Regexes for git grep - ``\`` - ``\`` =20 -``cpu_{ld,st}_*`` -~~~~~~~~~~~~~~~~~ +``cpu_{ld,st}*_mmuidx_ra`` +~~~~~~~~~~~~~~~~~~~~~~~~~~ =20 -These functions operate on a guest virtual address. Be aware -that these functions may cause a guest CPU exception to be -taken (e.g. for an alignment fault or MMU fault) which will -result in guest CPU state being updated and control longjumping -out of the function call. They should therefore only be used -in code that is implementing emulation of the target CPU. +These functions operate on a guest virtual address plus a context, +known as a "mmu index" or ``mmuidx``, which controls how that virtual +address is translated. The meaning of the indexes are target specific, +but specifying a particular index might be necessary if, for instance, +the helper requires an "always as non-privileged" access rather that +the default access for the current state of the guest CPU. =20 -These functions may throw an exception (longjmp() back out -to the top level TCG loop). This means they must only be used -from helper functions where the translator has saved all -necessary CPU state before generating the helper function call. -It's usually better to use the ``_ra`` variants described below -from helper functions, but these functions are the right choice -for calls made from hooks like the CPU do_interrupt hook or -when you know for certain that the translator had to save all -the CPU state that ``cpu_restore_state()`` would restore anyway. +These functions may cause a guest CPU exception to be taken +(e.g. for an alignment fault or MMU fault) which will result in +guest CPU state being updated and control longjmp'ing out of the +function call. They should therefore only be used in code that is +implementing emulation of the guest CPU. + +The ``retaddr`` parameter is used to control unwinding of the +guest CPU state in case of a guest CPU exception. This is passed +to ``cpu_restore_state()``. Therefore the value should either be 0, +to indicate that the guest CPU state is already synchronized, or +the result of ``GETPC()`` from the top level ``HELPER(foo)`` +function, which is a return address into the generated code. =20 Function names follow the pattern: =20 -load: ``cpu_ld{sign}{size}_{mmusuffix}(env, ptr)`` +load: ``cpu_ld{sign}{size}_mmuidx_ra(env, ptr, mmuidx, retaddr)`` =20 -store: ``cpu_st{size}_{mmusuffix}(env, ptr, val)`` +store: ``cpu_st{size}_mmuidx_ra(env, ptr, val, mmuidx, retaddr)`` =20 ``sign`` - (empty) : for 32 or 64 bit sizes @@ -109,56 +112,151 @@ store: ``cpu_st{size}_{mmusuffix}(env, ptr, val)`` - ``l`` : 32 bits - ``q`` : 64 bits =20 -``mmusuffix`` is one of the generic suffixes ``data`` or ``code``, or -(for softmmu configs) a target-specific MMU mode suffix as defined -in the target's ``cpu.h``. +Regexes for git grep: + - ``\`` + - ``\`` =20 -Regexes for git grep - - ``\`` - - ``\`` +``cpu_{ld,st}*_data_ra`` +~~~~~~~~~~~~~~~~~~~~~~~~ =20 -``cpu_{ld,st}_*_ra`` -~~~~~~~~~~~~~~~~~~~~ - -These functions work like the ``cpu_{ld,st}_*`` functions except -that they also take a ``retaddr`` argument. This extra argument -allows for correct unwinding of any exception that is taken, -and should generally be the result of GETPC() called directly -from the top level HELPER(foo) function (i.e. the return address -in the generated code). +These functions work like the ``cpu_{ld,st}_mmuidx_ra`` functions +except that the ``mmuidx`` parameter is taken from the current mode +of the guest CPU, as determined by ``cpu_mmu_index(env, false)``. =20 These are generally the preferred way to do accesses by guest -virtual address from helper functions; see the documentation -of the non-``_ra`` variants for when those would be better. - -Calling these functions with a ``retaddr`` argument of 0 is -equivalent to calling the non-``_ra`` version of the function. +virtual address from helper functions, unless the access should +be performed with a context other than the default. =20 Function names follow the pattern: =20 -load: ``cpu_ld{sign}{size}_{mmusuffix}_ra(env, ptr, retaddr)`` +load: ``cpu_ld{sign}{size}_data_ra(env, ptr, ra)`` =20 -store: ``cpu_st{sign}{size}_{mmusuffix}_ra(env, ptr, val, retaddr)`` +store: ``cpu_st{size}_data_ra(env, ptr, val, ra)`` + +``sign`` + - (empty) : for 32 or 64 bit sizes + - ``u`` : unsigned + - ``s`` : signed + +``size`` + - ``b`` : 8 bits + - ``w`` : 16 bits + - ``l`` : 32 bits + - ``q`` : 64 bits + +Regexes for git grep: + - ``\`` + - ``\`` + +``cpu_{ld,st}*_data`` +~~~~~~~~~~~~~~~~~~~~~ + +These functions work like the ``cpu_{ld,st}_data_ra`` functions +except that the ``retaddr`` parameter is 0, and thus does not +unwind guest CPU state. + +This means they must only be used from helper functions where the +translator has saved all necessary CPU state. These functions are +the right choice for calls made from hooks like the CPU ``do_interrupt`` +hook or when you know for certain that the translator had to save all +the CPU state anyway. + +Function names follow the pattern: + +load: ``cpu_ld{sign}{size}_data(env, ptr)`` + +store: ``cpu_st{size}_data(env, ptr, val)`` + +``sign`` + - (empty) : for 32 or 64 bit sizes + - ``u`` : unsigned + - ``s`` : signed + +``size`` + - ``b`` : 8 bits + - ``w`` : 16 bits + - ``l`` : 32 bits + - ``q`` : 64 bits =20 Regexes for git grep - - ``\`` - - ``\`` + - ``\`` + - ``\`` =20 -``helper_*_{ld,st}*mmu`` -~~~~~~~~~~~~~~~~~~~~~~~~ +``cpu_ld*_code`` +~~~~~~~~~~~~~~~~ + +These functions perform a read for instruction execution. The ``mmuidx`` +parameter is taken from the current mode of the guest CPU, as determined +by ``cpu_mmu_index(env, true)``. The ``retaddr`` parameter is 0, and +thus does not unwind guest CPU state, because CPU state is always +synchronized while translating instructions. Any guest CPU exception +that is raised will indicate an instruction execution fault rather than +a data read fault. + +In general these functions should not be used directly during translation. +There are wrapper functions that are to be used which also take care of +plugins for tracing. + +Function names follow the pattern: + +load: ``cpu_ld{sign}{size}_code(env, ptr)`` + +``sign`` + - (empty) : for 32 or 64 bit sizes + - ``u`` : unsigned + - ``s`` : signed + +``size`` + - ``b`` : 8 bits + - ``w`` : 16 bits + - ``l`` : 32 bits + - ``q`` : 64 bits + +Regexes for git grep: + - ``\`` + +``translator_ld*`` +~~~~~~~~~~~~~~~~~~ + +These functions are a wrapper for ``cpu_ld*_code`` which also perform +any actions required by any tracing plugins. They are only to be +called during the translator callback ``translate_insn``. + +There is a set of functions ending in ``_swap`` which, if the parameter +is true, returns the value in the endianness that is the reverse of +the guest native endianness, as determined by ``TARGET_WORDS_BIGENDIAN``. + +Function names follow the pattern: + +load: ``translator_ld{sign}{size}(env, ptr)`` + +swap: ``translator_ld{sign}{size}_swap(env, ptr, swap)`` + +``sign`` + - (empty) : for 32 or 64 bit sizes + - ``u`` : unsigned + - ``s`` : signed + +``size`` + - ``b`` : 8 bits + - ``w`` : 16 bits + - ``l`` : 32 bits + - ``q`` : 64 bits + +Regexes for git grep + - ``\`` + +``helper_*_{ld,st}*_mmu`` +~~~~~~~~~~~~~~~~~~~~~~~~~ =20 These functions are intended primarily to be called by the code generated by the TCG backend. They may also be called by target -CPU helper function code. Like the ``cpu_{ld,st}_*_ra`` functions -they perform accesses by guest virtual address; the difference is -that these functions allow you to specify an ``opindex`` parameter -which encodes (among other things) the mmu index to use for the -access. This is necessary if your helper needs to make an access -via a specific mmu index (for instance, an "always as non-privileged" -access) rather than using the default mmu index for the current state -of the guest CPU. +CPU helper function code. Like the ``cpu_{ld,st}_mmuidx_ra`` functions +they perform accesses by guest virtual address, with a given ``mmuidx``. =20 -The ``opindex`` parameter should be created by calling ``make_memop_idx()`= `. +These functions specify an ``opindex`` parameter which encodes +(among other things) the mmu index to use for the access. This parameter +should be created by calling ``make_memop_idx()``. =20 The ``retaddr`` parameter should be the result of GETPC() called directly from the top level HELPER(foo) function (or 0 if no guest CPU state @@ -166,8 +264,9 @@ unwinding is required). =20 **TODO** The names of these functions are a bit odd for historical reasons because they were originally expected to be called only from -within generated code. We should rename them to bring them -more in line with the other memory access functions. +within generated code. We should rename them to bring them more in +line with the other memory access functions. The explicit endianness +is the only feature they have beyond ``*_mmuidx_ra``. =20 load: ``helper_{endian}_ld{sign}{size}_mmu(env, addr, opindex, retaddr)`` =20 --=20 2.20.1 From nobody Sat May 4 23:35:41 2024 Delivered-To: importer@patchew.org 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; 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 ARC-Seal: i=1; a=rsa-sha256; t=1576534776; cv=none; d=zohomail.com; s=zohoarc; b=N23tsM5PBAxoCtwMIExXRvx/6VU5XbnhF+2uUBkkOQ0CkEE2yniqYq5T/8AOp/szhisbX4TDfP3daZgnMZA5ltYfDFopnfVUMA9QW+KjvKCgd+wdmLVc3D75cWcwWhvxKpI8SbNF9ioRtfRViQOHruOxAgrOmzIQstdqPbJDlzo= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1576534776; h=Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=lsCNvFrnH2M18XdHCXW5ZamBsqq1c0FHuOYep4yKETk=; b=L3NkHYomW7zSKPpc9Y1Duh0FplBcqBgsYvECp+VO9ruLxKMQWYofpcJfkujT46g9frHTAAehf3e1FmCAUhO9IqLVSAy5RJ8aCoNcJ1wEoZ4d/n8GH0auMkn+Ky6DwYbX5PvCP2vW1qHGYAoWIMK+veHuETN/a9IZkAApcDI5NC8= ARC-Authentication-Results: i=1; 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 header.from= (p=none dis=none) header.from= Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1576534776338493.6822742259608; Mon, 16 Dec 2019 14:19:36 -0800 (PST) Received: from localhost ([::1]:60746 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1igyiE-0005Go-Fo for importer@patchew.org; Mon, 16 Dec 2019 17:19:34 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:36702) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1igybB-0004xZ-8J for qemu-devel@nongnu.org; Mon, 16 Dec 2019 17:12:18 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1igyb9-00072b-OK for qemu-devel@nongnu.org; Mon, 16 Dec 2019 17:12:17 -0500 Received: from mail-pf1-x441.google.com ([2607:f8b0:4864:20::441]:45680) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1igyb9-00072H-J8 for qemu-devel@nongnu.org; Mon, 16 Dec 2019 17:12:15 -0500 Received: by mail-pf1-x441.google.com with SMTP id 2so6361575pfg.12 for ; Mon, 16 Dec 2019 14:12:15 -0800 (PST) Received: from localhost.localdomain ([2605:e000:c74f:dc00:6838:d2b2:17e2:8445]) by smtp.gmail.com with ESMTPSA id d6sm529767pjl.8.2019.12.16.14.12.12 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 16 Dec 2019 14:12:13 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=lsCNvFrnH2M18XdHCXW5ZamBsqq1c0FHuOYep4yKETk=; b=M1OUPrMEEdTWjq9e9kBnv9dRB2o0OsoH21mIPE3FnQ8a2f4PDm1MY6/3FroKZE1lL3 YrJiUTaITQbM9vJg+H0t2SyHJhWGIB0OPdpYWJ2hcCdIKI8iFAPhejlXi6GPQ8Pp8MWB hDcXQ8ErVaMLkOL99Nrj45rng+IU4UKjPVm5shQGlHz+B0l4SChaXF5r8tZQ3zENvuzW cgzQXsHF53XPVMIuwlKj8nFmDi7n0B+8/sULxt92IyT0lhFbLShF8KtD5yKTBSNRSRo0 ySM5b+5R+JuDbZK+S1Mbv9nFKBaCkNmIS3H+r51SFmAf251hRnkPyeIjKd6DzkYAChWs Kfew== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=lsCNvFrnH2M18XdHCXW5ZamBsqq1c0FHuOYep4yKETk=; b=K93+Pyhr1HkiC6sPEhdceTyN19FIRaX3HWhNSo9+xssjyrcGW+sDAPWMYCPONgzB6G Fc8a/RTkKgZWfDPAjOy2NPSfAtLAXUKSgzEAAtTpDd5t1fK2lkiZY91TzQUUFY5zbHSj v0c/xXyWQt25pkSaGOAytpSgP61y0LQqu5idkFHwansd3IKf8WzyG3bTLF7AiWjPo/h0 t2SF+zwTA+jetayAavqIPVthf9iyvoUUujdptg5DK2KjuxdjmdSlR0eIAZSllvhXBZzt gUeFn7sk3TvncaMySvL/lC1oWMyV6JhGqeJ3d5kMgtnvUfC6uUY3gJkvxtXYUu4ekb9f ecNA== X-Gm-Message-State: APjAAAWNE1RUAbluk3yjj87RaeQ4o7WGmGd9LGFcbXYUwZsxqkKGtVba g7bAHUYO1MuVjtqOMEcOBZR5pQkYP+A= X-Google-Smtp-Source: APXvYqz1pwc5LRanoNAd12hu9TKM78dWDZv3oCTgMt9WgmRX4jUUnaIXjAHpaFhl+SG8SlR5YwoI4w== X-Received: by 2002:a63:2ccc:: with SMTP id s195mr20644457pgs.75.1576534334271; Mon, 16 Dec 2019 14:12:14 -0800 (PST) From: Richard Henderson To: qemu-devel@nongnu.org Subject: [PATCH v2 08/28] target/i386: Use cpu_*_mmuidx_ra instead of templates Date: Mon, 16 Dec 2019 12:11:38 -1000 Message-Id: <20191216221158.29572-9-richard.henderson@linaro.org> X-Mailer: git-send-email 2.20.1 In-Reply-To: <20191216221158.29572-1-richard.henderson@linaro.org> References: <20191216221158.29572-1-richard.henderson@linaro.org> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2607:f8b0:4864:20::441 X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Paolo Bonzini , Eduardo Habkost Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: fail (Header signature does not verify) Content-Type: text/plain; charset="utf-8" Do not use exec/cpu_ldst_{,useronly_}template.h directly, but instead use the functional interface. Cc: Eduardo Habkost Acked-by: Paolo Bonzini Signed-off-by: Richard Henderson Reviewed-by: Alex Benn=C3=A9e --- target/i386/seg_helper.c | 56 ++++++++++++++++++++-------------------- 1 file changed, 28 insertions(+), 28 deletions(-) diff --git a/target/i386/seg_helper.c b/target/i386/seg_helper.c index 87a627f9dc..b96de068ca 100644 --- a/target/i386/seg_helper.c +++ b/target/i386/seg_helper.c @@ -37,37 +37,37 @@ # define LOG_PCALL_STATE(cpu) do { } while (0) #endif =20 -#ifdef CONFIG_USER_ONLY -#define MEMSUFFIX _kernel -#define DATA_SIZE 1 -#include "exec/cpu_ldst_useronly_template.h" +/* + * TODO: Convert callers to compute cpu_mmu_index_kernel once + * and use *_mmuidx_ra directly. + */ +#define cpu_ldub_kernel_ra(e, p, r) \ + cpu_ldub_mmuidx_ra(e, p, cpu_mmu_index_kernel(e), r) +#define cpu_lduw_kernel_ra(e, p, r) \ + cpu_lduw_mmuidx_ra(e, p, cpu_mmu_index_kernel(e), r) +#define cpu_ldl_kernel_ra(e, p, r) \ + cpu_ldl_mmuidx_ra(e, p, cpu_mmu_index_kernel(e), r) +#define cpu_ldq_kernel_ra(e, p, r) \ + cpu_ldq_mmuidx_ra(e, p, cpu_mmu_index_kernel(e), r) =20 -#define DATA_SIZE 2 -#include "exec/cpu_ldst_useronly_template.h" +#define cpu_stb_kernel_ra(e, p, v, r) \ + cpu_stb_mmuidx_ra(e, p, v, cpu_mmu_index_kernel(e), r) +#define cpu_stw_kernel_ra(e, p, v, r) \ + cpu_stw_mmuidx_ra(e, p, v, cpu_mmu_index_kernel(e), r) +#define cpu_stl_kernel_ra(e, p, v, r) \ + cpu_stl_mmuidx_ra(e, p, v, cpu_mmu_index_kernel(e), r) +#define cpu_stq_kernel_ra(e, p, v, r) \ + cpu_stq_mmuidx_ra(e, p, v, cpu_mmu_index_kernel(e), r) =20 -#define DATA_SIZE 4 -#include "exec/cpu_ldst_useronly_template.h" +#define cpu_ldub_kernel(e, p) cpu_ldub_kernel_ra(e, p, 0) +#define cpu_lduw_kernel(e, p) cpu_lduw_kernel_ra(e, p, 0) +#define cpu_ldl_kernel(e, p) cpu_ldl_kernel_ra(e, p, 0) +#define cpu_ldq_kernel(e, p) cpu_ldq_kernel_ra(e, p, 0) =20 -#define DATA_SIZE 8 -#include "exec/cpu_ldst_useronly_template.h" -#undef MEMSUFFIX -#else -#define CPU_MMU_INDEX (cpu_mmu_index_kernel(env)) -#define MEMSUFFIX _kernel -#define DATA_SIZE 1 -#include "exec/cpu_ldst_template.h" - -#define DATA_SIZE 2 -#include "exec/cpu_ldst_template.h" - -#define DATA_SIZE 4 -#include "exec/cpu_ldst_template.h" - -#define DATA_SIZE 8 -#include "exec/cpu_ldst_template.h" -#undef CPU_MMU_INDEX -#undef MEMSUFFIX -#endif +#define cpu_stb_kernel(e, p, v) cpu_stb_kernel_ra(e, p, v, 0) +#define cpu_stw_kernel(e, p, v) cpu_stw_kernel_ra(e, p, v, 0) +#define cpu_stl_kernel(e, p, v) cpu_stl_kernel_ra(e, p, v, 0) +#define cpu_stq_kernel(e, p, v) cpu_stq_kernel_ra(e, p, v, 0) =20 /* return non zero if error */ static inline int load_segment_ra(CPUX86State *env, uint32_t *e1_ptr, --=20 2.20.1 From nobody Sat May 4 23:35:41 2024 Delivered-To: importer@patchew.org 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; 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=1576534937; cv=none; d=zohomail.com; s=zohoarc; b=bpHyvDladcSgBFSmrCE0DI3LLghO58Sya9SYzw+ti312W8royIwMSuK02gnjVzHh92WmEKwFU302kUo+678Gy971SL1bFnye9/8T+vxmXv6gCn6DuOBNsNRCZcMKljOSmGNtTufYxb6SRt7nTLRORTIrbtovv6pwEcfj3aRM6zQ= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1576534937; h=Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=Ze57z0hQRkPeItK9rFzUaBjTkCWGyBz1l0/XVJKtpEA=; b=YhNisIox+O/2J67Ub6vzshStPgGe3+E+l2lC20Idvdo6b7lSZxbt4YBKRrvij3mUxVZiVsdv3OmZjvd6b+uJnhBSvKayiyGybr6gi9+MLJg/vqAbUbFFeuTueWLqa7asi8oDR15yMa/76l+n9zUnjk7BjlX41NhEF3kxQb5p9MY= 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) header.from= Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1576534937560810.6974489409711; Mon, 16 Dec 2019 14:22:17 -0800 (PST) Received: from localhost ([::1]:60808 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1igykp-0000N3-TY for importer@patchew.org; Mon, 16 Dec 2019 17:22:15 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:36724) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1igybC-0004zC-6t for qemu-devel@nongnu.org; Mon, 16 Dec 2019 17:12:19 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1igybB-00073j-8s for qemu-devel@nongnu.org; Mon, 16 Dec 2019 17:12:18 -0500 Received: from mail-pl1-x643.google.com ([2607:f8b0:4864:20::643]:37530) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1igybB-00072y-3j for qemu-devel@nongnu.org; Mon, 16 Dec 2019 17:12:17 -0500 Received: by mail-pl1-x643.google.com with SMTP id c23so5121991plz.4 for ; Mon, 16 Dec 2019 14:12:17 -0800 (PST) Received: from localhost.localdomain ([2605:e000:c74f:dc00:6838:d2b2:17e2:8445]) by smtp.gmail.com with ESMTPSA id d6sm529767pjl.8.2019.12.16.14.12.14 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 16 Dec 2019 14:12:15 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=Ze57z0hQRkPeItK9rFzUaBjTkCWGyBz1l0/XVJKtpEA=; b=Hy+f+QRgGSc2OUx7cJ6809mCoVGKpGvLx6LOSbFFqqacS7CfrjZF4V9wKnEGvfTLnb UlLN7WGxUjjVeQzSYSRkxNm4jR2MSWH4RxbfdscbK/M3A16PR5SvitUHEpFZmZTDjJpC 8X8zwzTr8FwlCRlCRrmEZoEoVnC1Ik1YdxISCPnQHUWxOUf5idBqzYxIviCtpaQ9cO+I IiKWMg6IV8G4gK+pF8t+azPNnrh/n8Ef6JmaE8nzPM6xtHrL+IKHHb0fvb178ItVtBz7 tTrY3OfLcswHI0EqhXbBBYRZqXh2+Q09GFURnfoiF12leFG/K3DiQnA8hnm3gr4mk8A8 50rA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=Ze57z0hQRkPeItK9rFzUaBjTkCWGyBz1l0/XVJKtpEA=; b=FQrY6aEbEKghQMyOD3cRWZQKMtaSbRXO7EnoA1cKcLh/KD3H96Lwxo+28+j8RZ4/yi bjgjoEECrhvFqiQLGKICgvdw16YTdVPhraCyZHQIL0jp4Bk4p1qpMZfAs2mv2O/jsGb6 4eca2HCcmBU4h3U6YrOy+mqyd7o8sghPwQTwS7V4opcT9sa6ZujORFR8zoqrCQIbKHqU zWtFukgyWiL++WCuz0SMYYvRuHKgaTA72nrVNkJUMy7oZFFGIj2Mr+GDQY8dy1AbN7kw qHTvlrwjUwT+cI44W98NsWYmY4PuCrCjxAO9Bfot22Cz4LtPTUjoYA+REA4GplmLZnpk ZhHw== X-Gm-Message-State: APjAAAWmJgL+9zg2mgxW3DuzXHhrqq/W9JBkGaqtmJ39Z37JZzwSnDYc lg+4uXu8qI9ZtE1yTlLe8kA/T7YhcG0= X-Google-Smtp-Source: APXvYqxaB3zRyL2yelTNFkq9GX5mgKihtEPsFpfCXXnhcB5PpbX0QLlLX+cmN+iMfUxkBFpW4bEjWw== X-Received: by 2002:a17:90b:85:: with SMTP id bb5mr1938113pjb.22.1576534335917; Mon, 16 Dec 2019 14:12:15 -0800 (PST) From: Richard Henderson To: qemu-devel@nongnu.org Subject: [PATCH v2 09/28] target/s390x: Include tcg.h in mem_helper.c Date: Mon, 16 Dec 2019 12:11:39 -1000 Message-Id: <20191216221158.29572-10-richard.henderson@linaro.org> X-Mailer: git-send-email 2.20.1 In-Reply-To: <20191216221158.29572-1-richard.henderson@linaro.org> References: <20191216221158.29572-1-richard.henderson@linaro.org> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2607:f8b0:4864:20::643 X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: David Hildenbrand Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: pass (identity @linaro.org) Content-Type: text/plain; charset="utf-8" Code movement in an upcoming patch will show that this file was implicitly depending on tcg.h being included indirectly. Reviewed-by: David Hildenbrand Signed-off-by: Richard Henderson Reviewed-by: Alex Benn=C3=A9e --- target/s390x/mem_helper.c | 1 + 1 file changed, 1 insertion(+) diff --git a/target/s390x/mem_helper.c b/target/s390x/mem_helper.c index 2325767f17..57ce17c252 100644 --- a/target/s390x/mem_helper.c +++ b/target/s390x/mem_helper.c @@ -27,6 +27,7 @@ #include "exec/cpu_ldst.h" #include "qemu/int128.h" #include "qemu/atomic128.h" +#include "tcg.h" =20 #if !defined(CONFIG_USER_ONLY) #include "hw/s390x/storage-keys.h" --=20 2.20.1 From nobody Sat May 4 23:35:41 2024 Delivered-To: importer@patchew.org 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; 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=1576534775; cv=none; d=zohomail.com; s=zohoarc; b=LAemXcKTmcjY/j+WVSxvGcMMuHzui8bzux9Y7zXelPhuv9poyXI8lOOdqHsXIdidyH/k0VeSpBKLhaBGd3j1JjkBndNIRAS+t/OB2wUOin6upHQCqRPa81xO574Ms5zcobahVqNW4kitW5VHNwJqtYQj7W33N/XBOpwpzMt5nPg= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1576534775; h=Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=ZD30K4OON5Rr10XGqonKOfQz8NelurszVZDAGc9w8Wk=; b=SXxPKezALH4l4PsrEDCC8UH4bBx3WXhIyK2ZD01Y97cDcW6Xub+1JvI6T0M7W6yS1ejPdRLybPZPHJdhhJlYsF4TW2I7qyiCW52s0ozQOyKmsbxz3RI9CdcOLuLr/urGLFqooucOpIv9wjGM73iyygd4fDB6IBjYSSNk6ftJmxg= 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) header.from= Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1576534775516335.9694843806951; Mon, 16 Dec 2019 14:19:35 -0800 (PST) Received: from localhost ([::1]:60742 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1igyiD-0005E8-JI for importer@patchew.org; Mon, 16 Dec 2019 17:19:33 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:36752) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1igybD-00051r-Mz for qemu-devel@nongnu.org; Mon, 16 Dec 2019 17:12:20 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1igybC-00076r-Kf for qemu-devel@nongnu.org; Mon, 16 Dec 2019 17:12:19 -0500 Received: from mail-pf1-x442.google.com ([2607:f8b0:4864:20::442]:35600) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1igybC-000749-Fc for qemu-devel@nongnu.org; Mon, 16 Dec 2019 17:12:18 -0500 Received: by mail-pf1-x442.google.com with SMTP id b19so6386992pfo.2 for ; Mon, 16 Dec 2019 14:12:18 -0800 (PST) Received: from localhost.localdomain ([2605:e000:c74f:dc00:6838:d2b2:17e2:8445]) by smtp.gmail.com with ESMTPSA id d6sm529767pjl.8.2019.12.16.14.12.16 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 16 Dec 2019 14:12:16 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=ZD30K4OON5Rr10XGqonKOfQz8NelurszVZDAGc9w8Wk=; b=hUewS94vJaFiLoGTYHAW6I425qQZX8O5Dh0yStRd1pOpftvLaClBLaFzXIwJe/VgGi ENASUAZ2OVz/d/YyA7HDk/JcJd0e+5Q0PWmc4gUVHH3orp8enAEEBFB2wWmRu40Df6TZ dmHb+3jUkvd774DGb1Jp8FNFjONM/U4XJOJr+paLh1Omm+bqogvpqIyG1cZ7ABOiyVnE wZ+01m4dXuM/SZXV/E70No74XZjvLSg/6dr+DMdt+5mkzPh5ykuRw54cunsZOhmgTiAj pvmCoCWaI7mAr7xNMahNYSuMOIBcXMoFJQnoXnps++FAgIArnUG3jf/o0vQxufU9g5bg JkwA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=ZD30K4OON5Rr10XGqonKOfQz8NelurszVZDAGc9w8Wk=; b=PJK+f/NqL62hUl91X8NZYMlQ2P3uwlT0g4o9aozwMtoJZ7s8apm3664O8OQehvPW45 vLnJ2Pe/mH4+tmml+8fQW2N/UvQA7JnNp+CNLVdOTzXLlVdnTlBdDgW8mCgXlqoxcvTr U2WweP1+fDJB8syxJROvDW2x7/qrbGX6rjdODj+saZRqbzAZuPrlAm6CcY+iWnoIOrqE DdeAjv/m8VXPJ3rWRWh8eA3GdqnVHMlsvTUiDnGhg/GNKrwrgYzUj64mXDVDQHZ3ko0B drJgBNmMVi87W2iM2pPQjOQbEc0WWnh59oiiYI/IK7j8VhsJna5XkBVEscAN80EaNBMD gdIA== X-Gm-Message-State: APjAAAXdrPHhIN8xWsFFDxteyan5WyUOZ/JV+f06ZbOjHcBMG0uK+sU+ fOHc5129VGE3qgCAVOvBCd7kBR3N9qI= X-Google-Smtp-Source: APXvYqw5LYqS3W8VaymriZeh9znnLBHhaiP2G3zLYYa+aVfvGRkcFXxd1JEobQDyRQwrOFNVfX4TKg== X-Received: by 2002:a62:1488:: with SMTP id 130mr18399171pfu.238.1576534337360; Mon, 16 Dec 2019 14:12:17 -0800 (PST) From: Richard Henderson To: qemu-devel@nongnu.org Subject: [PATCH v2 10/28] target/arm: Include tcg.h in sve_helper.c Date: Mon, 16 Dec 2019 12:11:40 -1000 Message-Id: <20191216221158.29572-11-richard.henderson@linaro.org> X-Mailer: git-send-email 2.20.1 In-Reply-To: <20191216221158.29572-1-richard.henderson@linaro.org> References: <20191216221158.29572-1-richard.henderson@linaro.org> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2607:f8b0:4864:20::442 X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Peter Maydell Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: pass (identity @linaro.org) Content-Type: text/plain; charset="utf-8" Code movement in an upcoming patch will show that this file was implicitly depending on tcg.h being included indirectly. Cc: Peter Maydell Signed-off-by: Richard Henderson Reviewed-by: Alex Benn=C3=A9e --- target/arm/sve_helper.c | 1 + 1 file changed, 1 insertion(+) diff --git a/target/arm/sve_helper.c b/target/arm/sve_helper.c index fc0c1755d2..83cc7f5bb5 100644 --- a/target/arm/sve_helper.c +++ b/target/arm/sve_helper.c @@ -25,6 +25,7 @@ #include "exec/helper-proto.h" #include "tcg/tcg-gvec-desc.h" #include "fpu/softfloat.h" +#include "tcg.h" =20 =20 /* Note that vector data is stored in host-endian 64-bit chunks, --=20 2.20.1 From nobody Sat May 4 23:35:41 2024 Delivered-To: importer@patchew.org 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; 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=1576534987; cv=none; d=zohomail.com; s=zohoarc; b=R/S49/38/UbsSpRpW1l0cp2MdNZJGMTW+rDEfaPUsZq1rguJMul3ZwUkS9IIyli8GrmD8uudNEuRn1tZqYsBl7WYqrsZSitOEmC7oR8N3TS7rjbosgOzzw/kwkpqx6bUx/BNlUdqHa0lhWA2eYp+tbZJ5a1BhR4BX655KOTEdaQ= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1576534987; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=mulTmRahmIOLlqTACfJOIL2mZII2b44d4f9C0tQdiJE=; b=Njb7bSteaPxg7WtUz7MzgYlcNPS1rOv3ZrmCjBQd0/2HkN7nloVVec6N5xRArdhk2/z26va96Zt9xYRXDP8MAEDAXUh317onsgigP4PtiulKNSmVgoYoGWL3A8kRJzH+eszm0h/KxxvD7dXbFLRWvZ9YiHN4UoYyUdJJBVtIkQg= 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) header.from= Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1576534987834676.3208038305206; Mon, 16 Dec 2019 14:23:07 -0800 (PST) Received: from localhost ([::1]:60826 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1igyle-0001Wy-At for importer@patchew.org; Mon, 16 Dec 2019 17:23:06 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:36771) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1igybF-00054h-8V for qemu-devel@nongnu.org; Mon, 16 Dec 2019 17:12:22 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1igybE-00079k-95 for qemu-devel@nongnu.org; Mon, 16 Dec 2019 17:12:21 -0500 Received: from mail-pl1-x643.google.com ([2607:f8b0:4864:20::643]:40699) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1igybE-00078L-43 for qemu-devel@nongnu.org; Mon, 16 Dec 2019 17:12:20 -0500 Received: by mail-pl1-x643.google.com with SMTP id g6so5111665plp.7 for ; Mon, 16 Dec 2019 14:12:20 -0800 (PST) Received: from localhost.localdomain ([2605:e000:c74f:dc00:6838:d2b2:17e2:8445]) by smtp.gmail.com with ESMTPSA id d6sm529767pjl.8.2019.12.16.14.12.17 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 16 Dec 2019 14:12:18 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=mulTmRahmIOLlqTACfJOIL2mZII2b44d4f9C0tQdiJE=; b=n/bkgiLtOwKptsu5Yu9ZypFXniYthcB8JwOUGpITS6/I0bEJ6z1+vRkNQXiqHRMR0Z yjQlWuCfd6HiW4SHebq+Adc7dmAVvvtlpabLmZ98E14xHoIALl7ZhBD5UXcBEujkSb45 mVwkwdC4Bi91POt177JnsVWOkIVdydQZ1q5uhCHEZwpQn5Sv+giej9Ir9JGyqggOEYNT WaWehvRr0Q/a2EVbP7QjAUkhy7mXa+Of+51XthfKYCmK6LOoUtzI/IXb9KHiS3mboM7r 0O7zqxQoWXPe0H956pmeKJm+fD5KUNF9FREPzFpy/bE34YnjzniRhCuiXGPRQXkSQp5Y B8Ug== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=mulTmRahmIOLlqTACfJOIL2mZII2b44d4f9C0tQdiJE=; b=AVXy/UOHE4P24NkFHAFUVl4YoAy9NpD078srq4V7wOx0si5T9MIzKsbWYo2Z7RvdDU sLGpyDMHAgDf7692zizGpNirN7UGbNzkPKTLB1m0GNw/f64u4SVSiOomLDvEhz2K5sgP YCXZPyvMJdwEG32B4yXrgYWi/dT/1RRBV81xMSYAWetH8LX1SqOGKHFoihWK9ukgAPe1 xXM520A0ImZFCEGAORUtTHb6bvQB6VR0HXJU3GO2KQTbUBJCvIBMxa7ZhbfcX904YgPd lOuKVMH+l3ag0gyR13HlhVRR970saiOrzE5j9S4ku7b+qBNIB27FC6PakRD+qSj/yLWz r7bA== X-Gm-Message-State: APjAAAXfQvqEu1qi3m60WTpBT1Lat0rX3gTa54tSMsBFnr/j8CeDU0+k YgibZhIUelge5JxfYR0nCVUuYhXFu6s= X-Google-Smtp-Source: APXvYqxge64lkPMth3mKLN7x9Jki9FTLCZIO7p++Utw8VHYXsvPAkx0VFwwNWwHXMRmHxj3JU+/nQA== X-Received: by 2002:a17:90a:ead5:: with SMTP id ev21mr1833451pjb.139.1576534338813; Mon, 16 Dec 2019 14:12:18 -0800 (PST) From: Richard Henderson To: qemu-devel@nongnu.org Subject: [PATCH v2 11/28] accel/tcg: Include tcg.h in tcg-runtime.c Date: Mon, 16 Dec 2019 12:11:41 -1000 Message-Id: <20191216221158.29572-12-richard.henderson@linaro.org> X-Mailer: git-send-email 2.20.1 In-Reply-To: <20191216221158.29572-1-richard.henderson@linaro.org> References: <20191216221158.29572-1-richard.henderson@linaro.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2607:f8b0:4864:20::643 X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: =?UTF-8?q?Alex=20Benn=C3=A9e?= Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: pass (identity @linaro.org) Code movement in an upcoming patch will show that this file was implicitly depending on tcg.h being included indirectly. Reviewed-by: Alex Benn=C3=A9e Signed-off-by: Richard Henderson --- accel/tcg/tcg-runtime.c | 1 + 1 file changed, 1 insertion(+) diff --git a/accel/tcg/tcg-runtime.c b/accel/tcg/tcg-runtime.c index 8a1e408e31..4ab2cf7f75 100644 --- a/accel/tcg/tcg-runtime.c +++ b/accel/tcg/tcg-runtime.c @@ -30,6 +30,7 @@ #include "exec/tb-lookup.h" #include "disas/disas.h" #include "exec/log.h" +#include "tcg.h" =20 /* 32-bit helpers */ =20 --=20 2.20.1 From nobody Sat May 4 23:35:41 2024 Delivered-To: importer@patchew.org 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; 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=1576535106; cv=none; d=zohomail.com; s=zohoarc; b=akNobd3b4ywlJhQxFK3xNCSX3emY9vy4k3tSS713QGGxgZ0G0I1Ra+HTTgI+6hCRTs04cmYz0IBZUxDl+j3lPv59Iv3fsEGjujl7JZZXsRUTaQxUZDGWALZNlUBmD0wF/bYPYLkcBPPuk8Af9rurzPbkh7VsGeoHAUp4zBzwpyQ= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1576535106; h=Content-Transfer-Encoding:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=eyI58KOw8f6KjHd513cv2CHH4iBrq42PUmdQAMssFYg=; b=WW/jFb2H8zqmNDZr3n1b0bWYCZzdrNaOkha3sfuXLfbfF2rQ4bvV1ysRw+NYFbZEQnc8ifGRnlJhZ9lB4E3Vz/TTN0BXYchdvvYMiyebkHPk82/K8fU/tTnq4X8JF/U5REssVNx3eX8xL8ycnmqukbcvpe63Vq3Q2W9JrkpymrQ= 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) header.from= Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1576535106521819.55701744562; Mon, 16 Dec 2019 14:25:06 -0800 (PST) Received: from localhost ([::1]:60870 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1igynY-0004L5-M2 for importer@patchew.org; Mon, 16 Dec 2019 17:25:04 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:36794) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1igybG-00056T-Bq for qemu-devel@nongnu.org; Mon, 16 Dec 2019 17:12:23 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1igybF-0007BM-BW for qemu-devel@nongnu.org; Mon, 16 Dec 2019 17:12:22 -0500 Received: from mail-pl1-x641.google.com ([2607:f8b0:4864:20::641]:45932) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1igybF-0007A9-62 for qemu-devel@nongnu.org; Mon, 16 Dec 2019 17:12:21 -0500 Received: by mail-pl1-x641.google.com with SMTP id b22so2172704pls.12 for ; Mon, 16 Dec 2019 14:12:21 -0800 (PST) Received: from localhost.localdomain ([2605:e000:c74f:dc00:6838:d2b2:17e2:8445]) by smtp.gmail.com with ESMTPSA id d6sm529767pjl.8.2019.12.16.14.12.18 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 16 Dec 2019 14:12:19 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=from:to:subject:date:message-id:in-reply-to:references:mime-version :content-transfer-encoding; bh=eyI58KOw8f6KjHd513cv2CHH4iBrq42PUmdQAMssFYg=; b=y0zu4hd2MvQjbCLfdNsD+C6dYMaWZP37eth0V4UPELQzZbDPlQu96pEDFRSUZaV2aW s3g19xjW0pE4Q6JNNcYXCFEiCTIJFSn7/Lp6GJFarT5bfu5PwKL7iE/svpZCHmL0A6NY IZjhFZDNSmmJiNRNfZDRh4OLf/MjkNRWKfQ/+EG7fFlwT479K8cY8i+stvR2DSIX2iDs 5r0Im6ZFVZqpZUSCb28Mf0ruNqQ+plB7dcLaEuCuxoz9GR47GklxFahABRH9ZQWMLGzb uESNbM7sFkVwfmIeU/SDhc0PBhlC9tzukRZQELHMtARYK3esEQj/1ZPO4EpTIieYwPES yIag== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=eyI58KOw8f6KjHd513cv2CHH4iBrq42PUmdQAMssFYg=; b=V/4FfQOgfWoMZPQ8pVf5HX+uz7sP/1p+4OogJDOsB9zzDw6oime6Ki1qG0MJfteANG gpTWsU9tkNJ5imelTFIoI2Thk/InXT4fZiIQlN28NmevXDuMoQdY6vAOU2cRD1beIeUx srkKvNO9smyE0C89im8CyMz9AXbkTu7TSJ+V1gS9smZxQX0yqHT+iXKeMCjfVmS4+2Vy LAy2y/XCyLEEqMoUIgbHASKu3OzLkcSE1ehz/ABqcgGpfpwBT2vmMMA1i2u5GEGx4NVn 0Zaz4b+yiUzlQ8UAmB2NEdUi8TCofRucAcytCzccy2xI5tPbpzEs2v0aSCiEEDhEzOVi U1wg== X-Gm-Message-State: APjAAAUuPhlvXgWZV2BxEAI/Kuu9XFzzLOPltRnlLk9yMqW/D2zuMQtv paHX7glGqUYLCqjkBXP+wQ9zFrBHwWQ= X-Google-Smtp-Source: APXvYqzt8MCVridvyUR2r/VlbVM2yhk7QGym0ND8QLbjSXBVZLeYasemmH9KLxrTEImOtye89YdTqg== X-Received: by 2002:a17:90b:3011:: with SMTP id hg17mr1950393pjb.90.1576534340021; Mon, 16 Dec 2019 14:12:20 -0800 (PST) From: Richard Henderson To: qemu-devel@nongnu.org Subject: [PATCH v2 12/28] linux-user: Include tcg.h in syscall.c Date: Mon, 16 Dec 2019 12:11:42 -1000 Message-Id: <20191216221158.29572-13-richard.henderson@linaro.org> X-Mailer: git-send-email 2.20.1 In-Reply-To: <20191216221158.29572-1-richard.henderson@linaro.org> References: <20191216221158.29572-1-richard.henderson@linaro.org> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2607:f8b0:4864:20::641 X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 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" X-ZohoMail-DKIM: pass (identity @linaro.org) Content-Type: text/plain; charset="utf-8" Code movement in an upcoming patch will show that this file was implicitly depending on tcg.h being included indirectly. Signed-off-by: Richard Henderson Reviewed-by: Alex Benn=C3=A9e --- linux-user/syscall.c | 1 + 1 file changed, 1 insertion(+) diff --git a/linux-user/syscall.c b/linux-user/syscall.c index 171c0caef3..34825f15bf 100644 --- a/linux-user/syscall.c +++ b/linux-user/syscall.c @@ -115,6 +115,7 @@ #include "user/syscall-trace.h" #include "qapi/error.h" #include "fd-trans.h" +#include "tcg.h" =20 #ifndef CLONE_IO #define CLONE_IO 0x80000000 /* Clone io context */ --=20 2.20.1 From nobody Sat May 4 23:35:41 2024 Delivered-To: importer@patchew.org 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; 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=1576534926; cv=none; d=zohomail.com; s=zohoarc; b=Gey+09bSLwvQOFb6Qi6nr9sP7JFLDzXMmSc+gzlp2ZOqjPNY5iAS8ExyZRc3DDrTaG6cZnhkb6LLKzmVUiYwiXk1xm6RMJ1a/OOgBQtXZtIQbKYqK4i8zU03Rb3qOzQrXzAqrIluVe9cwIlqx0+Mr/oMqRO5kpmxTz8LJqrfnfU= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1576534926; h=Content-Transfer-Encoding:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=r5qvsiX5IA+LOMSB6fEkOOIthLDhI8Op7OL9OEMu7no=; b=IL35Z9XWL4gFQ87KTLIMmHfCn0PyALLLPHQ+SxWaxjbnlck6yNgQ3PBsly1QdGjYiJBWdshdJ22XS7suoYsjemjZTvQqZxYXP1r3rGXMIUTc34VqbWMVk+IA/vUKEAAcWzDX64Oqmi12PYZAEEA9GfWwekRs4xN4nkEPP65PV5M= 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) header.from= Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1576534926513574.5064293266032; Mon, 16 Dec 2019 14:22:06 -0800 (PST) Received: from localhost ([::1]:60804 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1igyke-00008z-W6 for importer@patchew.org; Mon, 16 Dec 2019 17:22:05 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:36818) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1igybH-00059C-Sr for qemu-devel@nongnu.org; Mon, 16 Dec 2019 17:12:24 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1igybG-0007Ce-UT for qemu-devel@nongnu.org; Mon, 16 Dec 2019 17:12:23 -0500 Received: from mail-pl1-x642.google.com ([2607:f8b0:4864:20::642]:37530) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1igybG-0007C5-PI for qemu-devel@nongnu.org; Mon, 16 Dec 2019 17:12:22 -0500 Received: by mail-pl1-x642.google.com with SMTP id c23so5122115plz.4 for ; Mon, 16 Dec 2019 14:12:22 -0800 (PST) Received: from localhost.localdomain ([2605:e000:c74f:dc00:6838:d2b2:17e2:8445]) by smtp.gmail.com with ESMTPSA id d6sm529767pjl.8.2019.12.16.14.12.20 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 16 Dec 2019 14:12:20 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=from:to:subject:date:message-id:in-reply-to:references:mime-version :content-transfer-encoding; bh=r5qvsiX5IA+LOMSB6fEkOOIthLDhI8Op7OL9OEMu7no=; b=pzLdvcUsbhr7Gxdt6usq66C11c4ZSJHY+1CXqlvtXmuEIN1xo3nGy2DpysGwd1mASU ySXVXWvCrQO2pQ6hSFH0tQeh30lo3FyPSFV2gvIKfY0X3vmohH3iG2su8d+aKnS1/SLZ snM5VD5SrLI5aelTaxw7z0W1bYfMokv4bbw3H8eEFIOQP94SRmAEHYBYidVnsGyC4R8I b3vUwKDho8XrxkLIkbc9bujEj8LVLV7K592lkWgcaSaOWd9J2ug8KxxukUEW5CPy4wO1 8qpvAV/p5rexM6SFPlxHS+rvOHsObF0bhiLMqfp2sgmwJsD47B3uomqB5XlOHn2Nmi4y yrlg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=r5qvsiX5IA+LOMSB6fEkOOIthLDhI8Op7OL9OEMu7no=; b=Ih79kdkifnJwzPTGRAIiGWIrgpRYOuaJfPaNb/GCeZc6XW3ccTOIGCYYP2ON4iInca /HXvBFpK4zanc0cT0Wg5sKU648lezBJ3v+od512otDDvdPDdDC8DCqaxW1I5+l3PQf7Y 2VI3stRamVkJyyGttqEOXKWQqyrZrDlxGGVlOlmZd3hlAHn21NaZSCxeAEEPnIUQlqPA Rt5aww3HFYYrl2PxWnr3H+rby2QTD+l+uX/E0AcbZHbWRgfRF+jX+2pjhdJTmA1Xzyib 1eHiamWZo6qifa70fzUuvHzmBAnXrKuC/QdyZhfX7n/u6j2qyWCNqDwMqbUsO4cK1AhO Mlbw== X-Gm-Message-State: APjAAAVrQso+9a3qCsnjzsGe/pC5RAqfbaXLOEsExo3ZqF0Kcj42O9Eo Ih0wGOqZdJUdXYr8g8oIRnO9xFA0PNw= X-Google-Smtp-Source: APXvYqyZ06T1Ml/kpEetub8XzCqxeo/nu4OQk3ro7wdlkA1rMnyZsKNn6GbzbQY/SFUMdb3sMpCwMw== X-Received: by 2002:a17:902:d708:: with SMTP id w8mr18959857ply.280.1576534341524; Mon, 16 Dec 2019 14:12:21 -0800 (PST) From: Richard Henderson To: qemu-devel@nongnu.org Subject: [PATCH v2 13/28] linux-user: Include trace-root.h in syscall-trace.h Date: Mon, 16 Dec 2019 12:11:43 -1000 Message-Id: <20191216221158.29572-14-richard.henderson@linaro.org> X-Mailer: git-send-email 2.20.1 In-Reply-To: <20191216221158.29572-1-richard.henderson@linaro.org> References: <20191216221158.29572-1-richard.henderson@linaro.org> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2607:f8b0:4864:20::642 X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 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" X-ZohoMail-DKIM: pass (identity @linaro.org) Content-Type: text/plain; charset="utf-8" Code movement in an upcoming patch will show that this file was implicitly depending on trace-root.h being included beforehand. Signed-off-by: Richard Henderson Reviewed-by: Alex Benn=C3=A9e --- include/user/syscall-trace.h | 2 ++ 1 file changed, 2 insertions(+) diff --git a/include/user/syscall-trace.h b/include/user/syscall-trace.h index 9e60473643..79fd3e5aa9 100644 --- a/include/user/syscall-trace.h +++ b/include/user/syscall-trace.h @@ -10,6 +10,8 @@ #ifndef _SYSCALL_TRACE_H_ #define _SYSCALL_TRACE_H_ =20 +#include "trace-root.h" + /* * These helpers just provide a common place for the various * subsystems that want to track syscalls to put their hooks in. We --=20 2.20.1 From nobody Sat May 4 23:35:41 2024 Delivered-To: importer@patchew.org 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; 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=1576534628; cv=none; d=zohomail.com; s=zohoarc; b=MfPJORqLNWxtOiMUykgLeHcvSibET39eOJz7T/sB35O36Fv/pkm9PKCZP6fefiVwhwb6EEUp754hwRtlNcpnRHbDiOCRmsJ6GNyKfTSjhknQXeU+pNo8NSScx5vmcATX6GWeMw4FO+8FQxVEwYe9jioQXLNSKVd5y5qY1YF3HZg= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1576534628; h=Content-Transfer-Encoding:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=e7D0tfuzoU8uUsVgXAgk/gYVqQ2gabQZXbhCVY3WX4M=; b=PSvOijnIOFbBSJomw47b5Ui3fPSG1pI9sWVvdCwzAYJUl4LCEVCgDBU4hwJ0T6hZkJr/PDQCXvatFuM9GsyZUaExNrTKrPWOlG4nw1QhVaZVTy3aAEfhcsyNXDBRwnekRu+MuDhigVRhOpeR3e2j4oZFIJrIPPucpXr+lhdG1+g= 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) header.from= Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 157653462836138.49662640659153; Mon, 16 Dec 2019 14:17:08 -0800 (PST) Received: from localhost ([::1]:60702 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1igyfq-00022o-Qy for importer@patchew.org; Mon, 16 Dec 2019 17:17:06 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:36867) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1igybL-0005Eg-7D for qemu-devel@nongnu.org; Mon, 16 Dec 2019 17:12:29 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1igybI-0007HE-SQ for qemu-devel@nongnu.org; Mon, 16 Dec 2019 17:12:27 -0500 Received: from mail-pj1-x1044.google.com ([2607:f8b0:4864:20::1044]:34967) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1igybI-0007FT-JS for qemu-devel@nongnu.org; Mon, 16 Dec 2019 17:12:24 -0500 Received: by mail-pj1-x1044.google.com with SMTP id w23so3632031pjd.2 for ; Mon, 16 Dec 2019 14:12:24 -0800 (PST) Received: from localhost.localdomain ([2605:e000:c74f:dc00:6838:d2b2:17e2:8445]) by smtp.gmail.com with ESMTPSA id d6sm529767pjl.8.2019.12.16.14.12.21 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 16 Dec 2019 14:12:22 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=from:to:subject:date:message-id:in-reply-to:references:mime-version :content-transfer-encoding; bh=e7D0tfuzoU8uUsVgXAgk/gYVqQ2gabQZXbhCVY3WX4M=; b=E8Mr1W8N21Ke/14XaBHdMaGsPwyg2stUe6f2f2BZRz+yiNOxwm56EveHRBOvAmHtbh 0ajdUVhOwx3MhNH8YfOHGKGz/btHF80pxjb4aMpk+SNideZGnZADE6Rxx8vvWXs00X3F aGEBpALzljgLFpS/kz9dQSswM/c9PH8k6/snhqE65oiobEDbaTj/nbdXoCUsTBlvFMDY rRCpnctkRp+aViVGMl5N9EXh/+hE6C/vsabAk4B2OXNbyquA7fgB3H0NY87uef00S3+U fTH5YE/ZzmkjUiHt7fXF1QVHXEJ3eDncs9mTRee25s0XxKsTLBnI79WWndR+YmVdcLBT zR3A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=e7D0tfuzoU8uUsVgXAgk/gYVqQ2gabQZXbhCVY3WX4M=; b=QnVHGALJFMdcK+U7bdMj7hg+Bl41d/qc7bmHYQdOWd+nPKv2mcmyt7aXdOviQOxWL/ 7TM/UJMgMChjOWcfJdrnUfdA/SqmSd+mgcoQ1jBnEAgwXNlG0YMuiZnpMPVS4U53M3rL 0VJ9ogZtHykpP0mqxN/JuL98G0Qh0GeZ+Ow5E69iGbrIu/p/TV7YzVcGI6EtZ3XV3FVZ /4/rdmZ3axJGJsLl7GuGlnPDg0JkpjcOswK6AClufSqBp3o2Ib3exIEdq//Aj65BiiPM MggkVdcK8BbI/9runMLAhr8fQyF/6jTFGNML7ZpoCW8GIfjotnN0poqbQPH+y2SbUpYY tzJw== X-Gm-Message-State: APjAAAWvrs/XigtzWW14LZeSqN8se4S1EPiINEWzkTPXzVpwgfq6Wflm ei+Lr6JWXFvGxza8L60z64SI82iM3HY= X-Google-Smtp-Source: APXvYqxnEqzDU4bQYPkCFI0H2Oa095HswOVNL3wrseUILCdF0nrlNbMGxuT6IBbtPoCaR8JKX92h3Q== X-Received: by 2002:a17:902:bf08:: with SMTP id bi8mr17763229plb.75.1576534343069; Mon, 16 Dec 2019 14:12:23 -0800 (PST) From: Richard Henderson To: qemu-devel@nongnu.org Subject: [PATCH v2 14/28] cputlb: Expand cpu_ldst_useronly_template.h in user-exec.c Date: Mon, 16 Dec 2019 12:11:44 -1000 Message-Id: <20191216221158.29572-15-richard.henderson@linaro.org> X-Mailer: git-send-email 2.20.1 In-Reply-To: <20191216221158.29572-1-richard.henderson@linaro.org> References: <20191216221158.29572-1-richard.henderson@linaro.org> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2607:f8b0:4864:20::1044 X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 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" X-ZohoMail-DKIM: pass (identity @linaro.org) Content-Type: text/plain; charset="utf-8" With the tracing hooks, the inline functions are no longer so simple. Reduce the amount of preprocessor obfuscation by expanding the text of each of the functions generated. The result is only slightly larger than the original. Signed-off-by: Richard Henderson Reviewed-by: Alex Benn=C3=A9e --- include/exec/cpu_ldst.h | 54 +++-- include/exec/cpu_ldst_useronly_template.h | 159 --------------- accel/tcg/user-exec.c | 236 ++++++++++++++++++++++ 3 files changed, 262 insertions(+), 187 deletions(-) delete mode 100644 include/exec/cpu_ldst_useronly_template.h diff --git a/include/exec/cpu_ldst.h b/include/exec/cpu_ldst.h index 41b98ba801..0f3c49a005 100644 --- a/include/exec/cpu_ldst.h +++ b/include/exec/cpu_ldst.h @@ -120,35 +120,33 @@ static inline void clear_helper_retaddr(void) =20 /* In user-only mode we provide only the _code and _data accessors. */ =20 -#define MEMSUFFIX _data -#define DATA_SIZE 1 -#include "exec/cpu_ldst_useronly_template.h" +uint32_t cpu_ldub_data(CPUArchState *env, abi_ptr ptr); +uint32_t cpu_lduw_data(CPUArchState *env, abi_ptr ptr); +uint32_t cpu_ldl_data(CPUArchState *env, abi_ptr ptr); +uint64_t cpu_ldq_data(CPUArchState *env, abi_ptr ptr); +int cpu_ldsb_data(CPUArchState *env, abi_ptr ptr); +int cpu_ldsw_data(CPUArchState *env, abi_ptr ptr); =20 -#define DATA_SIZE 2 -#include "exec/cpu_ldst_useronly_template.h" +uint32_t cpu_ldub_data_ra(CPUArchState *env, abi_ptr ptr, uintptr_t retadd= r); +uint32_t cpu_lduw_data_ra(CPUArchState *env, abi_ptr ptr, uintptr_t retadd= r); +uint32_t cpu_ldl_data_ra(CPUArchState *env, abi_ptr ptr, uintptr_t retaddr= ); +uint64_t cpu_ldq_data_ra(CPUArchState *env, abi_ptr ptr, uintptr_t retaddr= ); +int cpu_ldsb_data_ra(CPUArchState *env, abi_ptr ptr, uintptr_t retaddr); +int cpu_ldsw_data_ra(CPUArchState *env, abi_ptr ptr, uintptr_t retaddr); =20 -#define DATA_SIZE 4 -#include "exec/cpu_ldst_useronly_template.h" +void cpu_stb_data(CPUArchState *env, abi_ptr ptr, uint32_t val); +void cpu_stw_data(CPUArchState *env, abi_ptr ptr, uint32_t val); +void cpu_stl_data(CPUArchState *env, abi_ptr ptr, uint32_t val); +void cpu_stq_data(CPUArchState *env, abi_ptr ptr, uint64_t val); =20 -#define DATA_SIZE 8 -#include "exec/cpu_ldst_useronly_template.h" -#undef MEMSUFFIX - -#define MEMSUFFIX _code -#define CODE_ACCESS -#define DATA_SIZE 1 -#include "exec/cpu_ldst_useronly_template.h" - -#define DATA_SIZE 2 -#include "exec/cpu_ldst_useronly_template.h" - -#define DATA_SIZE 4 -#include "exec/cpu_ldst_useronly_template.h" - -#define DATA_SIZE 8 -#include "exec/cpu_ldst_useronly_template.h" -#undef MEMSUFFIX -#undef CODE_ACCESS +void cpu_stb_data_ra(CPUArchState *env, abi_ptr ptr, + uint32_t val, uintptr_t retaddr); +void cpu_stw_data_ra(CPUArchState *env, abi_ptr ptr, + uint32_t val, uintptr_t retaddr); +void cpu_stl_data_ra(CPUArchState *env, abi_ptr ptr, + uint32_t val, uintptr_t retaddr); +void cpu_stq_data_ra(CPUArchState *env, abi_ptr ptr, + uint64_t val, uintptr_t retaddr); =20 /* * Provide the same *_mmuidx_ra interface as for softmmu. @@ -520,6 +518,8 @@ void cpu_stq_mmuidx_ra(CPUArchState *env, abi_ptr addr,= uint64_t val, #undef CPU_MMU_INDEX #undef MEMSUFFIX =20 +#endif /* defined(CONFIG_USER_ONLY) */ + uint32_t cpu_ldub_code(CPUArchState *env, abi_ptr addr); uint32_t cpu_lduw_code(CPUArchState *env, abi_ptr addr); uint32_t cpu_ldl_code(CPUArchState *env, abi_ptr addr); @@ -535,8 +535,6 @@ static inline int cpu_ldsw_code(CPUArchState *env, abi_= ptr addr) return (int16_t)cpu_lduw_code(env, addr); } =20 -#endif /* defined(CONFIG_USER_ONLY) */ - /** * tlb_vaddr_to_host: * @env: CPUArchState diff --git a/include/exec/cpu_ldst_useronly_template.h b/include/exec/cpu_l= dst_useronly_template.h deleted file mode 100644 index e5a3d1983a..0000000000 --- a/include/exec/cpu_ldst_useronly_template.h +++ /dev/null @@ -1,159 +0,0 @@ -/* - * User-only accessor function support - * - * Generate inline load/store functions for one data size. - * - * Generate a store function as well as signed and unsigned loads. - * - * Not used directly but included from cpu_ldst.h. - * - * Copyright (c) 2015 Linaro Limited - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, see . - */ - -#if !defined(CODE_ACCESS) -#include "trace-root.h" -#endif - -#include "trace/mem.h" - -#if DATA_SIZE =3D=3D 8 -#define SUFFIX q -#define USUFFIX q -#define DATA_TYPE uint64_t -#define SHIFT 3 -#elif DATA_SIZE =3D=3D 4 -#define SUFFIX l -#define USUFFIX l -#define DATA_TYPE uint32_t -#define SHIFT 2 -#elif DATA_SIZE =3D=3D 2 -#define SUFFIX w -#define USUFFIX uw -#define DATA_TYPE uint16_t -#define DATA_STYPE int16_t -#define SHIFT 1 -#elif DATA_SIZE =3D=3D 1 -#define SUFFIX b -#define USUFFIX ub -#define DATA_TYPE uint8_t -#define DATA_STYPE int8_t -#define SHIFT 0 -#else -#error unsupported data size -#endif - -#if DATA_SIZE =3D=3D 8 -#define RES_TYPE uint64_t -#else -#define RES_TYPE uint32_t -#endif - -static inline RES_TYPE -glue(glue(cpu_ld, USUFFIX), MEMSUFFIX)(CPUArchState *env, abi_ptr ptr) -{ - RES_TYPE ret; -#ifdef CODE_ACCESS - set_helper_retaddr(1); - ret =3D glue(glue(ld, USUFFIX), _p)(g2h(ptr)); - clear_helper_retaddr(); -#else - MemOp op =3D MO_TE | SHIFT; - uint16_t meminfo =3D trace_mem_get_info(op, MMU_USER_IDX, false); - trace_guest_mem_before_exec(env_cpu(env), ptr, meminfo); - ret =3D glue(glue(ld, USUFFIX), _p)(g2h(ptr)); -#endif - return ret; -} - -#ifndef CODE_ACCESS -static inline RES_TYPE -glue(glue(glue(cpu_ld, USUFFIX), MEMSUFFIX), _ra)(CPUArchState *env, - abi_ptr ptr, - uintptr_t retaddr) -{ - RES_TYPE ret; - set_helper_retaddr(retaddr); - ret =3D glue(glue(cpu_ld, USUFFIX), MEMSUFFIX)(env, ptr); - clear_helper_retaddr(); - return ret; -} -#endif - -#if DATA_SIZE <=3D 2 -static inline int -glue(glue(cpu_lds, SUFFIX), MEMSUFFIX)(CPUArchState *env, abi_ptr ptr) -{ - int ret; -#ifdef CODE_ACCESS - set_helper_retaddr(1); - ret =3D glue(glue(lds, SUFFIX), _p)(g2h(ptr)); - clear_helper_retaddr(); -#else - MemOp op =3D MO_TE | MO_SIGN | SHIFT; - uint16_t meminfo =3D trace_mem_get_info(op, MMU_USER_IDX, false); - trace_guest_mem_before_exec(env_cpu(env), ptr, meminfo); - ret =3D glue(glue(lds, SUFFIX), _p)(g2h(ptr)); - qemu_plugin_vcpu_mem_cb(env_cpu(env), ptr, meminfo); -#endif - return ret; -} - -#ifndef CODE_ACCESS -static inline int -glue(glue(glue(cpu_lds, SUFFIX), MEMSUFFIX), _ra)(CPUArchState *env, - abi_ptr ptr, - uintptr_t retaddr) -{ - int ret; - set_helper_retaddr(retaddr); - ret =3D glue(glue(cpu_lds, SUFFIX), MEMSUFFIX)(env, ptr); - clear_helper_retaddr(); - return ret; -} -#endif /* CODE_ACCESS */ -#endif /* DATA_SIZE <=3D 2 */ - -#ifndef CODE_ACCESS -static inline void -glue(glue(cpu_st, SUFFIX), MEMSUFFIX)(CPUArchState *env, abi_ptr ptr, - RES_TYPE v) -{ - MemOp op =3D MO_TE | SHIFT; - uint16_t meminfo =3D trace_mem_get_info(op, MMU_USER_IDX, true); - trace_guest_mem_before_exec(env_cpu(env), ptr, meminfo); - glue(glue(st, SUFFIX), _p)(g2h(ptr), v); - qemu_plugin_vcpu_mem_cb(env_cpu(env), ptr, meminfo); -} - -static inline void -glue(glue(glue(cpu_st, SUFFIX), MEMSUFFIX), _ra)(CPUArchState *env, - abi_ptr ptr, - RES_TYPE v, - uintptr_t retaddr) -{ - set_helper_retaddr(retaddr); - glue(glue(cpu_st, SUFFIX), MEMSUFFIX)(env, ptr, v); - clear_helper_retaddr(); -} -#endif - -#undef RES_TYPE -#undef DATA_TYPE -#undef DATA_STYPE -#undef SUFFIX -#undef USUFFIX -#undef DATA_SIZE -#undef SHIFT diff --git a/accel/tcg/user-exec.c b/accel/tcg/user-exec.c index b09f7a1577..79da4219bb 100644 --- a/accel/tcg/user-exec.c +++ b/accel/tcg/user-exec.c @@ -26,6 +26,8 @@ #include "translate-all.h" #include "exec/helper-proto.h" #include "qemu/atomic128.h" +#include "trace-root.h" +#include "trace/mem.h" =20 #undef EAX #undef ECX @@ -734,6 +736,240 @@ int cpu_signal_handler(int host_signum, void *pinfo, =20 /* The softmmu versions of these helpers are in cputlb.c. */ =20 +uint32_t cpu_ldub_data(CPUArchState *env, abi_ptr ptr) +{ + uint32_t ret; + uint16_t meminfo =3D trace_mem_get_info(MO_UB, MMU_USER_IDX, false); + + trace_guest_mem_before_exec(env_cpu(env), ptr, meminfo); + ret =3D ldub_p(g2h(ptr)); + qemu_plugin_vcpu_mem_cb(env_cpu(env), ptr, meminfo); + return ret; +} + +int cpu_ldsb_data(CPUArchState *env, abi_ptr ptr) +{ + int ret; + uint16_t meminfo =3D trace_mem_get_info(MO_SB, MMU_USER_IDX, false); + + trace_guest_mem_before_exec(env_cpu(env), ptr, meminfo); + ret =3D ldsb_p(g2h(ptr)); + qemu_plugin_vcpu_mem_cb(env_cpu(env), ptr, meminfo); + return ret; +} + +uint32_t cpu_lduw_data(CPUArchState *env, abi_ptr ptr) +{ + uint32_t ret; + uint16_t meminfo =3D trace_mem_get_info(MO_TEUW, MMU_USER_IDX, false); + + trace_guest_mem_before_exec(env_cpu(env), ptr, meminfo); + ret =3D lduw_p(g2h(ptr)); + qemu_plugin_vcpu_mem_cb(env_cpu(env), ptr, meminfo); + return ret; +} + +int cpu_ldsw_data(CPUArchState *env, abi_ptr ptr) +{ + int ret; + uint16_t meminfo =3D trace_mem_get_info(MO_TESW, MMU_USER_IDX, false); + + trace_guest_mem_before_exec(env_cpu(env), ptr, meminfo); + ret =3D ldsw_p(g2h(ptr)); + qemu_plugin_vcpu_mem_cb(env_cpu(env), ptr, meminfo); + return ret; +} + +uint32_t cpu_ldl_data(CPUArchState *env, abi_ptr ptr) +{ + uint32_t ret; + uint16_t meminfo =3D trace_mem_get_info(MO_TEUL, MMU_USER_IDX, false); + + trace_guest_mem_before_exec(env_cpu(env), ptr, meminfo); + ret =3D ldl_p(g2h(ptr)); + qemu_plugin_vcpu_mem_cb(env_cpu(env), ptr, meminfo); + return ret; +} + +uint64_t cpu_ldq_data(CPUArchState *env, abi_ptr ptr) +{ + uint64_t ret; + uint16_t meminfo =3D trace_mem_get_info(MO_TEQ, MMU_USER_IDX, false); + + trace_guest_mem_before_exec(env_cpu(env), ptr, meminfo); + ret =3D ldq_p(g2h(ptr)); + qemu_plugin_vcpu_mem_cb(env_cpu(env), ptr, meminfo); + return ret; +} + +uint32_t cpu_ldub_data_ra(CPUArchState *env, abi_ptr ptr, uintptr_t retadd= r) +{ + uint32_t ret; + + set_helper_retaddr(retaddr); + ret =3D cpu_ldub_data(env, ptr); + clear_helper_retaddr(); + return ret; +} + +int cpu_ldsb_data_ra(CPUArchState *env, abi_ptr ptr, uintptr_t retaddr) +{ + int ret; + + set_helper_retaddr(retaddr); + ret =3D cpu_ldsb_data(env, ptr); + clear_helper_retaddr(); + return ret; +} + +uint32_t cpu_lduw_data_ra(CPUArchState *env, abi_ptr ptr, uintptr_t retadd= r) +{ + uint32_t ret; + + set_helper_retaddr(retaddr); + ret =3D cpu_lduw_data(env, ptr); + clear_helper_retaddr(); + return ret; +} + +int cpu_ldsw_data_ra(CPUArchState *env, abi_ptr ptr, uintptr_t retaddr) +{ + int ret; + + set_helper_retaddr(retaddr); + ret =3D cpu_ldsw_data(env, ptr); + clear_helper_retaddr(); + return ret; +} + +uint32_t cpu_ldl_data_ra(CPUArchState *env, abi_ptr ptr, uintptr_t retaddr) +{ + uint32_t ret; + + set_helper_retaddr(retaddr); + ret =3D cpu_ldl_data(env, ptr); + clear_helper_retaddr(); + return ret; +} + +uint64_t cpu_ldq_data_ra(CPUArchState *env, abi_ptr ptr, uintptr_t retaddr) +{ + uint64_t ret; + + set_helper_retaddr(retaddr); + ret =3D cpu_ldq_data(env, ptr); + clear_helper_retaddr(); + return ret; +} + +void cpu_stb_data(CPUArchState *env, abi_ptr ptr, uint32_t val) +{ + uint16_t meminfo =3D trace_mem_get_info(MO_UB, MMU_USER_IDX, true); + + trace_guest_mem_before_exec(env_cpu(env), ptr, meminfo); + stb_p(g2h(ptr), val); + qemu_plugin_vcpu_mem_cb(env_cpu(env), ptr, meminfo); +} + +void cpu_stw_data(CPUArchState *env, abi_ptr ptr, uint32_t val) +{ + uint16_t meminfo =3D trace_mem_get_info(MO_TEUW, MMU_USER_IDX, true); + + trace_guest_mem_before_exec(env_cpu(env), ptr, meminfo); + stw_p(g2h(ptr), val); + qemu_plugin_vcpu_mem_cb(env_cpu(env), ptr, meminfo); +} + +void cpu_stl_data(CPUArchState *env, abi_ptr ptr, uint32_t val) +{ + uint16_t meminfo =3D trace_mem_get_info(MO_TEUL, MMU_USER_IDX, true); + + trace_guest_mem_before_exec(env_cpu(env), ptr, meminfo); + stl_p(g2h(ptr), val); + qemu_plugin_vcpu_mem_cb(env_cpu(env), ptr, meminfo); +} + +void cpu_stq_data(CPUArchState *env, abi_ptr ptr, uint64_t val) +{ + uint16_t meminfo =3D trace_mem_get_info(MO_TEQ, MMU_USER_IDX, true); + + trace_guest_mem_before_exec(env_cpu(env), ptr, meminfo); + stq_p(g2h(ptr), val); + qemu_plugin_vcpu_mem_cb(env_cpu(env), ptr, meminfo); +} + +void cpu_stb_data_ra(CPUArchState *env, abi_ptr ptr, + uint32_t val, uintptr_t retaddr) +{ + set_helper_retaddr(retaddr); + cpu_stb_data(env, ptr, val); + clear_helper_retaddr(); +} + +void cpu_stw_data_ra(CPUArchState *env, abi_ptr ptr, + uint32_t val, uintptr_t retaddr) +{ + set_helper_retaddr(retaddr); + cpu_stw_data(env, ptr, val); + clear_helper_retaddr(); +} + +void cpu_stl_data_ra(CPUArchState *env, abi_ptr ptr, + uint32_t val, uintptr_t retaddr) +{ + set_helper_retaddr(retaddr); + cpu_stl_data(env, ptr, val); + clear_helper_retaddr(); +} + +void cpu_stq_data_ra(CPUArchState *env, abi_ptr ptr, + uint64_t val, uintptr_t retaddr) +{ + set_helper_retaddr(retaddr); + cpu_stq_data(env, ptr, val); + clear_helper_retaddr(); +} + +uint32_t cpu_ldub_code(CPUArchState *env, abi_ptr ptr) +{ + uint32_t ret; + + set_helper_retaddr(1); + ret =3D ldub_p(g2h(ptr)); + clear_helper_retaddr(); + return ret; +} + +uint32_t cpu_lduw_code(CPUArchState *env, abi_ptr ptr) +{ + uint32_t ret; + + set_helper_retaddr(1); + ret =3D lduw_p(g2h(ptr)); + clear_helper_retaddr(); + return ret; +} + +uint32_t cpu_ldl_code(CPUArchState *env, abi_ptr ptr) +{ + uint32_t ret; + + set_helper_retaddr(1); + ret =3D ldl_p(g2h(ptr)); + clear_helper_retaddr(); + return ret; +} + +uint64_t cpu_ldq_code(CPUArchState *env, abi_ptr ptr) +{ + uint64_t ret; + + set_helper_retaddr(1); + ret =3D ldq_p(g2h(ptr)); + clear_helper_retaddr(); + return ret; +} + /* Do not allow unaligned operations to proceed. Return the host address.= */ static void *atomic_mmu_lookup(CPUArchState *env, target_ulong addr, int size, uintptr_t retaddr) --=20 2.20.1 From nobody Sat May 4 23:35:41 2024 Delivered-To: importer@patchew.org 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; 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 ARC-Seal: i=1; a=rsa-sha256; t=1576535068; cv=none; d=zohomail.com; s=zohoarc; b=h7GSUrAUm2+pNTmJLzprgkpualWGU+2lt2UQAZpo0xXVCRTQRy1HrZwEP4blWbeRta5HfxMJZFLQCYG8OqWWdQH3njzY+eQo3nN3AH/MAEKtPvPfAGKs7B/GZuRUcmdOGi+puW/gXIgF66HOWrSxWk4eNLNiIPTQVSL1xNRhrko= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1576535068; h=Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=ywIseiPjqJvH3CWY8/pVr57z5YPy7BfDXHEc/+9ytCA=; b=EKeeuxlLeO2psRWZThQnriovJ8jH6HizCas0el0k7LTgq0xwaPdbEBgAZ29Jh12/8t6N1ndzInjgDH2N+K+ooZ8J07buQSYfl7KcU9PRlQRYJhQqQ9GgjdE1xtPijkBF8dxXdxEPYOV2JyEw+gsjH3tmzaB+q8TTXNTQbm+SHZg= ARC-Authentication-Results: i=1; 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 header.from= (p=none dis=none) header.from= Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1576535068385590.5743344592488; Mon, 16 Dec 2019 14:24:28 -0800 (PST) Received: from localhost ([::1]:60866 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1igymx-0003RE-2O for importer@patchew.org; Mon, 16 Dec 2019 17:24:27 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:36877) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1igybL-0005Fc-O5 for qemu-devel@nongnu.org; Mon, 16 Dec 2019 17:12:28 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1igybK-0007Jn-Gx for qemu-devel@nongnu.org; Mon, 16 Dec 2019 17:12:27 -0500 Received: from mail-pj1-x1042.google.com ([2607:f8b0:4864:20::1042]:39470) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1igybK-0007Ia-Bk for qemu-devel@nongnu.org; Mon, 16 Dec 2019 17:12:26 -0500 Received: by mail-pj1-x1042.google.com with SMTP id v93so3617202pjb.6 for ; Mon, 16 Dec 2019 14:12:26 -0800 (PST) Received: from localhost.localdomain ([2605:e000:c74f:dc00:6838:d2b2:17e2:8445]) by smtp.gmail.com with ESMTPSA id d6sm529767pjl.8.2019.12.16.14.12.23 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 16 Dec 2019 14:12:24 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=ywIseiPjqJvH3CWY8/pVr57z5YPy7BfDXHEc/+9ytCA=; b=sxhIcXsO1mDqVZ3f3lLseM6hZd8C8hvDkEk9QJWW8H4/7dW6VhtpqbSiGsg7YyeL0g bMIJSmd1I/dW3PorOBgri++JD93GQOxlmCupBZFnBXmSsLOCaQ95z2cH1EAGBy+LQ8IF RYx8CD6H0WZ7Ag4vHpuzKwu4zw5hbcbJQKWZFv0N844QA1XOAYg+tbuLWOro3tchXDVm b+/o4to59ZtVf3CMTXk/WFfOlNQKyP+zv1TpK/F0NIknpVrKdF/EnRsT1ZzMAYzxwIJU YxwYBhpjyF5GRqIbmlgW+5EjyILpk/QWpCEfZ2Kbnk0HsJz9To9leiyTch/9Pd3qIOMb CnQg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=ywIseiPjqJvH3CWY8/pVr57z5YPy7BfDXHEc/+9ytCA=; b=BUFNHncqRtd0+ejglq1g7tJPSgOxOGxAIv1bUrjkAnKAFIczOBh1fe/KTwp/IARUdh EzEM7wkinyHbV1DW2DH/XOIXD4W2UxMwkYP2AH9pS+nThWascun3DSzQ44Gj6indN6Jp TY5Mu6ajtcuZsH20NOkwxwEvtq7SbbqZMDtFjeS1EC6/AOvvmq7pWvFlMaxe9oRsPXwQ dVkKc0d4E5h/04Qdn/7V/il4iyUF2X7iw0pd7p7+Z2ejdLRW8dPiBJSpdPPguBsftV+0 nSew+fMoZ9JcB18a92bWTOr8HyjDrrU5MTW8QNoO1+1Tw3NpZQs+cZAicF/PnRuy6FXT 8elQ== X-Gm-Message-State: APjAAAVbWx5ID0ydTj2A0LdZ79y68ZL+D75QuDgRSEHCtF7tFTdk92Kq 5PnYRDeiSubTHCH/y8wdo9xYxBFvmNo= X-Google-Smtp-Source: APXvYqz5Yd5Rd6nBEH/KuRs8hV+fmNZb8fIa2GPI/UjygCwnBfQSaokiKSn1mYGbBmi6x13fOJ6Jqw== X-Received: by 2002:a17:902:9a42:: with SMTP id x2mr18533066plv.202.1576534345055; Mon, 16 Dec 2019 14:12:25 -0800 (PST) From: Richard Henderson To: qemu-devel@nongnu.org Subject: [PATCH v2 15/28] target/nios2: Remove MMU_MODE{0,1}_SUFFIX Date: Mon, 16 Dec 2019 12:11:45 -1000 Message-Id: <20191216221158.29572-16-richard.henderson@linaro.org> X-Mailer: git-send-email 2.20.1 In-Reply-To: <20191216221158.29572-1-richard.henderson@linaro.org> References: <20191216221158.29572-1-richard.henderson@linaro.org> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2607:f8b0:4864:20::1042 X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Marek Vasut , Chris Wulff Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: fail (Header signature does not verify) Content-Type: text/plain; charset="utf-8" The functions generated by these macros are unused. Cc: Chris Wulff Cc: Marek Vasut Signed-off-by: Richard Henderson Reviewed-by: Alex Benn=C3=A9e --- target/nios2/cpu.h | 2 -- 1 file changed, 2 deletions(-) diff --git a/target/nios2/cpu.h b/target/nios2/cpu.h index 361b06ffeb..78f633f970 100644 --- a/target/nios2/cpu.h +++ b/target/nios2/cpu.h @@ -217,8 +217,6 @@ void do_nios2_semihosting(CPUNios2State *env); #define CPU_SAVE_VERSION 1 =20 /* MMU modes definitions */ -#define MMU_MODE0_SUFFIX _kernel -#define MMU_MODE1_SUFFIX _user #define MMU_SUPERVISOR_IDX 0 #define MMU_USER_IDX 1 =20 --=20 2.20.1 From nobody Sat May 4 23:35:41 2024 Delivered-To: importer@patchew.org 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; 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=1576535253; cv=none; d=zohomail.com; s=zohoarc; b=F0LG69g9vb+/Flt9ha75V4ZxUUnRW35HQkud5YZcbmlCTjdHhZw1/CkDSLk5jHjaIi2BtQY/TVQ6taygBmZm1cXuU/YMLePgiVO5bjL6Ta45YT/F6rA43v/ow+CamaCle4eXOL6EC3YibPqXgV1pQc/ZZPv67aHOvDlZDktWHi8= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1576535253; h=Content-Transfer-Encoding:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=cdzUkCGd4j9cyI7GBjpMOiOf+nGUeT9o9Hdz62SsCpo=; b=MISLGE9wUjJKqepV6zLwvFmzWQqYU67ca2rUBJWZf4Q+fbJPxTeLKAWKn7sq1adXumxii/Km3sgVhxRHnwIKygsx9bazDUZTjTQqFLkeynxN8zl2D0ICrLIIwtyQOPxVGonjHioIzIIOwOQB5OEQfJAReoBmTzrKacI5ssyHHA4= 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) header.from= Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1576535253366106.67725230543135; Mon, 16 Dec 2019 14:27:33 -0800 (PST) Received: from localhost ([::1]:60918 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1igypv-00071P-Uk for importer@patchew.org; Mon, 16 Dec 2019 17:27:31 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:36902) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1igybM-0005HT-QD for qemu-devel@nongnu.org; Mon, 16 Dec 2019 17:12:30 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1igybL-0007Lx-SM for qemu-devel@nongnu.org; Mon, 16 Dec 2019 17:12:28 -0500 Received: from mail-pg1-x543.google.com ([2607:f8b0:4864:20::543]:40946) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1igybL-0007KP-Mx for qemu-devel@nongnu.org; Mon, 16 Dec 2019 17:12:27 -0500 Received: by mail-pg1-x543.google.com with SMTP id k25so4491111pgt.7 for ; Mon, 16 Dec 2019 14:12:27 -0800 (PST) Received: from localhost.localdomain ([2605:e000:c74f:dc00:6838:d2b2:17e2:8445]) by smtp.gmail.com with ESMTPSA id d6sm529767pjl.8.2019.12.16.14.12.25 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 16 Dec 2019 14:12:25 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=from:to:subject:date:message-id:in-reply-to:references:mime-version :content-transfer-encoding; bh=cdzUkCGd4j9cyI7GBjpMOiOf+nGUeT9o9Hdz62SsCpo=; b=cV4bn0u5eECfrX2GrUnPV61AzcgZZE/VVrp095/QIKfcrYRjOqZ4F3k9+ChlpH9+AR nTfk7UfMUXXbGHrOCNgevSgcniQr/zGlGb11u+lbH5rWtYV2YeZc2TliVIr7oX39zZxp bRAls1ERUwHtIPdcEBHxgxAoeEKjCNlsv/PgGONfw3mwp422UfQLqH2SKKHeXikR3Ljv FV9V1shyK/vi6fKZl0oB3Cn47sI7CzU1MyQSh5dHgh2JeL2ZifdP7l3kNvyYrHFPcN4J v4qJ7181ZuDLnD2M4IExRUHq3/eyGub2QohcbMizzv0I2IKsVzyBEgfEEsEEMs8v7iaf ANJg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=cdzUkCGd4j9cyI7GBjpMOiOf+nGUeT9o9Hdz62SsCpo=; b=UlhHV1+JuruSHfoyhUe/NuzMmYvbAsa45HMpayLi3//arpSh9S2rcBmVGnSUy9aJ8K /XVscYicybG4MaiUTbj3kDoTfAjnVJlc9M5OdOouueyc2XmGpQEoHd47oAUZ/LXoUyuH KaMyFmoCwpYUadwdpvgz0ZwuLcHehVRZqj7i51Zo67Nn/nltfaXVahWI4KqXCp7cYzcV GnFfYe4L7t9nC8jq3kpYmR17Jm6OrTPLxGVpjJc3a/ywTTgJxqj6tUWueXEcLwdP5UUt llN5qzz8cM6I2k0ATk4u0UGkJGlcqU0Zs4cDHdok3z2VEKGpSK0xgd3U8/f/Gv4rwkVy 5bCg== X-Gm-Message-State: APjAAAX3IwlyEAVYHPNRqS+KuiSojRzGID1DcxLMMzeB2amE0/2c03o+ 561j+pNBr3VVx6cY+uUMv7grzJZk4ZU= X-Google-Smtp-Source: APXvYqyoFuTVqBxOuvLXtOZp5GPnvTWzpUUVReyVDZDaLVdWjBZxRm7EVj2zMuVQlDvprttExyFUhw== X-Received: by 2002:a63:5056:: with SMTP id q22mr20839449pgl.20.1576534346514; Mon, 16 Dec 2019 14:12:26 -0800 (PST) From: Richard Henderson To: qemu-devel@nongnu.org Subject: [PATCH v2 16/28] target/alpha: Remove MMU_MODE{0,1}_SUFFIX Date: Mon, 16 Dec 2019 12:11:46 -1000 Message-Id: <20191216221158.29572-17-richard.henderson@linaro.org> X-Mailer: git-send-email 2.20.1 In-Reply-To: <20191216221158.29572-1-richard.henderson@linaro.org> References: <20191216221158.29572-1-richard.henderson@linaro.org> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2607:f8b0:4864:20::543 X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 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" X-ZohoMail-DKIM: pass (identity @linaro.org) Content-Type: text/plain; charset="utf-8" The functions generated by these macros are unused. Signed-off-by: Richard Henderson Reviewed-by: Alex Benn=C3=A9e --- target/alpha/cpu.h | 2 -- 1 file changed, 2 deletions(-) diff --git a/target/alpha/cpu.h b/target/alpha/cpu.h index a530249a5b..3f782c0efe 100644 --- a/target/alpha/cpu.h +++ b/target/alpha/cpu.h @@ -193,8 +193,6 @@ enum { PALcode cheats and usees the KSEG mapping for its code+data rather than physical addresses. */ =20 -#define MMU_MODE0_SUFFIX _kernel -#define MMU_MODE1_SUFFIX _user #define MMU_KERNEL_IDX 0 #define MMU_USER_IDX 1 #define MMU_PHYS_IDX 2 --=20 2.20.1 From nobody Sat May 4 23:35:41 2024 Delivered-To: importer@patchew.org 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; 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=1576535360; cv=none; d=zohomail.com; s=zohoarc; b=THYgMRLZATE64lDr18AoVgLG0EJgKpHLUgKZLbXXMxsqk5QRwl9fh9TnDKaTMfhQFwD/ErVKFMJ4Nqr60MC3iQmwEpYbjEJz8R7iWfXoo+3n4+RjT1J/kjQUXAAaytib0R//bWoN3858oldpLU/JbWjeAgjHdHhT33s6o9eyt0c= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1576535360; h=Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=s8SYA9/Rwv4ZxWRA0n9zn8WOO8ULkXoz56NCsZvZKnc=; b=UO1VCx452TVfklnxy3BKJi/fw0NZ29h+BYFIIQVocR15hbPyVqQgk3yc3bvmWyG6hJBvkrhXcN6Yk9Bvbx5WCvV3sYEJQ/u1SxBCqmTh5+ODv9DWKVHl+nOlQ9AjIp04nXrdOVcoIuZDhcK9ut92iVFeLbGcq1SGnj/hMISVP7U= 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) header.from= Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1576535360843937.8242734247272; Mon, 16 Dec 2019 14:29:20 -0800 (PST) Received: from localhost ([::1]:60962 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1igyrf-0000zL-Lz for importer@patchew.org; Mon, 16 Dec 2019 17:29:19 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:36927) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1igybO-0005Jz-BQ for qemu-devel@nongnu.org; Mon, 16 Dec 2019 17:12:31 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1igybN-0007Mt-9v for qemu-devel@nongnu.org; Mon, 16 Dec 2019 17:12:30 -0500 Received: from mail-pf1-x441.google.com ([2607:f8b0:4864:20::441]:42306) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1igybN-0007MW-4s for qemu-devel@nongnu.org; Mon, 16 Dec 2019 17:12:29 -0500 Received: by mail-pf1-x441.google.com with SMTP id 4so6369388pfz.9 for ; Mon, 16 Dec 2019 14:12:29 -0800 (PST) Received: from localhost.localdomain ([2605:e000:c74f:dc00:6838:d2b2:17e2:8445]) by smtp.gmail.com with ESMTPSA id d6sm529767pjl.8.2019.12.16.14.12.26 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 16 Dec 2019 14:12:27 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=s8SYA9/Rwv4ZxWRA0n9zn8WOO8ULkXoz56NCsZvZKnc=; b=Eq452F6QFJcMlAB8xMCNBHfJaYeilcHziFExSzehhnynRgmkLcQRSFmhq8/fDo6+QH xV7VFwuAkFDHegz+H3sNvosTQnDoMZVZ67uJL4AUR7NoI+3c6rJvs2BoPN36hIk8HZnq oANRhG7AqyApNppDuVmXWA+dcFu4u3WkAkLZIqvjZudE4eMd19AqhUvaqOSoltx34k2w 2JrKf5dF++dVddWOLrZjwc3SA28/uTLLbYmj9WIehpmkr+Aug3kkCeu7eUyThh4AEZOf qCqwDos91MJ66tgwHnW6XP18DJ1pb5ayuclPavrqHGFIwgJl9gEYqlJeYaPyr/YhP4Yh n04w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=s8SYA9/Rwv4ZxWRA0n9zn8WOO8ULkXoz56NCsZvZKnc=; b=jUS/1LYex/oud6S8YWjfjjQ8BsVAVfJ2vDGUGMjbAYJn72+ziJ14wETLFnIvPkh5HY giyvi9OMcxg49Knr8wQlNXiUtaCTNMBw7rVXIb1tSaOTCSsdQrn7osqUJLqoYiSZvYqY mFc4n2xFtuykfoSV9SV7Gu3/jLqbkpa5YTCY4+ta4P2uw7XaTxv2dHHAEjHjB1sV/2C1 PxwaH3aLkJ0wTQhXNuGCpQFLGd9zrumt5h6H4Z012QrKVTCU0/5eHFcjRCwLwBgqnZ7j c8Z3ewFq2wg4O6hqkWc80c12ob0lmatpSQQFBG0NiiofuhR2uUz1A9UI7jGdsDi76Gop Hcng== X-Gm-Message-State: APjAAAWoOqeVnGhTw2hFF0iyXPJStSN8iFF33kwWqBOfXhK3hXFUTm/4 nfEjBKaipi3THHJujfdGi6JfqYm9rGE= X-Google-Smtp-Source: APXvYqxkpxCgMyFFqKqMps/rmdnL5J9fvp2WMFfLwllQwKQtze+1AU0XqUTEkBSzzr6m+fX+ieBVzA== X-Received: by 2002:a63:f814:: with SMTP id n20mr20921854pgh.318.1576534347942; Mon, 16 Dec 2019 14:12:27 -0800 (PST) From: Richard Henderson To: qemu-devel@nongnu.org Subject: [PATCH v2 17/28] target/cris: Remove MMU_MODE{0,1}_SUFFIX Date: Mon, 16 Dec 2019 12:11:47 -1000 Message-Id: <20191216221158.29572-18-richard.henderson@linaro.org> X-Mailer: git-send-email 2.20.1 In-Reply-To: <20191216221158.29572-1-richard.henderson@linaro.org> References: <20191216221158.29572-1-richard.henderson@linaro.org> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2607:f8b0:4864:20::441 X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: "Edgar E . Iglesias" Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: pass (identity @linaro.org) Content-Type: text/plain; charset="utf-8" The functions generated by these macros are unused. Cc: Edgar E. Iglesias Signed-off-by: Richard Henderson Reviewed-by: Alex Benn=C3=A9e --- target/cris/cpu.h | 2 -- 1 file changed, 2 deletions(-) diff --git a/target/cris/cpu.h b/target/cris/cpu.h index aba0a66474..bc43bc23a1 100644 --- a/target/cris/cpu.h +++ b/target/cris/cpu.h @@ -252,8 +252,6 @@ enum { #define cpu_signal_handler cpu_cris_signal_handler =20 /* MMU modes definitions */ -#define MMU_MODE0_SUFFIX _kernel -#define MMU_MODE1_SUFFIX _user #define MMU_USER_IDX 1 static inline int cpu_mmu_index (CPUCRISState *env, bool ifetch) { --=20 2.20.1 From nobody Sat May 4 23:35:41 2024 Delivered-To: importer@patchew.org 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; 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 ARC-Seal: i=1; a=rsa-sha256; t=1576535204; cv=none; d=zohomail.com; s=zohoarc; b=kAHpSihlpnh+9+FSCaUahwfAAwS2gVlOXSj4SEWqS6lwLsQScOfpdVRREvAowhWQ+fNcPSgSgSRE+ltl6CCINUdnM1MhcHzjtZHY5V8K2hYoIIiy8ZMzEn2hJa9SlJtwwXkQZcU+XQLkRTIe/68Ru5zJORQ58Mxy9vh/1NrAAwU= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1576535204; h=Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=HC2V75/4cEYrSuehSqGFKt4qZAQdtudJE9CcEzS2ZMc=; b=OIDLMhEtU5uTWhsqd/SlifzIf2kvYx6pcMibQjJIt2sG1z/VRnyqkAtP0vgfbCVZfQiGGZEx9pfejH/zVTAYO1kvfUP6ph9Q51SDsw4EvyvWP6VO+rlHW3/+hgI2Z78sOFxnA95YFmoHjaD8DecJNJBMMWxu66IGbI3mCNkyt4Q= ARC-Authentication-Results: i=1; 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 header.from= (p=none dis=none) header.from= Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1576535204508988.9671995376959; Mon, 16 Dec 2019 14:26:44 -0800 (PST) Received: from localhost ([::1]:60914 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1igyp8-00068t-V6 for importer@patchew.org; Mon, 16 Dec 2019 17:26:42 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:36955) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1igybP-0005MN-QI for qemu-devel@nongnu.org; Mon, 16 Dec 2019 17:12:32 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1igybO-0007Pn-Op for qemu-devel@nongnu.org; Mon, 16 Dec 2019 17:12:31 -0500 Received: from mail-pf1-x441.google.com ([2607:f8b0:4864:20::441]:39012) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1igybO-0007OK-JQ for qemu-devel@nongnu.org; Mon, 16 Dec 2019 17:12:30 -0500 Received: by mail-pf1-x441.google.com with SMTP id 2so6376904pfx.6 for ; Mon, 16 Dec 2019 14:12:30 -0800 (PST) Received: from localhost.localdomain ([2605:e000:c74f:dc00:6838:d2b2:17e2:8445]) by smtp.gmail.com with ESMTPSA id d6sm529767pjl.8.2019.12.16.14.12.28 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 16 Dec 2019 14:12:28 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=HC2V75/4cEYrSuehSqGFKt4qZAQdtudJE9CcEzS2ZMc=; b=mlM2O6WBUH+LbGvC6aZ0uVh/Xx8YWLRuP5gAe9BB9BUTkMOoj/HWaVFP7S0ew09q1v Fz+UAJqQex/Cmt821SwQcJYd7sEfI18aGRO7oH9gcZ1XPaSyYS3dIdnmKWqc/+F5L2v2 CogC5wTLSGTvkAE+68INAkttFxM+pPVjca598vR9wQV3p0+LmrQ4VfxiLwrbtF5PTrJn kHR+7K4KTGzNstDxQURe/AlLKATZ5W6aQHWcT6Y+CiPg0ue2kiKQhOPTSJwF+9IiUvaY xhuO/DREwv4cBW4RUfki4A7aqKYVbeCq8yVxK1PVLXnVg3Ftg7aaxXBI75emE7Uzj6NP bRcA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=HC2V75/4cEYrSuehSqGFKt4qZAQdtudJE9CcEzS2ZMc=; b=uXfwZNVR1szCM+gCY+3/fUhvmao4WSDhzaZQobTeAZDSu7gadGKN1L96NNkyROfxKM EyPWkDIOwl1KsZoN5rVePJF8jXXEFmwGBju4geHSUyqKlJ1wn0CNU2JG65pb7shzY/Hb vJB0inXR8sP6Om85hARDoNY3gLMMZx80aPcQmFwFddIhSt6TvXCo2radKm27Sl9ypF4F cKCxATgHX//VNLLeEK0Na6/Df36HC1qnc2XUBurLqRD4bw40Wz6qHfppV09DCTLYo3Is kyfd3jRsX2r/AJoHHKtDkACxJv82ph1bJfsAuJ86oQhkRF736mAiVcPrvfW7OqPgc+ZT MjRg== X-Gm-Message-State: APjAAAUtMUFQlrL6jAFCbZ4vpU+/jTb/QrLunXcy+Q7XCC7rjH8maczO cCU+JOmoFu/odTO/DCxdM3Ss3/7G0nw= X-Google-Smtp-Source: APXvYqy0kN1k32Q3ZJomEtOLxz1wG8ymwbnaqMBI2GZCSqs7o5ogYW0BZIg54+EM+10mNju2kraxkA== X-Received: by 2002:a63:4f59:: with SMTP id p25mr20870819pgl.230.1576534349416; Mon, 16 Dec 2019 14:12:29 -0800 (PST) From: Richard Henderson To: qemu-devel@nongnu.org Subject: [PATCH v2 18/28] target/i386: Remove MMU_MODE{0,1,2}_SUFFIX Date: Mon, 16 Dec 2019 12:11:48 -1000 Message-Id: <20191216221158.29572-19-richard.henderson@linaro.org> X-Mailer: git-send-email 2.20.1 In-Reply-To: <20191216221158.29572-1-richard.henderson@linaro.org> References: <20191216221158.29572-1-richard.henderson@linaro.org> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2607:f8b0:4864:20::441 X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Paolo Bonzini , Eduardo Habkost Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: fail (Header signature does not verify) Content-Type: text/plain; charset="utf-8" The functions generated by these macros are unused. Cc: Eduardo Habkost Acked-by: Paolo Bonzini Signed-off-by: Richard Henderson Reviewed-by: Alex Benn=C3=A9e --- target/i386/cpu.h | 3 --- 1 file changed, 3 deletions(-) diff --git a/target/i386/cpu.h b/target/i386/cpu.h index cde2a16b94..6a8228df4f 100644 --- a/target/i386/cpu.h +++ b/target/i386/cpu.h @@ -1949,9 +1949,6 @@ uint64_t cpu_get_tsc(CPUX86State *env); #define cpu_list x86_cpu_list =20 /* MMU modes definitions */ -#define MMU_MODE0_SUFFIX _ksmap -#define MMU_MODE1_SUFFIX _user -#define MMU_MODE2_SUFFIX _knosmap /* SMAP disabled or CPL<3 && AC=3D1 */ #define MMU_KSMAP_IDX 0 #define MMU_USER_IDX 1 #define MMU_KNOSMAP_IDX 2 --=20 2.20.1 From nobody Sat May 4 23:35:41 2024 Delivered-To: importer@patchew.org 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; 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=1576535466; cv=none; d=zohomail.com; s=zohoarc; b=Pc3FkPtn1LwT4SB8VSqiUEfxtoLZhVq5x1w33MCE8HA53SIyneqxyvrz41EmWuBqGBSwVcLn5JmOx11ELaJBMya56vkszBrWHQw7Sy2KmkzkmoYybmAbPsItYLUe88pBtYMZTqWCH6lJLQ3SOP7Byb77zeupn9IZnCC7Gc/ww0A= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1576535466; h=Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=1+xmXAmgTNTTPDSwdxL19l0lBXnRZdS0RxSiPt4HA6M=; b=Qs2cMAhXpLMcSPZrmH2CQpaGhutsLqOCHKTOTUl30OOfgNYzIHfJMoBvw43MlbC0S7DWYXy+i/W3iXc79IckM1FmnEqOZYs9ZYW9jZ/j9O12O5L4nVkJV1+SOH2y2DYUhEg4pW8OQRxNZk9De4VDvC5YZE1kTie9f/O7LaS9R/0= 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) header.from= Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1576535466022915.9303096762854; Mon, 16 Dec 2019 14:31:06 -0800 (PST) Received: from localhost ([::1]:32774 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1igytM-0002pM-GO for importer@patchew.org; Mon, 16 Dec 2019 17:31:04 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:36983) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1igybR-0005Ov-9X for qemu-devel@nongnu.org; Mon, 16 Dec 2019 17:12:34 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1igybQ-0007Sd-9P for qemu-devel@nongnu.org; Mon, 16 Dec 2019 17:12:33 -0500 Received: from mail-pf1-x443.google.com ([2607:f8b0:4864:20::443]:39014) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1igybQ-0007Qh-3y for qemu-devel@nongnu.org; Mon, 16 Dec 2019 17:12:32 -0500 Received: by mail-pf1-x443.google.com with SMTP id 2so6376934pfx.6 for ; Mon, 16 Dec 2019 14:12:32 -0800 (PST) Received: from localhost.localdomain ([2605:e000:c74f:dc00:6838:d2b2:17e2:8445]) by smtp.gmail.com with ESMTPSA id d6sm529767pjl.8.2019.12.16.14.12.29 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 16 Dec 2019 14:12:30 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=1+xmXAmgTNTTPDSwdxL19l0lBXnRZdS0RxSiPt4HA6M=; b=ss2wj+1Z8IZ3MbqKwyMdrJDLtgPuMGuFfIFI2TidxBZr/ukpUfS49i2qJmmvUYs8ot Ym6CQwq4PXl1k6+cQrd+EeneimIuOzCrs4ChgYtVg7xEZRi0liy0ftvBdVk4tHANgb5d CQn8H/tyyC29FLY+DWOsWj5MszdxHwuzN8ldEtTcJoGgmoFRwPOKAkfIh7VGUptwNEWd YiMFeiROydklUhKhuLQj2x7lXmEK06RckDzmYS6sGeGhGJRGbNzfWdja4N33lWj4P0Pk QgJ9TAbJ0EmHBNMiUOunSUAGjX54IWhBv0F+R1+wIuoL8FRMKIYRCKsQvvppXG5s9fb9 3F/A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=1+xmXAmgTNTTPDSwdxL19l0lBXnRZdS0RxSiPt4HA6M=; b=RVAY+CLdqxbH3CCF8OEuJtx4gKHItl23NxBrnWz6CvjuaViaxSIkxNj3YL1rqrsdCn ua7qyk+0YgVbbxn5fFtQl5lM/ICSLjfGG3Nc60LOncz43YW9Dd5C/eBfWuPs9qKTX+Gk I6mTa24459JsU3uOa4F+L23Thv9kcLop1Qnn5LeOsEG65EBQOs+spw98jdrHi9Uw1CPO LeDi1o4x/d81RY7TMSGOpUMtYNqZDsfittuw3qozriIW+wBMY4Qf7aYdnva1cb3BJi/Z FWazVhd6QlmGlKFeolwFP0eQlAB2WqonzYbJ5wvap9iiuXXGjwmPHm66EgypTPf5BP37 S0gw== X-Gm-Message-State: APjAAAWQRGe45yZfrMItWqGN8TkcyHpkwVy+Mv8K4C+VZFimHqRb7IW1 wkWIsJuO2Q1nJPcoQMue2PFd7GzNZOw= X-Google-Smtp-Source: APXvYqzqL8bPJR0gpmdxqNlQ9dLFnUnlXITRozE5fl2zlSz/sePsNC6KuvAsXuV5MvUOQWKUASmJbg== X-Received: by 2002:a63:541e:: with SMTP id i30mr20553662pgb.183.1576534350881; Mon, 16 Dec 2019 14:12:30 -0800 (PST) From: Richard Henderson To: qemu-devel@nongnu.org Subject: [PATCH v2 19/28] target/microblaze: Remove MMU_MODE{0,1,2}_SUFFIX Date: Mon, 16 Dec 2019 12:11:49 -1000 Message-Id: <20191216221158.29572-20-richard.henderson@linaro.org> X-Mailer: git-send-email 2.20.1 In-Reply-To: <20191216221158.29572-1-richard.henderson@linaro.org> References: <20191216221158.29572-1-richard.henderson@linaro.org> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2607:f8b0:4864:20::443 X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: "Edgar E . Iglesias" Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: pass (identity @linaro.org) Content-Type: text/plain; charset="utf-8" The functions generated by these macros are unused. Cc: Edgar E. Iglesias Signed-off-by: Richard Henderson Reviewed-by: Alex Benn=C3=A9e --- target/microblaze/cpu.h | 3 --- 1 file changed, 3 deletions(-) diff --git a/target/microblaze/cpu.h b/target/microblaze/cpu.h index 95773089aa..32522f606b 100644 --- a/target/microblaze/cpu.h +++ b/target/microblaze/cpu.h @@ -328,9 +328,6 @@ int cpu_mb_signal_handler(int host_signum, void *pinfo, #define cpu_signal_handler cpu_mb_signal_handler =20 /* MMU modes definitions */ -#define MMU_MODE0_SUFFIX _nommu -#define MMU_MODE1_SUFFIX _kernel -#define MMU_MODE2_SUFFIX _user #define MMU_NOMMU_IDX 0 #define MMU_KERNEL_IDX 1 #define MMU_USER_IDX 2 --=20 2.20.1 From nobody Sat May 4 23:35:41 2024 Delivered-To: importer@patchew.org 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; 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=1576535544; cv=none; d=zohomail.com; s=zohoarc; b=egwYsbxeLODEhUfk0Vq3RotJce9V734hqz8QEySFkbRRBBy/B0UGtSocsJUN4Kx1tVtJ4fG2F8x/lJEvywD7IK179f38kCGShtjSBbpVqLrNu/GE/4AUy6qeHJ9xPKIiTcpOpvfSNKVS6RmU8Msl0ZMqla/sFeGUoab41pq16qM= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1576535544; h=Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=pZRCwuJZhFmLfLLVDEuLYlambcalO9LoW5IlxLfh4Nc=; b=bTSkdEUV085pXT0VUkWsYfifu7K8cgn8i0s7W3f08Amhrx8Ih6Qjlbbr41Lf3bsLlk+0ByqZQo28a37XXHNCa26vXecphCSWfBQrAo0MXU+xXKK+umtOHJJRB+QUzF1NqGjH8Dqtu2M1r0DDTxZWEhfp3UVu8beRh5NQhId6gps= 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) header.from= Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1576535544223609.7144577516284; Mon, 16 Dec 2019 14:32:24 -0800 (PST) Received: from localhost ([::1]:32802 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1igyud-0004as-63 for importer@patchew.org; Mon, 16 Dec 2019 17:32:23 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:37008) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1igybS-0005SH-Oo for qemu-devel@nongnu.org; Mon, 16 Dec 2019 17:12:35 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1igybR-0007VJ-MI for qemu-devel@nongnu.org; Mon, 16 Dec 2019 17:12:34 -0500 Received: from mail-pj1-x1041.google.com ([2607:f8b0:4864:20::1041]:37907) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1igybR-0007Ub-HN for qemu-devel@nongnu.org; Mon, 16 Dec 2019 17:12:33 -0500 Received: by mail-pj1-x1041.google.com with SMTP id l4so3622780pjt.5 for ; Mon, 16 Dec 2019 14:12:33 -0800 (PST) Received: from localhost.localdomain ([2605:e000:c74f:dc00:6838:d2b2:17e2:8445]) by smtp.gmail.com with ESMTPSA id d6sm529767pjl.8.2019.12.16.14.12.31 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 16 Dec 2019 14:12:31 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=pZRCwuJZhFmLfLLVDEuLYlambcalO9LoW5IlxLfh4Nc=; b=dglJnJmfBxX3xB4BMXIsaIDRLpLVx+xKl1JYPDYU+yI9XHOFJKSU8dy4bZ9LJz4NQF GW881Gl75Obj6HGyFpGC2v+rjDdEGPza4pk3REfZAqM9zl4jn2L9yDUtvVUNlXlSGi7L qoGS5FvSZcIKiyWqpJBYcEfPOrE7WImTdWg8/+AWOD8BLk4HhuKmfu17m4+T6KhitpUN f/Dx5siaxIKeyu6XshKXgI76ZMbGj04g6is/H0dAffaVjN8QhoeHsITpXBwuQYTDvbZa eT6anJXYUOuxKLFUiyP5qLynfiRYUaEm7Fr7QTBi0aYcWK2jOnrWUZp1I2vEpD/nU0e/ ELVg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=pZRCwuJZhFmLfLLVDEuLYlambcalO9LoW5IlxLfh4Nc=; b=cLGWHrhqYuxXUw0ixoLb5L90gQQnrbKh+3y8rJTo4Tbr05crvmfaLIW47iePvXLiKg aAQBWLaIrfX7k80tbdT6zFn177dcB3A/Ruw0ExQovFzBx7aK1oUmSa3WKiWWG2YRuSwq Ci3eHx4KAxVdn7+n/0Cv5GkOjNCc6YdUzZAJfQr+eqIy5XlAhCI9ho6DDbq1tp+57UTM cADeu9B3Yb7NdJ0HbebQHHovDiDDCNekp6bcxBjSRwKKsXSpkfgEZAdR3E2YAZmkjRxL to0o/hxsgOJgkBTpklekPimKV4mW3n7/WJu6VAFcvPik7PXpPreyX7KTjYqo5aHFgpl5 LImw== X-Gm-Message-State: APjAAAUBebOyGYrMW2gCkBnG7gvKHNrW0NYvCYYlGbuNbumK7EjukOz+ YF2lWeaAM/WjaTK2wRnnNDNUaZpoIaw= X-Google-Smtp-Source: APXvYqyZsrVQdNHxJ3iPbZvRJT/E8HQp3zLVwyPtCTQPRD6YNdvIn14H9aSl141+rqujdQ91hpSzMA== X-Received: by 2002:a17:902:a616:: with SMTP id u22mr5998617plq.173.1576534352309; Mon, 16 Dec 2019 14:12:32 -0800 (PST) From: Richard Henderson To: qemu-devel@nongnu.org Subject: [PATCH v2 20/28] target/sh4: Remove MMU_MODE{0,1}_SUFFIX Date: Mon, 16 Dec 2019 12:11:50 -1000 Message-Id: <20191216221158.29572-21-richard.henderson@linaro.org> X-Mailer: git-send-email 2.20.1 In-Reply-To: <20191216221158.29572-1-richard.henderson@linaro.org> References: <20191216221158.29572-1-richard.henderson@linaro.org> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2607:f8b0:4864:20::1041 X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Aurelien Jarno Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: pass (identity @linaro.org) Content-Type: text/plain; charset="utf-8" The functions generated by these macros are unused. Cc: Aurelien Jarno Signed-off-by: Richard Henderson Reviewed-by: Alex Benn=C3=A9e --- target/sh4/cpu.h | 2 -- 1 file changed, 2 deletions(-) diff --git a/target/sh4/cpu.h b/target/sh4/cpu.h index ecaa7a18a9..452a596e67 100644 --- a/target/sh4/cpu.h +++ b/target/sh4/cpu.h @@ -254,8 +254,6 @@ void cpu_load_tlb(CPUSH4State * env); #define cpu_list sh4_cpu_list =20 /* MMU modes definitions */ -#define MMU_MODE0_SUFFIX _kernel -#define MMU_MODE1_SUFFIX _user #define MMU_USER_IDX 1 static inline int cpu_mmu_index (CPUSH4State *env, bool ifetch) { --=20 2.20.1 From nobody Sat May 4 23:35:41 2024 Delivered-To: importer@patchew.org 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; 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=1576535323; cv=none; d=zohomail.com; s=zohoarc; b=g7iyKSbLC6/ZFKeNWMh1TgX11Oy3cFsaA2LrcNmsNn/5DN5T2F65wyvMSXjb3Xo28VA51szcGyF7BAVwgZ1PWTu1dbLho/lB+QAxxyjVoCQRRgHaSHx4KN53LHkljfd8i3dwV82AmFYR/unOnw/9OHfFOC9LN/OgUeAS6nHROwE= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1576535323; h=Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=b1FV8qQCpJxFWsy94CcM4K8EE5MW0MHS/kAxt/18Mds=; b=ImKT7Tu7v+an1ezXYJ306QSAAL7LqKgdPes1Fl5oeD/GB25rUl+nMtEu7/We7neu6CS0xk4HWBkQJMkic0P1V3Uj11+B0gLJerC7MI9N9cfvFYG2svuV5cwiWBFIgewNLYkLpeazOwxFMcMnmjub+8RpMQkqZNQEdhQ2F6zbtDw= 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) header.from= Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1576535323298930.8149676131685; Mon, 16 Dec 2019 14:28:43 -0800 (PST) Received: from localhost ([::1]:60958 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1igyr4-0000PV-5Y for importer@patchew.org; Mon, 16 Dec 2019 17:28:42 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:37033) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1igybU-0005Vv-4R for qemu-devel@nongnu.org; Mon, 16 Dec 2019 17:12:37 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1igybT-0007YB-1a for qemu-devel@nongnu.org; Mon, 16 Dec 2019 17:12:35 -0500 Received: from mail-pg1-x543.google.com ([2607:f8b0:4864:20::543]:44038) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1igybS-0007X9-SW for qemu-devel@nongnu.org; Mon, 16 Dec 2019 17:12:34 -0500 Received: by mail-pg1-x543.google.com with SMTP id x7so4482009pgl.11 for ; Mon, 16 Dec 2019 14:12:34 -0800 (PST) Received: from localhost.localdomain ([2605:e000:c74f:dc00:6838:d2b2:17e2:8445]) by smtp.gmail.com with ESMTPSA id d6sm529767pjl.8.2019.12.16.14.12.32 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 16 Dec 2019 14:12:33 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=b1FV8qQCpJxFWsy94CcM4K8EE5MW0MHS/kAxt/18Mds=; b=Bgk4JFkNW+sJ/dz5ELiYElrTsrz3fFLExw3bBCromDd2/Y76ofUA+rClxFN10Hgd0h HR1srAVtO5XJ9h0rqIstfAn6QhMWq+wEJJdpFiV35kkcg2p5vLJISK3GPwRb8xmxR0Xq ZK0CbS3Ol5Ia7w528KtGnhRIlt70Bp+NHhVN3ROszjSzHThGRtbxRMVOJeoWXphryGTU 2sMR/cHEsJjul+yrYQoELeBBew1snWwY2zyoiUwBmiirfs3t8zjULI2sLg29ngxIqACc MNi+VgDZtE464SNL9pJYCyf+H87GO1C6OPdDyBSFeZvF09V7f161FYedOp6fhwvHD4v/ IKoQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=b1FV8qQCpJxFWsy94CcM4K8EE5MW0MHS/kAxt/18Mds=; b=cGfDVq6EjhEHy4zrfcI8825ZzWhaguAjY2KwOrhNa4EPjLF1d1U2aF8xID84cJ5+of e8HYHWuCRQ64leDpCAl0jsqrS0xFQQw3kpG+hkDEpYGZS0Cy3lBqkuwyVZLqquJjZTZj k/I1oD6mm4bdcqDbt69YxAZ9rT8yS0PhpikKLrdolUa7GHFyxzhmRhVK+iYyvtTzIB4P 5IJQKEZEVzfL+bGx/ABaOZG4A0r6aKhwKHvRrBuwe3TFK0uTz+M4BJzPevdwYJF6gm5X WzCxVmtpof5LX60NIwnwDR+yLgLfNhxlJFVQ5ri3d8bpmgxGyUMFCzL7CerUVXo+I4SV 3weQ== X-Gm-Message-State: APjAAAX2eYv21Mxf1l8T70ECOL0q4G8LZsat56pwuSQ1o93+ZCURPVoX eFEVzsCsNMy+wOkD19X2lp5ICTm3B2Y= X-Google-Smtp-Source: APXvYqxlqmUBGuu9wkYGto3MkJ5WYBKHjJI0h0pGkRpVWxxMQpIRgEtXtEWKUDZOAPsD/WwhFuJJFA== X-Received: by 2002:a62:5202:: with SMTP id g2mr18486921pfb.43.1576534353739; Mon, 16 Dec 2019 14:12:33 -0800 (PST) From: Richard Henderson To: qemu-devel@nongnu.org Subject: [PATCH v2 21/28] target/unicore32: Remove MMU_MODE{0,1}_SUFFIX Date: Mon, 16 Dec 2019 12:11:51 -1000 Message-Id: <20191216221158.29572-22-richard.henderson@linaro.org> X-Mailer: git-send-email 2.20.1 In-Reply-To: <20191216221158.29572-1-richard.henderson@linaro.org> References: <20191216221158.29572-1-richard.henderson@linaro.org> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2607:f8b0:4864:20::543 X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Guan Xuetao Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: pass (identity @linaro.org) Content-Type: text/plain; charset="utf-8" The functions generated by these macros are unused. Cc: Guan Xuetao Signed-off-by: Richard Henderson Reviewed-by: Alex Benn=C3=A9e --- target/unicore32/cpu.h | 2 -- 1 file changed, 2 deletions(-) diff --git a/target/unicore32/cpu.h b/target/unicore32/cpu.h index 50ed9dd99c..7a32e086ed 100644 --- a/target/unicore32/cpu.h +++ b/target/unicore32/cpu.h @@ -133,8 +133,6 @@ void cpu_asr_write(CPUUniCore32State *env1, target_ulon= g val, target_ulong mask) int uc32_cpu_signal_handler(int host_signum, void *pinfo, void *puc); =20 /* MMU modes definitions */ -#define MMU_MODE0_SUFFIX _kernel -#define MMU_MODE1_SUFFIX _user #define MMU_USER_IDX 1 static inline int cpu_mmu_index(CPUUniCore32State *env, bool ifetch) { --=20 2.20.1 From nobody Sat May 4 23:35:41 2024 Delivered-To: importer@patchew.org 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; 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=1576534790; cv=none; d=zohomail.com; s=zohoarc; b=QaSrh5gPXc/CBX5ZgejiRJ2mQG3Og/S11Zc9lTmbMNqITaTuuoaL3ALhQ3k3KRCeUC5RLJqiWFBQeMguBB94k9ihYQuAbWxed3zaXVu/6ASAtOD1UeaTsbaOjas2Gk/SRfq35Wbu/VaVZKzr1/SMbcHsPRSIn4ZeMSUgfg05PWs= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1576534790; h=Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=RdINugPS7BTi3ugzwRFiwRgkZkC17AvAn9JuWLfSCDM=; b=MGJ09fZnhAiyEzTOPDlbCEQFSR0167imT9iXvj3jBW4IEbkrbyV/eWSWu4iRhuNMnGWC51k2GncLXy8lKHScKIF/xi9Lr+axbC+Mndr94RHsa+fNtJNKuSdmIT/RsnAl6vkBuK4mZEU4ZTVQTXfGtLehKV9G2tDbQ8vB1qmHdUI= 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) header.from= Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1576534790298502.55836667407164; Mon, 16 Dec 2019 14:19:50 -0800 (PST) Received: from localhost ([::1]:60750 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1igyiS-0005ZY-Rg for importer@patchew.org; Mon, 16 Dec 2019 17:19:48 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:37059) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1igybV-0005Xw-Bn for qemu-devel@nongnu.org; Mon, 16 Dec 2019 17:12:38 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1igybU-0007cc-DI for qemu-devel@nongnu.org; Mon, 16 Dec 2019 17:12:37 -0500 Received: from mail-pf1-x442.google.com ([2607:f8b0:4864:20::442]:33964) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1igybU-0007au-7z for qemu-devel@nongnu.org; Mon, 16 Dec 2019 17:12:36 -0500 Received: by mail-pf1-x442.google.com with SMTP id l127so4589840pfl.1 for ; Mon, 16 Dec 2019 14:12:36 -0800 (PST) Received: from localhost.localdomain ([2605:e000:c74f:dc00:6838:d2b2:17e2:8445]) by smtp.gmail.com with ESMTPSA id d6sm529767pjl.8.2019.12.16.14.12.33 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 16 Dec 2019 14:12:34 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=RdINugPS7BTi3ugzwRFiwRgkZkC17AvAn9JuWLfSCDM=; b=MDkQ1wQI5owBVSezTGfopmtJhXbnUJ9OuAadvRmCVwh+wextdJo8GNsAcBndYW2f44 GbPwTcrYLSDNpv7A3gLSxMntvrCKNWoF/y8uAuWKAV0DEZOBcVro30qQQhkd7F+SLHJQ wmZlhmMjkAqIYGMqZhvzn8rvNLqhhkAZPdFm2md616jmnsHBhPM0isCp4jBWHQsATyif vRw2jS71Lm3Tw+Y29ze1sxt0dCOqNfSD7O56ghaLB9eEylP2phCXak4aY8nJe9yIZmH7 pWZxfh7uIk5RDGrJt7Kv3vzFNXimifGKG05bnur/NdQYrH3qjXRlC9Jjcf2FqDglhSc4 kbnQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=RdINugPS7BTi3ugzwRFiwRgkZkC17AvAn9JuWLfSCDM=; b=UdsYlHZCHX6D90k9npZggdkZYTqkA2dIilcMflTRNrjWEcijjcGYixQDdnMgNKwiqd RF8vQoG8ofj+fdGfTRPG/51LTHewewD/DpcRGntzzBPm3QNLNEoYibakb/7jVAxOJE1s 8VMCDxXYL+TmxULrSFJ29Cvi8OSPiSieVsMhxieKuFB2EHQX+s+NnAYfqNBgHC5K+Ohr hmTjz7p4sRdiJk3Fm/ryxmTl1jz4WNZ5+ynsAXopjWFS9LYQJu7Q1pFWxLiFm5Qfpd6c 4SjF3CpmWQaL6SwtinPcHSeC7xRWJJqjgcQ/BCqn1JvYRQjBsU6Or82+UNZO8v5i067o oBPg== X-Gm-Message-State: APjAAAXuFrGz9A5m8Q6ghQqxThrFRyXOxUGn3/swpcJjZJCrEz73xWms Jag1oF/8em8d5u5CMCJJDnFB8eqjQBg= X-Google-Smtp-Source: APXvYqzCzbIfSPotmRwMJdVjI1Zug+nYq2fDcvwDxNG/jDA3HMR15/O2ZO1ndDdiDr52TGSHQbaHAg== X-Received: by 2002:a62:16d1:: with SMTP id 200mr18736289pfw.235.1576534355142; Mon, 16 Dec 2019 14:12:35 -0800 (PST) From: Richard Henderson To: qemu-devel@nongnu.org Subject: [PATCH v2 22/28] target/xtensa: Remove MMU_MODE{0,1,2,3}_SUFFIX Date: Mon, 16 Dec 2019 12:11:52 -1000 Message-Id: <20191216221158.29572-23-richard.henderson@linaro.org> X-Mailer: git-send-email 2.20.1 In-Reply-To: <20191216221158.29572-1-richard.henderson@linaro.org> References: <20191216221158.29572-1-richard.henderson@linaro.org> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2607:f8b0:4864:20::442 X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Max Filippov Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: pass (identity @linaro.org) Content-Type: text/plain; charset="utf-8" The functions generated by these macros are unused. Acked-by: Max Filippov Signed-off-by: Richard Henderson Reviewed-by: Alex Benn=C3=A9e --- target/xtensa/cpu.h | 4 ---- 1 file changed, 4 deletions(-) diff --git a/target/xtensa/cpu.h b/target/xtensa/cpu.h index b363ffcf10..f5a7ea48bb 100644 --- a/target/xtensa/cpu.h +++ b/target/xtensa/cpu.h @@ -685,10 +685,6 @@ static inline uint32_t xtensa_replicate_windowstart(CP= UXtensaState *env) } =20 /* MMU modes definitions */ -#define MMU_MODE0_SUFFIX _ring0 -#define MMU_MODE1_SUFFIX _ring1 -#define MMU_MODE2_SUFFIX _ring2 -#define MMU_MODE3_SUFFIX _ring3 #define MMU_USER_IDX 3 =20 static inline int cpu_mmu_index(CPUXtensaState *env, bool ifetch) --=20 2.20.1 From nobody Sat May 4 23:35:41 2024 Delivered-To: importer@patchew.org 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; 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 ARC-Seal: i=1; a=rsa-sha256; t=1576535433; cv=none; d=zohomail.com; s=zohoarc; b=IGcJHquPevke3pmpx4RHk7+qKifPsVxUDRTXe2ZyLQULQeQXYphgMJWVUJoo9YhI1fbclhRPrtAzMNVNZ3gv2s/EZaJWA71PKNa8aeA+zrUgnuO6cWQE7jo8ATEmamUQSBKeCfzM4Q/zU1qJoHNtwaLV2EolAOaRCTm6pNhiU0A= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1576535433; h=Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=EBuG90/vK8B36Mf6d2sHl6oKF9FxUrNicyhDw+0iJQ0=; b=WLMDElHxUxHkxsly8GKHgNe1/Tb45RlJ1RutQ38lJXjn0A6A/qHamRWKNlYt01Kt8CjxMEfloj3s+fF6vjHVxXTduqjmFoEZ3A2r2ORWhBlIZo6WRe49ks02dyOiHXJIwbLbhIAhMIfDrg1qDY1WnnAMxgtfyCFWkaR97PMKeC0= ARC-Authentication-Results: i=1; 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 header.from= (p=none dis=none) header.from= Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1576535433654273.9787647753078; Mon, 16 Dec 2019 14:30:33 -0800 (PST) Received: from localhost ([::1]:60988 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1igysq-0002Ag-Bg for importer@patchew.org; Mon, 16 Dec 2019 17:30:32 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:37091) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1igybX-0005bv-O1 for qemu-devel@nongnu.org; Mon, 16 Dec 2019 17:12:41 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1igybW-0007gb-62 for qemu-devel@nongnu.org; Mon, 16 Dec 2019 17:12:39 -0500 Received: from mail-pf1-x444.google.com ([2607:f8b0:4864:20::444]:40356) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1igybV-0007fA-Um for qemu-devel@nongnu.org; Mon, 16 Dec 2019 17:12:38 -0500 Received: by mail-pf1-x444.google.com with SMTP id q8so6375364pfh.7 for ; Mon, 16 Dec 2019 14:12:37 -0800 (PST) Received: from localhost.localdomain ([2605:e000:c74f:dc00:6838:d2b2:17e2:8445]) by smtp.gmail.com with ESMTPSA id d6sm529767pjl.8.2019.12.16.14.12.35 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 16 Dec 2019 14:12:36 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=EBuG90/vK8B36Mf6d2sHl6oKF9FxUrNicyhDw+0iJQ0=; b=NO7k0iit9iUGLeZ/HIHUaYiwXpR6/W1ZMbdayoHB3bUU4u4dktb3kJ9uEk7dYESoMP reD+W9eZCOaoc2Y3OSQe9HypCtNcZ7YVwT9wwfNrFm1QsM5mJFcdpGo27nus1gV2ySxJ 2ADI1le9gJmEixAjwC5B1EuOoe6qfZOlHw7ljwu3+FdE4MCfx2SIVxgWpkGWbG0QwBKI W6vtX1j7gL8A28rMuml9EeoEqL8e4p0VbXWwusMtQYw9CWZeLMSLxqH4sPqiNKirm5+h xljpP8GFXOw6HQsUZxzWKIiM+QtNydDaXAvXzPsyPGKFOefm7oQSZxT3pdd+mcceKe1H orHA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=EBuG90/vK8B36Mf6d2sHl6oKF9FxUrNicyhDw+0iJQ0=; b=MQabkB5ohdrub+O34HuXkzoSLg8jkEnAQvS9fHuddJqOODLjTLw1n+xPUh94t9u21h PgiC3i6VzWNVyUhW2p3g9YyKdyyJ68+2Gljxsf/INwcYjjvzhtkt5JGmhf2qbxsVelYY D8yllHRB8hji6kqGybEu1eVjAHdV4XrjhlMXrxezaeZQtkShgYmBs95HaouGQTCNyXhe SlV3YS9XnECNqqyLJUvjEL9A/Eph8uI9rCdPO6BojpBxOnUR5h0rB/00hVzNjFA6/atp irqifRRgQjb2fXuh3pflLMzWtu+EIQLcX4JzkvKaiGUtt9H1/wEZBHRrk9HAdL1ScGm0 u8Rg== X-Gm-Message-State: APjAAAU9rInf7mq9KdGbiNqNGEHW1XcDCwHCd0d0YWXvYhGFa0KvLLII yXE3q+1bZL9JiCc4WwEwWQIUIoKRKAE= X-Google-Smtp-Source: APXvYqw8ISNGQ3LByAO+oPy7DfbWOfNTRO589P8iPSQRSA7vbb0x+U1e/qQn6lW7GXou30m2qK6A5g== X-Received: by 2002:a63:4416:: with SMTP id r22mr21022359pga.254.1576534356610; Mon, 16 Dec 2019 14:12:36 -0800 (PST) From: Richard Henderson To: qemu-devel@nongnu.org Subject: [PATCH v2 23/28] target/m68k: Use cpu_*_mmuidx_ra instead of MMU_MODE{0, 1}_SUFFIX Date: Mon, 16 Dec 2019 12:11:53 -1000 Message-Id: <20191216221158.29572-24-richard.henderson@linaro.org> X-Mailer: git-send-email 2.20.1 In-Reply-To: <20191216221158.29572-1-richard.henderson@linaro.org> References: <20191216221158.29572-1-richard.henderson@linaro.org> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2607:f8b0:4864:20::444 X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Laurent Vivier Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: fail (Header signature does not verify) Content-Type: text/plain; charset="utf-8" The generated *_user functions are unused. The *_kernel functions have a couple of users in op_helper.c; use *_mmuidx_ra instead, with MMU_KERNEL_IDX. Reviewed-by: Laurent Vivier Signed-off-by: Richard Henderson Reviewed-by: Alex Benn=C3=A9e --- v2: Use *_mmuidx_ra directly, without intermediate macros. --- target/m68k/cpu.h | 2 -- target/m68k/op_helper.c | 77 +++++++++++++++++++++++++---------------- 2 files changed, 47 insertions(+), 32 deletions(-) diff --git a/target/m68k/cpu.h b/target/m68k/cpu.h index 20de3c379a..89af14e899 100644 --- a/target/m68k/cpu.h +++ b/target/m68k/cpu.h @@ -516,8 +516,6 @@ enum { #define cpu_list m68k_cpu_list =20 /* MMU modes definitions */ -#define MMU_MODE0_SUFFIX _kernel -#define MMU_MODE1_SUFFIX _user #define MMU_KERNEL_IDX 0 #define MMU_USER_IDX 1 static inline int cpu_mmu_index (CPUM68KState *env, bool ifetch) diff --git a/target/m68k/op_helper.c b/target/m68k/op_helper.c index bc4f845e3f..202498deb5 100644 --- a/target/m68k/op_helper.c +++ b/target/m68k/op_helper.c @@ -42,8 +42,8 @@ static void cf_rte(CPUM68KState *env) uint32_t fmt; =20 sp =3D env->aregs[7]; - fmt =3D cpu_ldl_kernel(env, sp); - env->pc =3D cpu_ldl_kernel(env, sp + 4); + fmt =3D cpu_ldl_mmuidx_ra(env, sp, MMU_KERNEL_IDX, 0); + env->pc =3D cpu_ldl_mmuidx_ra(env, sp + 4, MMU_KERNEL_IDX, 0); sp |=3D (fmt >> 28) & 3; env->aregs[7] =3D sp + 8; =20 @@ -58,13 +58,13 @@ static void m68k_rte(CPUM68KState *env) =20 sp =3D env->aregs[7]; throwaway: - sr =3D cpu_lduw_kernel(env, sp); + sr =3D cpu_lduw_mmuidx_ra(env, sp, MMU_KERNEL_IDX, 0); sp +=3D 2; - env->pc =3D cpu_ldl_kernel(env, sp); + env->pc =3D cpu_ldl_mmuidx_ra(env, sp, MMU_KERNEL_IDX, 0); sp +=3D 4; if (m68k_feature(env, M68K_FEATURE_QUAD_MULDIV)) { /* all except 68000 */ - fmt =3D cpu_lduw_kernel(env, sp); + fmt =3D cpu_lduw_mmuidx_ra(env, sp, MMU_KERNEL_IDX, 0); sp +=3D 2; switch (fmt >> 12) { case 0: @@ -260,12 +260,12 @@ static void cf_interrupt_all(CPUM68KState *env, int i= s_hw) /* ??? This could cause MMU faults. */ sp &=3D ~3; sp -=3D 4; - cpu_stl_kernel(env, sp, retaddr); + cpu_stl_mmuidx_ra(env, sp, retaddr, MMU_KERNEL_IDX, 0); sp -=3D 4; - cpu_stl_kernel(env, sp, fmt); + cpu_stl_mmuidx_ra(env, sp, fmt, MMU_KERNEL_IDX, 0); env->aregs[7] =3D sp; /* Jump to vector. */ - env->pc =3D cpu_ldl_kernel(env, env->vbr + vector); + env->pc =3D cpu_ldl_mmuidx_ra(env, env->vbr + vector, MMU_KERNEL_IDX, = 0); } =20 static inline void do_stack_frame(CPUM68KState *env, uint32_t *sp, @@ -278,23 +278,24 @@ static inline void do_stack_frame(CPUM68KState *env, = uint32_t *sp, switch (format) { case 4: *sp -=3D 4; - cpu_stl_kernel(env, *sp, env->pc); + cpu_stl_mmuidx_ra(env, *sp, env->pc, MMU_KERNEL_IDX, 0); *sp -=3D 4; - cpu_stl_kernel(env, *sp, addr); + cpu_stl_mmuidx_ra(env, *sp, addr, MMU_KERNEL_IDX, 0); break; case 3: case 2: *sp -=3D 4; - cpu_stl_kernel(env, *sp, addr); + cpu_stl_mmuidx_ra(env, *sp, addr, MMU_KERNEL_IDX, 0); break; } *sp -=3D 2; - cpu_stw_kernel(env, *sp, (format << 12) + (cs->exception_index << = 2)); + cpu_stw_mmuidx_ra(env, *sp, (format << 12) + (cs->exception_index = << 2), + MMU_KERNEL_IDX, 0); } *sp -=3D 4; - cpu_stl_kernel(env, *sp, retaddr); + cpu_stl_mmuidx_ra(env, *sp, retaddr, MMU_KERNEL_IDX, 0); *sp -=3D 2; - cpu_stw_kernel(env, *sp, sr); + cpu_stw_mmuidx_ra(env, *sp, sr, MMU_KERNEL_IDX, 0); } =20 static void m68k_interrupt_all(CPUM68KState *env, int is_hw) @@ -353,36 +354,52 @@ static void m68k_interrupt_all(CPUM68KState *env, int= is_hw) cpu_abort(cs, "DOUBLE MMU FAULT\n"); } env->mmu.fault =3D true; + /* push data 3 */ sp -=3D 4; - cpu_stl_kernel(env, sp, 0); /* push data 3 */ + cpu_stl_mmuidx_ra(env, sp, 0, MMU_KERNEL_IDX, 0); + /* push data 2 */ sp -=3D 4; - cpu_stl_kernel(env, sp, 0); /* push data 2 */ + cpu_stl_mmuidx_ra(env, sp, 0, MMU_KERNEL_IDX, 0); + /* push data 1 */ sp -=3D 4; - cpu_stl_kernel(env, sp, 0); /* push data 1 */ + cpu_stl_mmuidx_ra(env, sp, 0, MMU_KERNEL_IDX, 0); + /* write back 1 / push data 0 */ sp -=3D 4; - cpu_stl_kernel(env, sp, 0); /* write back 1 / push data 0 */ + cpu_stl_mmuidx_ra(env, sp, 0, MMU_KERNEL_IDX, 0); + /* write back 1 address */ sp -=3D 4; - cpu_stl_kernel(env, sp, 0); /* write back 1 address */ + cpu_stl_mmuidx_ra(env, sp, 0, MMU_KERNEL_IDX, 0); + /* write back 2 data */ sp -=3D 4; - cpu_stl_kernel(env, sp, 0); /* write back 2 data */ + cpu_stl_mmuidx_ra(env, sp, 0, MMU_KERNEL_IDX, 0); + /* write back 2 address */ sp -=3D 4; - cpu_stl_kernel(env, sp, 0); /* write back 2 address */ + cpu_stl_mmuidx_ra(env, sp, 0, MMU_KERNEL_IDX, 0); + /* write back 3 data */ sp -=3D 4; - cpu_stl_kernel(env, sp, 0); /* write back 3 data */ + cpu_stl_mmuidx_ra(env, sp, 0, MMU_KERNEL_IDX, 0); + /* write back 3 address */ sp -=3D 4; - cpu_stl_kernel(env, sp, env->mmu.ar); /* write back 3 address */ + cpu_stl_mmuidx_ra(env, sp, env->mmu.ar, MMU_KERNEL_IDX, 0); + /* fault address */ sp -=3D 4; - cpu_stl_kernel(env, sp, env->mmu.ar); /* fault address */ + cpu_stl_mmuidx_ra(env, sp, env->mmu.ar, MMU_KERNEL_IDX, 0); + /* write back 1 status */ sp -=3D 2; - cpu_stw_kernel(env, sp, 0); /* write back 1 status */ + cpu_stw_mmuidx_ra(env, sp, 0, MMU_KERNEL_IDX, 0); + /* write back 2 status */ sp -=3D 2; - cpu_stw_kernel(env, sp, 0); /* write back 2 status */ + cpu_stw_mmuidx_ra(env, sp, 0, MMU_KERNEL_IDX, 0); + /* write back 3 status */ sp -=3D 2; - cpu_stw_kernel(env, sp, 0); /* write back 3 status */ + cpu_stw_mmuidx_ra(env, sp, 0, MMU_KERNEL_IDX, 0); + /* special status word */ sp -=3D 2; - cpu_stw_kernel(env, sp, env->mmu.ssw); /* special status word */ + cpu_stw_mmuidx_ra(env, sp, env->mmu.ssw, MMU_KERNEL_IDX, 0); + /* effective address */ sp -=3D 4; - cpu_stl_kernel(env, sp, env->mmu.ar); /* effective address */ + cpu_stl_mmuidx_ra(env, sp, env->mmu.ar, MMU_KERNEL_IDX, 0); + do_stack_frame(env, &sp, 7, oldsr, 0, retaddr); env->mmu.fault =3D false; if (qemu_loglevel_mask(CPU_LOG_INT)) { @@ -414,7 +431,7 @@ static void m68k_interrupt_all(CPUM68KState *env, int i= s_hw) =20 env->aregs[7] =3D sp; /* Jump to vector. */ - env->pc =3D cpu_ldl_kernel(env, env->vbr + vector); + env->pc =3D cpu_ldl_mmuidx_ra(env, env->vbr + vector, MMU_KERNEL_IDX, = 0); } =20 static void do_interrupt_all(CPUM68KState *env, int is_hw) --=20 2.20.1 From nobody Sat May 4 23:35:41 2024 Delivered-To: importer@patchew.org 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; 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 ARC-Seal: i=1; a=rsa-sha256; t=1576534949; cv=none; d=zohomail.com; s=zohoarc; b=VqRSQ331o5tW68acWH6GSh5oi8CHLXKbMePzrkAuNdR+kH4htnZj3Rm9SnQFcdDaNRrMcrkHe6ASAp3bs5KxyCe9Fyr0uSe2Pqn2CdTcGraaZcWb3TntTIxgaJMWD2vRokQl/vRXj3ZLOpQN0UbyD+84xaouKdOwTRyM9h4AQo4= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1576534949; h=Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=XtJdqyLi6EEA8LSZvbXqiDPHZfLt+fS53VoCcJ6uOsI=; b=USCH6beqblAy1QTzIEybK73hd+nxKDHJ0PMR4Ayrd82fuoHs+RkgquOMz2BI6U5jcU7yLGyyMEThPprSlcB/kL15ouTmIMjeqCcfuAshkq0ci0W59gSOEMHheIUrhdimjYEabGBebJdOfY2ocrwH3k/85PJxdS7bVlit+8783GM= ARC-Authentication-Results: i=1; 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 header.from= (p=none dis=none) header.from= Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1576534949425430.09070396125037; Mon, 16 Dec 2019 14:22:29 -0800 (PST) Received: from localhost ([::1]:60812 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1igyl1-0000cu-NJ for importer@patchew.org; Mon, 16 Dec 2019 17:22:27 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:37116) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1igybZ-0005fA-Kl for qemu-devel@nongnu.org; Mon, 16 Dec 2019 17:12:43 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1igybX-0007kN-O4 for qemu-devel@nongnu.org; Mon, 16 Dec 2019 17:12:41 -0500 Received: from mail-pl1-x643.google.com ([2607:f8b0:4864:20::643]:46380) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1igybX-0007jN-GJ for qemu-devel@nongnu.org; Mon, 16 Dec 2019 17:12:39 -0500 Received: by mail-pl1-x643.google.com with SMTP id k20so5103112pll.13 for ; Mon, 16 Dec 2019 14:12:39 -0800 (PST) Received: from localhost.localdomain ([2605:e000:c74f:dc00:6838:d2b2:17e2:8445]) by smtp.gmail.com with ESMTPSA id d6sm529767pjl.8.2019.12.16.14.12.36 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 16 Dec 2019 14:12:37 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=XtJdqyLi6EEA8LSZvbXqiDPHZfLt+fS53VoCcJ6uOsI=; b=XJLRWK8q8cz2kAvYvSD9kiDQmkNpb/poR4cPgyikNKbHjtfwYPxe8gF0OhTN9K412F p0A63UmWwZ0Hxptb28DJH97qCJpZFtl4SXgPK6BFsK8UTeGV8POetaiddUaoANovwv2T dJ594RQqGL/iCsbRgspWGxQZid+OaADt6nma8WQcYVnQZsqEw7LkC6d65BlN8dOwbKah PLhZ5VvDiHl9nejMso+Fk1i0bt/MeWvhrB2PdV0Uz5wvVTUajwVyrgIkVgVSi+QoCDsj S3ILxwsf+lEv9HBHHOMU2WhAcaNi8GSZkIetoKPYypXEe6FGNX30Gdfd3oBQBXirpC3E /yHw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=XtJdqyLi6EEA8LSZvbXqiDPHZfLt+fS53VoCcJ6uOsI=; b=oknD8zCUyn8Mfh3HAOPM+r2ZIRMcK5OfqMv1AZWkxGtbpXsU9aqPQE45mEoGOC/w7t hnHHjIhKiZJX8dMcJ97BagCSyGaePMdTzL+euIYXUwGKYCVJJDE+fCTUR9zVWa3DpW5I I98QwNGuZGY1JehrFeDQz/SST1N5eMmBP40RG5H2g8XHHDbBYnpQBwUBteVWapTVt7TR ptduDhPH+vKK1AxG6+Xm4yWcw6WVRWE+O7Z6wGY+Jg4WbmlfvtMMcDmcnuzDucv/D1YC GUVkwmltrOCder7y1Ik1Q+cj/psM8ggMjXnqOmcNS3UXGPKLmbkkhCxb/cTKgEo6mJ8P oaHA== X-Gm-Message-State: APjAAAWEOrTdGzm949xo+D/TLmk2HK22JR4nl+kxDExZdFis/TkSKOrV i02xgT6sbgg1C+hL/CRr1++mxm/ntGg= X-Google-Smtp-Source: APXvYqyklEVUajXRAKFRcpQjCtuYTHvljH8eek+mM/ZU55n7flJLJ0WP+VdgZzZTqGqGzHhXsgkUWw== X-Received: by 2002:a17:902:8c91:: with SMTP id t17mr18368521plo.225.1576534358128; Mon, 16 Dec 2019 14:12:38 -0800 (PST) From: Richard Henderson To: qemu-devel@nongnu.org Subject: [PATCH v2 24/28] target/mips: Use cpu_*_mmuidx_ra instead of MMU_MODE*_SUFFIX Date: Mon, 16 Dec 2019 12:11:54 -1000 Message-Id: <20191216221158.29572-25-richard.henderson@linaro.org> X-Mailer: git-send-email 2.20.1 In-Reply-To: <20191216221158.29572-1-richard.henderson@linaro.org> References: <20191216221158.29572-1-richard.henderson@linaro.org> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2607:f8b0:4864:20::643 X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Aleksandar Rikalo , Aleksandar Markovic , Aurelien Jarno Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: fail (Header signature does not verify) Content-Type: text/plain; charset="utf-8" The separate suffixed functions were used to construct some do_##insn function switched on mmu_idx. The interface is exactly identical to the *_mmuidx_ra functions. Replace them directly and remove the constructions. Cc: Aurelien Jarno Cc: Aleksandar Rikalo Reviewed-by: Aleksandar Markovic Signed-off-by: Richard Henderson Reviewed-by: Alex Benn=C3=A9e --- target/mips/cpu.h | 4 - target/mips/op_helper.c | 182 +++++++++++++--------------------------- 2 files changed, 60 insertions(+), 126 deletions(-) diff --git a/target/mips/cpu.h b/target/mips/cpu.h index ca00f41daf..c218ccc4a8 100644 --- a/target/mips/cpu.h +++ b/target/mips/cpu.h @@ -1147,10 +1147,6 @@ extern uint32_t cpu_rddsp(uint32_t mask_num, CPUMIPS= State *env); * MMU modes definitions. We carefully match the indices with our * hflags layout. */ -#define MMU_MODE0_SUFFIX _kernel -#define MMU_MODE1_SUFFIX _super -#define MMU_MODE2_SUFFIX _user -#define MMU_MODE3_SUFFIX _error #define MMU_USER_IDX 2 =20 static inline int hflags_mmu_index(uint32_t hflags) diff --git a/target/mips/op_helper.c b/target/mips/op_helper.c index 18fcee4a78..79d44da6fa 100644 --- a/target/mips/op_helper.c +++ b/target/mips/op_helper.c @@ -52,69 +52,6 @@ static void raise_exception(CPUMIPSState *env, uint32_t = exception) do_raise_exception(env, exception, 0); } =20 -#if defined(CONFIG_USER_ONLY) -#define HELPER_LD(name, insn, type) \ -static inline type do_##name(CPUMIPSState *env, target_ulong addr, \ - int mem_idx, uintptr_t retaddr) \ -{ \ - return (type) cpu_##insn##_data_ra(env, addr, retaddr); \ -} -#else -#define HELPER_LD(name, insn, type) \ -static inline type do_##name(CPUMIPSState *env, target_ulong addr, \ - int mem_idx, uintptr_t retaddr) \ -{ \ - switch (mem_idx) { \ - case 0: return (type) cpu_##insn##_kernel_ra(env, addr, retaddr); \ - case 1: return (type) cpu_##insn##_super_ra(env, addr, retaddr); \ - default: \ - case 2: return (type) cpu_##insn##_user_ra(env, addr, retaddr); \ - case 3: return (type) cpu_##insn##_error_ra(env, addr, retaddr); \ - } \ -} -#endif -HELPER_LD(lw, ldl, int32_t) -#if defined(TARGET_MIPS64) -HELPER_LD(ld, ldq, int64_t) -#endif -#undef HELPER_LD - -#if defined(CONFIG_USER_ONLY) -#define HELPER_ST(name, insn, type) \ -static inline void do_##name(CPUMIPSState *env, target_ulong addr, \ - type val, int mem_idx, uintptr_t retaddr) \ -{ \ - cpu_##insn##_data_ra(env, addr, val, retaddr); \ -} -#else -#define HELPER_ST(name, insn, type) \ -static inline void do_##name(CPUMIPSState *env, target_ulong addr, \ - type val, int mem_idx, uintptr_t retaddr) \ -{ \ - switch (mem_idx) { \ - case 0: \ - cpu_##insn##_kernel_ra(env, addr, val, retaddr); \ - break; \ - case 1: \ - cpu_##insn##_super_ra(env, addr, val, retaddr); \ - break; \ - default: \ - case 2: \ - cpu_##insn##_user_ra(env, addr, val, retaddr); \ - break; \ - case 3: \ - cpu_##insn##_error_ra(env, addr, val, retaddr); \ - break; \ - } \ -} -#endif -HELPER_ST(sb, stb, uint8_t) -HELPER_ST(sw, stl, uint32_t) -#if defined(TARGET_MIPS64) -HELPER_ST(sd, stq, uint64_t) -#endif -#undef HELPER_ST - /* 64 bits arithmetic for 32 bits hosts */ static inline uint64_t get_HILO(CPUMIPSState *env) { @@ -379,12 +316,12 @@ target_ulong helper_##name(CPUMIPSState *env, target_= ulong arg, int mem_idx) \ } = \ env->CP0_LLAddr =3D do_translate_address(env, arg, 0, GETPC()); = \ env->lladdr =3D arg; = \ - env->llval =3D do_##insn(env, arg, mem_idx, GETPC()); = \ + env->llval =3D cpu_##insn##_mmuidx_ra(env, arg, mem_idx, GETPC()); = \ return env->llval; = \ } -HELPER_LD_ATOMIC(ll, lw, 0x3) +HELPER_LD_ATOMIC(ll, ldl, 0x3) #ifdef TARGET_MIPS64 -HELPER_LD_ATOMIC(lld, ld, 0x7) +HELPER_LD_ATOMIC(lld, ldq, 0x7) #endif #undef HELPER_LD_ATOMIC #endif @@ -400,42 +337,42 @@ HELPER_LD_ATOMIC(lld, ld, 0x7) void helper_swl(CPUMIPSState *env, target_ulong arg1, target_ulong arg2, int mem_idx) { - do_sb(env, arg2, (uint8_t)(arg1 >> 24), mem_idx, GETPC()); + cpu_stb_mmuidx_ra(env, arg2, (uint8_t)(arg1 >> 24), mem_idx, GETPC()); =20 if (GET_LMASK(arg2) <=3D 2) { - do_sb(env, GET_OFFSET(arg2, 1), (uint8_t)(arg1 >> 16), mem_idx, - GETPC()); + cpu_stb_mmuidx_ra(env, GET_OFFSET(arg2, 1), (uint8_t)(arg1 >> 16), + mem_idx, GETPC()); } =20 if (GET_LMASK(arg2) <=3D 1) { - do_sb(env, GET_OFFSET(arg2, 2), (uint8_t)(arg1 >> 8), mem_idx, - GETPC()); + cpu_stb_mmuidx_ra(env, GET_OFFSET(arg2, 2), (uint8_t)(arg1 >> 8), + mem_idx, GETPC()); } =20 if (GET_LMASK(arg2) =3D=3D 0) { - do_sb(env, GET_OFFSET(arg2, 3), (uint8_t)arg1, mem_idx, - GETPC()); + cpu_stb_mmuidx_ra(env, GET_OFFSET(arg2, 3), (uint8_t)arg1, + mem_idx, GETPC()); } } =20 void helper_swr(CPUMIPSState *env, target_ulong arg1, target_ulong arg2, int mem_idx) { - do_sb(env, arg2, (uint8_t)arg1, mem_idx, GETPC()); + cpu_stb_mmuidx_ra(env, arg2, (uint8_t)arg1, mem_idx, GETPC()); =20 if (GET_LMASK(arg2) >=3D 1) { - do_sb(env, GET_OFFSET(arg2, -1), (uint8_t)(arg1 >> 8), mem_idx, - GETPC()); + cpu_stb_mmuidx_ra(env, GET_OFFSET(arg2, -1), (uint8_t)(arg1 >> 8), + mem_idx, GETPC()); } =20 if (GET_LMASK(arg2) >=3D 2) { - do_sb(env, GET_OFFSET(arg2, -2), (uint8_t)(arg1 >> 16), mem_idx, - GETPC()); + cpu_stb_mmuidx_ra(env, GET_OFFSET(arg2, -2), (uint8_t)(arg1 >> 16), + mem_idx, GETPC()); } =20 if (GET_LMASK(arg2) =3D=3D 3) { - do_sb(env, GET_OFFSET(arg2, -3), (uint8_t)(arg1 >> 24), mem_idx, - GETPC()); + cpu_stb_mmuidx_ra(env, GET_OFFSET(arg2, -3), (uint8_t)(arg1 >> 24), + mem_idx, GETPC()); } } =20 @@ -453,82 +390,82 @@ void helper_swr(CPUMIPSState *env, target_ulong arg1,= target_ulong arg2, void helper_sdl(CPUMIPSState *env, target_ulong arg1, target_ulong arg2, int mem_idx) { - do_sb(env, arg2, (uint8_t)(arg1 >> 56), mem_idx, GETPC()); + cpu_stb_mmuidx_ra(env, arg2, (uint8_t)(arg1 >> 56), mem_idx, GETPC()); =20 if (GET_LMASK64(arg2) <=3D 6) { - do_sb(env, GET_OFFSET(arg2, 1), (uint8_t)(arg1 >> 48), mem_idx, - GETPC()); + cpu_stb_mmuidx_ra(env, GET_OFFSET(arg2, 1), (uint8_t)(arg1 >> 48), + mem_idx, GETPC()); } =20 if (GET_LMASK64(arg2) <=3D 5) { - do_sb(env, GET_OFFSET(arg2, 2), (uint8_t)(arg1 >> 40), mem_idx, - GETPC()); + cpu_stb_mmuidx_ra(env, GET_OFFSET(arg2, 2), (uint8_t)(arg1 >> 40), + mem_idx, GETPC()); } =20 if (GET_LMASK64(arg2) <=3D 4) { - do_sb(env, GET_OFFSET(arg2, 3), (uint8_t)(arg1 >> 32), mem_idx, - GETPC()); + cpu_stb_mmuidx_ra(env, GET_OFFSET(arg2, 3), (uint8_t)(arg1 >> 32), + mem_idx, GETPC()); } =20 if (GET_LMASK64(arg2) <=3D 3) { - do_sb(env, GET_OFFSET(arg2, 4), (uint8_t)(arg1 >> 24), mem_idx, - GETPC()); + cpu_stb_mmuidx_ra(env, GET_OFFSET(arg2, 4), (uint8_t)(arg1 >> 24), + mem_idx, GETPC()); } =20 if (GET_LMASK64(arg2) <=3D 2) { - do_sb(env, GET_OFFSET(arg2, 5), (uint8_t)(arg1 >> 16), mem_idx, - GETPC()); + cpu_stb_mmuidx_ra(env, GET_OFFSET(arg2, 5), (uint8_t)(arg1 >> 16), + mem_idx, GETPC()); } =20 if (GET_LMASK64(arg2) <=3D 1) { - do_sb(env, GET_OFFSET(arg2, 6), (uint8_t)(arg1 >> 8), mem_idx, - GETPC()); + cpu_stb_mmuidx_ra(env, GET_OFFSET(arg2, 6), (uint8_t)(arg1 >> 8), + mem_idx, GETPC()); } =20 if (GET_LMASK64(arg2) <=3D 0) { - do_sb(env, GET_OFFSET(arg2, 7), (uint8_t)arg1, mem_idx, - GETPC()); + cpu_stb_mmuidx_ra(env, GET_OFFSET(arg2, 7), (uint8_t)arg1, + mem_idx, GETPC()); } } =20 void helper_sdr(CPUMIPSState *env, target_ulong arg1, target_ulong arg2, int mem_idx) { - do_sb(env, arg2, (uint8_t)arg1, mem_idx, GETPC()); + cpu_stb_mmuidx_ra(env, arg2, (uint8_t)arg1, mem_idx, GETPC()); =20 if (GET_LMASK64(arg2) >=3D 1) { - do_sb(env, GET_OFFSET(arg2, -1), (uint8_t)(arg1 >> 8), mem_idx, - GETPC()); + cpu_stb_mmuidx_ra(env, GET_OFFSET(arg2, -1), (uint8_t)(arg1 >> 8), + mem_idx, GETPC()); } =20 if (GET_LMASK64(arg2) >=3D 2) { - do_sb(env, GET_OFFSET(arg2, -2), (uint8_t)(arg1 >> 16), mem_idx, - GETPC()); + cpu_stb_mmuidx_ra(env, GET_OFFSET(arg2, -2), (uint8_t)(arg1 >> 16), + mem_idx, GETPC()); } =20 if (GET_LMASK64(arg2) >=3D 3) { - do_sb(env, GET_OFFSET(arg2, -3), (uint8_t)(arg1 >> 24), mem_idx, - GETPC()); + cpu_stb_mmuidx_ra(env, GET_OFFSET(arg2, -3), (uint8_t)(arg1 >> 24), + mem_idx, GETPC()); } =20 if (GET_LMASK64(arg2) >=3D 4) { - do_sb(env, GET_OFFSET(arg2, -4), (uint8_t)(arg1 >> 32), mem_idx, - GETPC()); + cpu_stb_mmuidx_ra(env, GET_OFFSET(arg2, -4), (uint8_t)(arg1 >> 32), + mem_idx, GETPC()); } =20 if (GET_LMASK64(arg2) >=3D 5) { - do_sb(env, GET_OFFSET(arg2, -5), (uint8_t)(arg1 >> 40), mem_idx, - GETPC()); + cpu_stb_mmuidx_ra(env, GET_OFFSET(arg2, -5), (uint8_t)(arg1 >> 40), + mem_idx, GETPC()); } =20 if (GET_LMASK64(arg2) >=3D 6) { - do_sb(env, GET_OFFSET(arg2, -6), (uint8_t)(arg1 >> 48), mem_idx, - GETPC()); + cpu_stb_mmuidx_ra(env, GET_OFFSET(arg2, -6), (uint8_t)(arg1 >> 48), + mem_idx, GETPC()); } =20 if (GET_LMASK64(arg2) =3D=3D 7) { - do_sb(env, GET_OFFSET(arg2, -7), (uint8_t)(arg1 >> 56), mem_idx, - GETPC()); + cpu_stb_mmuidx_ra(env, GET_OFFSET(arg2, -7), (uint8_t)(arg1 >> 56), + mem_idx, GETPC()); } } #endif /* TARGET_MIPS64 */ @@ -546,14 +483,14 @@ void helper_lwm(CPUMIPSState *env, target_ulong addr,= target_ulong reglist, =20 for (i =3D 0; i < base_reglist; i++) { env->active_tc.gpr[multiple_regs[i]] =3D - (target_long)do_lw(env, addr, mem_idx, GETPC()); + (target_long)cpu_ldl_mmuidx_ra(env, addr, mem_idx, GETPC()= ); addr +=3D 4; } } =20 if (do_r31) { - env->active_tc.gpr[31] =3D (target_long)do_lw(env, addr, mem_idx, - GETPC()); + env->active_tc.gpr[31] =3D + (target_long)cpu_ldl_mmuidx_ra(env, addr, mem_idx, GETPC()); } } =20 @@ -567,14 +504,14 @@ void helper_swm(CPUMIPSState *env, target_ulong addr,= target_ulong reglist, target_ulong i; =20 for (i =3D 0; i < base_reglist; i++) { - do_sw(env, addr, env->active_tc.gpr[multiple_regs[i]], mem_idx, - GETPC()); + cpu_stw_mmuidx_ra(env, addr, env->active_tc.gpr[multiple_regs[= i]], + mem_idx, GETPC()); addr +=3D 4; } } =20 if (do_r31) { - do_sw(env, addr, env->active_tc.gpr[31], mem_idx, GETPC()); + cpu_stw_mmuidx_ra(env, addr, env->active_tc.gpr[31], mem_idx, GETP= C()); } } =20 @@ -589,14 +526,15 @@ void helper_ldm(CPUMIPSState *env, target_ulong addr,= target_ulong reglist, target_ulong i; =20 for (i =3D 0; i < base_reglist; i++) { - env->active_tc.gpr[multiple_regs[i]] =3D do_ld(env, addr, mem_= idx, - GETPC()); + env->active_tc.gpr[multiple_regs[i]] =3D + cpu_ldq_mmuidx_ra(env, addr, mem_idx, GETPC()); addr +=3D 8; } } =20 if (do_r31) { - env->active_tc.gpr[31] =3D do_ld(env, addr, mem_idx, GETPC()); + env->active_tc.gpr[31] =3D + cpu_ldq_mmuidx_ra(env, addr, mem_idx, GETPC()); } } =20 @@ -610,14 +548,14 @@ void helper_sdm(CPUMIPSState *env, target_ulong addr,= target_ulong reglist, target_ulong i; =20 for (i =3D 0; i < base_reglist; i++) { - do_sd(env, addr, env->active_tc.gpr[multiple_regs[i]], mem_idx, - GETPC()); + cpu_stq_mmuidx_ra(env, addr, env->active_tc.gpr[multiple_regs[= i]], + mem_idx, GETPC()); addr +=3D 8; } } =20 if (do_r31) { - do_sd(env, addr, env->active_tc.gpr[31], mem_idx, GETPC()); + cpu_stq_mmuidx_ra(env, addr, env->active_tc.gpr[31], mem_idx, GETP= C()); } } #endif --=20 2.20.1 From nobody Sat May 4 23:35:41 2024 Delivered-To: importer@patchew.org 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; 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=1576535064; cv=none; d=zohomail.com; s=zohoarc; b=RYQKeaNSVP8iuZUFnK38WqAAgW+K8I/vd4OSf8j6CabIeKya33mfTfcDjkmx7RckC/zJq42Gh93cHF0jP14kNrdjMi2SC0RHBI9p4NXhApiP3Mxbr6LOWbCEB4mbBxxqPY6OENbZ1C6cuiiIoLL3/cxy5rdMfvhwZ1SGghhoXh4= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1576535064; h=Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=X2GZDJtWgjhwatqn2siyQYT3flCAUk5Su3sfOLoNGxk=; b=e1bsdU/+NRkhSmX6ATy9i4zlTQVaPM10VzZnck9ferOGvdG3/wXqQNmNUPm9/bBi4vi6M2ChIOsALH/98ptUZGYlBBPEHiEitL1MhvXbmm/0zrGCun78pr60JtRN5ByJo/yBz62Di+8rXdQVskfhwm4eeDxXREwGNxi575g633s= 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) header.from= Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1576535064136489.7331450277684; Mon, 16 Dec 2019 14:24:24 -0800 (PST) Received: from localhost ([::1]:60862 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1igyms-0003I1-OC for importer@patchew.org; Mon, 16 Dec 2019 17:24:22 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:37127) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1igyba-0005gk-I8 for qemu-devel@nongnu.org; Mon, 16 Dec 2019 17:12:43 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1igybZ-0007m5-9a for qemu-devel@nongnu.org; Mon, 16 Dec 2019 17:12:42 -0500 Received: from mail-pl1-x642.google.com ([2607:f8b0:4864:20::642]:42391) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1igybZ-0007ks-43 for qemu-devel@nongnu.org; Mon, 16 Dec 2019 17:12:41 -0500 Received: by mail-pl1-x642.google.com with SMTP id p9so871716plk.9 for ; Mon, 16 Dec 2019 14:12:41 -0800 (PST) Received: from localhost.localdomain ([2605:e000:c74f:dc00:6838:d2b2:17e2:8445]) by smtp.gmail.com with ESMTPSA id d6sm529767pjl.8.2019.12.16.14.12.38 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 16 Dec 2019 14:12:39 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=X2GZDJtWgjhwatqn2siyQYT3flCAUk5Su3sfOLoNGxk=; b=t+e5ujurwJrOUDpMki+lqYnE3+1m/6DAiFZyKPGMkyfwalrDOFuuxbCLxvJV9aA3Ug FRI7V0fGhwYMKckurFUWWesyQVqQ3BtphfSfR82juA6XkJsWWbfWV87J0bI0m1sHsrFV 0fyCDoiW5Vg8b7cGf7TfgGFOCr6oA1PLSEQ8Y/2wDoe+QtVeUOa7vugyDTgT0yQsYzRA DP/6NAQLDe9zJL5vLUYwdcEnAOkvmDebYKMqI8OhY6WnRcjCGBjfuBzcGC7eyfMk6DX4 5jNO+E8h+4F0GeONeORCIpm8lGhU3tjm7q8oBh8u/1xXDwdmu2j3nhdY4hcbYH9IerfL qFxA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=X2GZDJtWgjhwatqn2siyQYT3flCAUk5Su3sfOLoNGxk=; b=l+PzOWfQJsx4numtfYL229eeAeu3BAQQa5EJDfYZxDMHGBzxRgHd4drE8Zc2m5245S oIQayqzB+qJMuNU/NiwPxe2CTDWsxKhlS5UEHrg01C84jjex782f28UBXJfuA9yVuGjV MJ0GvYVcRI4x+fp/sxZwctT8c4QGKVN/zqZkLBMTGEc1Ci7wORrBlInsQrjakq7ujgRO VVImpw9Lz7aYYoHKhf+cnZerEmVHzmjGkZPxH0c1kqgFp2Fm+nZokrSZSIoL9nsWmE7v ycKnLm7DpVgfKD0ETERAqDmQvw9j57IRQtizr9qbv+VDcf5Eg8Q9N05wKmB/9hpongpT 54sQ== X-Gm-Message-State: APjAAAUIjNIdX5ukXwVj/XmcHufCyrNHjyYhGfxgWIp1a13OdRBaFmW7 o+BHouON2vh2FGWJbBOymQoexkdgRH8= X-Google-Smtp-Source: APXvYqxeXSUoSTVZYffHectgSzSHiIkJ+MSXg4PrLV0/jdvdUMMeBeOYX8ayXDL/bh4KNVWtiLyx3A== X-Received: by 2002:a17:902:b418:: with SMTP id x24mr18748104plr.85.1576534359856; Mon, 16 Dec 2019 14:12:39 -0800 (PST) From: Richard Henderson To: qemu-devel@nongnu.org Subject: [PATCH v2 25/28] target/s390x: Use cpu_*_mmuidx_ra instead of MMU_MODE*_SUFFIX Date: Mon, 16 Dec 2019 12:11:55 -1000 Message-Id: <20191216221158.29572-26-richard.henderson@linaro.org> X-Mailer: git-send-email 2.20.1 In-Reply-To: <20191216221158.29572-1-richard.henderson@linaro.org> References: <20191216221158.29572-1-richard.henderson@linaro.org> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2607:f8b0:4864:20::642 X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: David Hildenbrand Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: pass (identity @linaro.org) Content-Type: text/plain; charset="utf-8" The generated functions aside from *_real are unused. The *_real functions have a couple of users in mem_helper.c; use *_mmuidx_ra instead, with MMU_REAL_IDX. Reviewed-by: David Hildenbrand Signed-off-by: Richard Henderson Reviewed-by: Alex Benn=C3=A9e --- v2: Use *_mmuidx_ra directly, without intermediate macros. --- target/s390x/cpu.h | 5 ----- target/s390x/mem_helper.c | 21 ++++++++++++--------- 2 files changed, 12 insertions(+), 14 deletions(-) diff --git a/target/s390x/cpu.h b/target/s390x/cpu.h index aa829e954c..cfa8a81265 100644 --- a/target/s390x/cpu.h +++ b/target/s390x/cpu.h @@ -36,11 +36,6 @@ =20 #define TARGET_INSN_START_EXTRA_WORDS 2 =20 -#define MMU_MODE0_SUFFIX _primary -#define MMU_MODE1_SUFFIX _secondary -#define MMU_MODE2_SUFFIX _home -#define MMU_MODE3_SUFFIX _real - #define MMU_USER_IDX 0 =20 #define S390_MAX_CPUS 248 diff --git a/target/s390x/mem_helper.c b/target/s390x/mem_helper.c index 57ce17c252..6f4a16b9b2 100644 --- a/target/s390x/mem_helper.c +++ b/target/s390x/mem_helper.c @@ -2026,7 +2026,7 @@ uint32_t HELPER(testblock)(CPUS390XState *env, uint64= _t real_addr) real_addr =3D wrap_address(env, real_addr) & TARGET_PAGE_MASK; =20 for (i =3D 0; i < TARGET_PAGE_SIZE; i +=3D 8) { - cpu_stq_real_ra(env, real_addr + i, 0, ra); + cpu_stq_mmuidx_ra(env, real_addr + i, 0, MMU_REAL_IDX, ra); } =20 return 0; @@ -2260,11 +2260,11 @@ void HELPER(idte)(CPUS390XState *env, uint64_t r1, = uint64_t r2, uint32_t m4) for (i =3D 0; i < entries; i++) { /* addresses are not wrapped in 24/31bit mode but table index = is */ raddr =3D table + ((index + i) & 0x7ff) * sizeof(entry); - entry =3D cpu_ldq_real_ra(env, raddr, ra); + entry =3D cpu_ldq_mmuidx_ra(env, raddr, MMU_REAL_IDX, ra); if (!(entry & REGION_ENTRY_I)) { /* we are allowed to not store if already invalid */ entry |=3D REGION_ENTRY_I; - cpu_stq_real_ra(env, raddr, entry, ra); + cpu_stq_mmuidx_ra(env, raddr, entry, MMU_REAL_IDX, ra); } } } @@ -2291,9 +2291,9 @@ void HELPER(ipte)(CPUS390XState *env, uint64_t pto, u= int64_t vaddr, pte_addr +=3D VADDR_PAGE_TX(vaddr) * 8; =20 /* Mark the page table entry as invalid */ - pte =3D cpu_ldq_real_ra(env, pte_addr, ra); + pte =3D cpu_ldq_mmuidx_ra(env, pte_addr, MMU_REAL_IDX, ra); pte |=3D PAGE_ENTRY_I; - cpu_stq_real_ra(env, pte_addr, pte, ra); + cpu_stq_mmuidx_ra(env, pte_addr, pte, MMU_REAL_IDX, ra); =20 /* XXX we exploit the fact that Linux passes the exact virtual address here - it's not obliged to! */ @@ -2333,18 +2333,21 @@ void HELPER(purge)(CPUS390XState *env) /* load using real address */ uint64_t HELPER(lura)(CPUS390XState *env, uint64_t addr) { - return cpu_ldl_real_ra(env, wrap_address(env, addr), GETPC()); + return cpu_ldl_mmuidx_ra(env, wrap_address(env, addr), + MMU_REAL_IDX, GETPC()); } =20 uint64_t HELPER(lurag)(CPUS390XState *env, uint64_t addr) { - return cpu_ldq_real_ra(env, wrap_address(env, addr), GETPC()); + return cpu_ldq_mmuidx_ra(env, wrap_address(env, addr), + MMU_REAL_IDX, GETPC()); } =20 /* store using real address */ void HELPER(stura)(CPUS390XState *env, uint64_t addr, uint64_t v1) { - cpu_stl_real_ra(env, wrap_address(env, addr), (uint32_t)v1, GETPC()); + cpu_stl_mmuidx_ra(env, wrap_address(env, addr), (uint32_t)v1, + MMU_REAL_IDX, GETPC()); =20 if ((env->psw.mask & PSW_MASK_PER) && (env->cregs[9] & PER_CR9_EVENT_STORE) && @@ -2357,7 +2360,7 @@ void HELPER(stura)(CPUS390XState *env, uint64_t addr,= uint64_t v1) =20 void HELPER(sturg)(CPUS390XState *env, uint64_t addr, uint64_t v1) { - cpu_stq_real_ra(env, wrap_address(env, addr), v1, GETPC()); + cpu_stq_mmuidx_ra(env, wrap_address(env, addr), v1, MMU_REAL_IDX, GETP= C()); =20 if ((env->psw.mask & PSW_MASK_PER) && (env->cregs[9] & PER_CR9_EVENT_STORE) && --=20 2.20.1 From nobody Sat May 4 23:35:41 2024 Delivered-To: importer@patchew.org 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; 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=1576535608; cv=none; d=zohomail.com; s=zohoarc; b=EzCKlmPPVRD1P4DKrYzyWHWGnDHdVg4c0VGMhVhg7uTOMo90ydZ9H8tDIDEBRQ4Y0QMbuwHnaci8kFBn8vuXyrpr8e1QoJRHcraXi1+cwQn+0wWweh+8dP1VXDnXJFY0RecGK/5FhO9zUF+UxV14rbJfuXV/cUGVbA8b6lVQqPc= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1576535608; h=Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=DPDM5gwX8Fn+IwrqOpQTWcLHE7dPxmxG57n6nMl0zxo=; b=B85YDeFNol4FTAVa355Wnt8u++tnJaYWb2A5Lozw45zJXii+RY5B2joyKjgv4UoYenyS99qTLg1I0KSqlLcmAzdIQIY204/mXYuiYWvlOVaqpbUKwqRd8ynn3yMPT4x5ms7dwzUFCp5Ly9PgPqiKh4nRwnHMJSoUkg88vSb+VLk= 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) header.from= Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1576535608902448.3009520900441; Mon, 16 Dec 2019 14:33:28 -0800 (PST) Received: from localhost ([::1]:32832 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1igyvf-0005kv-Rx for importer@patchew.org; Mon, 16 Dec 2019 17:33:27 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:37148) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1igybb-0005ir-Pl for qemu-devel@nongnu.org; Mon, 16 Dec 2019 17:12:45 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1igyba-0007ma-Mo for qemu-devel@nongnu.org; Mon, 16 Dec 2019 17:12:43 -0500 Received: from mail-pg1-x541.google.com ([2607:f8b0:4864:20::541]:42434) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1igyba-0007mQ-HL for qemu-devel@nongnu.org; Mon, 16 Dec 2019 17:12:42 -0500 Received: by mail-pg1-x541.google.com with SMTP id s64so4488991pgb.9 for ; Mon, 16 Dec 2019 14:12:42 -0800 (PST) Received: from localhost.localdomain ([2605:e000:c74f:dc00:6838:d2b2:17e2:8445]) by smtp.gmail.com with ESMTPSA id d6sm529767pjl.8.2019.12.16.14.12.40 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 16 Dec 2019 14:12:40 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=DPDM5gwX8Fn+IwrqOpQTWcLHE7dPxmxG57n6nMl0zxo=; b=UN7Bwu6+vOzTHBL6i9nPiI8ZiDgfElJLwM8FCB7zZWSEOagzuNJmZfuexqMfRBdd4I EwG1TXovlLiTAhK+gAU7fRxPJXmxvdbR1cEGzm0FV9yl7n2vplZL6wHWeOU/h1Mch96d ZfsQlJJdx/Q7mO9lWo5KseNk5WgRllfRI6XH7GVzGf+F53ohbdCXYUuzmB3bh6P1+aTS o5aKHLKbHXeAIxKXxDJXxiVeKAO9JBk1YeGJJmFbrPP+89EcGwFfo8vhuPkQnV+b8GgO kOdkCaZJ1ZVqhGw9WS9udTsoZsXw6sGqo+PkmndXRiwEsTRmrbX6ScOt/7EjRL4XHYWR cCQw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=DPDM5gwX8Fn+IwrqOpQTWcLHE7dPxmxG57n6nMl0zxo=; b=khcr6lyFvf+MKbJibmmnV0iLLooVvafQjHMFbh1CAobUAZR+j3UWXn5E89O+1t0IJB V0Nzk7TwCiM6jWzVhYUMSXkM8RLxVgbKwO4BwjolSZr/NDo9ClIlxZ6zMMAnsV/ssD8m IQrQVLhuAI6N4oAj8+tesOf8C1sTMMz39RIcS9C/hBbTqJH7ZjAPVCreW2Hy0Z8+TwbD I5uzIbszWPyjAQAGGf+NNKtKoV7V3mE9DOlgA6g4UqJrpDbdm9kqeWqPH0PD44RTYe3+ ctJ1qaDyYJ2OYJngwk4GPxqQAFqi+Chu4Jxz1x6NcS4xs6f81EwLYVLKVGj4Iz20MotT +6+w== X-Gm-Message-State: APjAAAVkioW3vemS3g5kCENvRyBDPNwQQIooIXYM+CAYjPiophpP2Wcp P0eNAlbeDNbFvG0GBxpr+4wxL0IjL7A= X-Google-Smtp-Source: APXvYqxdsTLRo2YI0jZNV7EEq/hRTbKBBHIb5YmKmUpI1le6cnqKFF4TXbBLyb8k0oyqqUg1z62lGA== X-Received: by 2002:aa7:850c:: with SMTP id v12mr18697255pfn.188.1576534361333; Mon, 16 Dec 2019 14:12:41 -0800 (PST) From: Richard Henderson To: qemu-devel@nongnu.org Subject: [PATCH v2 26/28] target/ppc: Use cpu_*_mmuidx_ra instead of MMU_MODE*_SUFFIX Date: Mon, 16 Dec 2019 12:11:56 -1000 Message-Id: <20191216221158.29572-27-richard.henderson@linaro.org> X-Mailer: git-send-email 2.20.1 In-Reply-To: <20191216221158.29572-1-richard.henderson@linaro.org> References: <20191216221158.29572-1-richard.henderson@linaro.org> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2607:f8b0:4864:20::541 X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: David Gibson Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: pass (identity @linaro.org) Content-Type: text/plain; charset="utf-8" There are only two uses. Within dcbz_common, the local variable mmu_idx already contains the epid computation, and we can avoid repeating it for the store. Within helper_icbiep, the usage is trivially expanded using PPC_TLB_EPID_LOAD. Acked-by: David Gibson Signed-off-by: Richard Henderson Reviewed-by: Alex Benn=C3=A9e --- target/ppc/cpu.h | 2 -- target/ppc/mem_helper.c | 11 ++--------- 2 files changed, 2 insertions(+), 11 deletions(-) diff --git a/target/ppc/cpu.h b/target/ppc/cpu.h index e3e82327b7..3bd983adaa 100644 --- a/target/ppc/cpu.h +++ b/target/ppc/cpu.h @@ -951,8 +951,6 @@ struct ppc_radix_page_info { * + real/paged mode combinations. The other two modes are for * external PID load/store. */ -#define MMU_MODE8_SUFFIX _epl -#define MMU_MODE9_SUFFIX _eps #define PPC_TLB_EPID_LOAD 8 #define PPC_TLB_EPID_STORE 9 =20 diff --git a/target/ppc/mem_helper.c b/target/ppc/mem_helper.c index 1351b53f28..56855f2381 100644 --- a/target/ppc/mem_helper.c +++ b/target/ppc/mem_helper.c @@ -177,14 +177,7 @@ static void dcbz_common(CPUPPCState *env, target_ulong= addr, } else { /* Slow path */ for (i =3D 0; i < dcbz_size; i +=3D 8) { - if (epid) { -#if !defined(CONFIG_USER_ONLY) - /* Does not make sense on USER_ONLY config */ - cpu_stq_eps_ra(env, addr + i, 0, retaddr); -#endif - } else { - cpu_stq_data_ra(env, addr + i, 0, retaddr); - } + cpu_stq_mmuidx_ra(env, addr + i, 0, mmu_idx, retaddr); } } } @@ -216,7 +209,7 @@ void helper_icbiep(CPUPPCState *env, target_ulong addr) #if !defined(CONFIG_USER_ONLY) /* See comments above */ addr &=3D ~(env->dcache_line_size - 1); - cpu_ldl_epl_ra(env, addr, GETPC()); + cpu_ldl_mmuidx_ra(env, addr, PPC_TLB_EPID_LOAD, GETPC()); #endif } =20 --=20 2.20.1 From nobody Sat May 4 23:35:41 2024 Delivered-To: importer@patchew.org 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; 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=1576535527; cv=none; d=zohomail.com; s=zohoarc; b=l9Z5jqv0UI3/PYTB7bYoLXglaas+BnfJE762yw4z7kPticSYz8SkiY5zTWj7nVRYsIth+Ks0Bsg5BBvKSm5tbXeCVUE7q69NVxF/++XZieWbV+b56ygIaxyM7kbiOzSuFKp0xvf1g9ctRSoGKTWn+gSVKZctg7NFGwDQX5N4N0o= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1576535527; h=Content-Transfer-Encoding:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=YTuCdqr9DEUMKluaH9JJH2GYVGYBP4+e1sXlxhX3YMM=; b=mCGeWE+JbTAesdLbQB/P0U8rDZM5xqr3He+MPib/LKohf7rCRL71rTddpqOE6pZJY9/cUItK/fcssCIC13ZyLmnih+LSh3sYHgufPCdJXE5ppxQBQcS+u3MjUean/pi+wfC8ADUDzZPNUquGFvHELunwCZysIJDTkCkSgnflF8w= 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) header.from= Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1576535527085686.6137798196717; Mon, 16 Dec 2019 14:32:07 -0800 (PST) Received: from localhost ([::1]:32794 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1igyuL-00047z-PZ for importer@patchew.org; Mon, 16 Dec 2019 17:32:05 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:37172) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1igybd-0005lM-Tl for qemu-devel@nongnu.org; Mon, 16 Dec 2019 17:12:47 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1igybc-0007mx-Dy for qemu-devel@nongnu.org; Mon, 16 Dec 2019 17:12:45 -0500 Received: from mail-pg1-x533.google.com ([2607:f8b0:4864:20::533]:45433) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1igybc-0007mn-86 for qemu-devel@nongnu.org; Mon, 16 Dec 2019 17:12:44 -0500 Received: by mail-pg1-x533.google.com with SMTP id b9so4480231pgk.12 for ; Mon, 16 Dec 2019 14:12:44 -0800 (PST) Received: from localhost.localdomain ([2605:e000:c74f:dc00:6838:d2b2:17e2:8445]) by smtp.gmail.com with ESMTPSA id d6sm529767pjl.8.2019.12.16.14.12.41 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 16 Dec 2019 14:12:42 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=from:to:subject:date:message-id:in-reply-to:references:mime-version :content-transfer-encoding; bh=YTuCdqr9DEUMKluaH9JJH2GYVGYBP4+e1sXlxhX3YMM=; b=wyuaflLbQ0n+753IJD9gYKpglKib62zcMroJoS+viMHwKapoHvdt5AfI0ebPPHMVjr UIvCvs3MONOFPjq+SHqKYa9N0uy0cblwekkcKIK20lkYsdz3+sg5+smNono27rOIkJes weMUi6CM5Rh9xyMKVnEvwoznF7JE57CsODSvpn3ArN02Lot43nk1HjFBrdI/i8S4gyei K9Eu4zXBsGtjLfrhvrbMgRIskgc3onCMKZt+T/+rI/pbhPhXEWlXYgeHDlcuMCeMQFK/ 7xe/ZuIaLk7qzvzo0ZX7WtQCTJ24CzY0q8x6PEHhey/T6uy90sr3xtZThZaC76rPSRlI AFYg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=YTuCdqr9DEUMKluaH9JJH2GYVGYBP4+e1sXlxhX3YMM=; b=Ckq08K2JIGTAmgExMbaXghuo6M4GKeeiKO4RdrfRFDEYuoPzND/ypXGX2Ziad9fShI mBc1o/EDtnwA+F+6sI/dw+PnnAA+RGERVGq5yKvE/igChNHlB8qsqUr318VpXIKFbnQo cHvJLpzRhwJRmX07xrseHCvzfaS2NHn4K8IJ64HhXuhCIYQpKnWjk4BdA3siQhgfcwoJ BHA3oKo2skPS9OMLqMCTd9+Z/Tjp+KjEM9cX9rtAiMnxsnTU2dCy5VZyz0DFgT9uwUM6 1AveonxVUFSuFGGDKZ4Sh+RXiOOQFw3YQOKE6rHBIk2o75WRGgtpp7BaWAbL15a0zyVy KZmw== X-Gm-Message-State: APjAAAWVEhyvSnstA4vbfVALsrnGGrvPASp9BgsiHT8xLjoU+ELO3+rN PADI2Sk5+UClt1wecWUOTrZvhMfclkg= X-Google-Smtp-Source: APXvYqzt4s71Q/gtn5c50oxurvcE4c8wyoWQcvmj6ZiTYAY6i6KzD0n8UZYT4NoanPqEghPftjAoZA== X-Received: by 2002:aa7:94b0:: with SMTP id a16mr18583691pfl.35.1576534362770; Mon, 16 Dec 2019 14:12:42 -0800 (PST) From: Richard Henderson To: qemu-devel@nongnu.org Subject: [PATCH v2 27/28] cputlb: Remove support for MMU_MODE*_SUFFIX Date: Mon, 16 Dec 2019 12:11:57 -1000 Message-Id: <20191216221158.29572-28-richard.henderson@linaro.org> X-Mailer: git-send-email 2.20.1 In-Reply-To: <20191216221158.29572-1-richard.henderson@linaro.org> References: <20191216221158.29572-1-richard.henderson@linaro.org> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2607:f8b0:4864:20::533 X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 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" X-ZohoMail-DKIM: pass (identity @linaro.org) Content-Type: text/plain; charset="utf-8" All users have now been converted to cpu_*_mmuidx_ra. Signed-off-by: Richard Henderson Reviewed-by: Alex Benn=C3=A9e --- include/exec/cpu_ldst.h | 230 ---------------------------------------- 1 file changed, 230 deletions(-) diff --git a/include/exec/cpu_ldst.h b/include/exec/cpu_ldst.h index 0f3c49a005..cf4652bf48 100644 --- a/include/exec/cpu_ldst.h +++ b/include/exec/cpu_ldst.h @@ -271,236 +271,6 @@ void cpu_stl_mmuidx_ra(CPUArchState *env, abi_ptr add= r, uint32_t val, void cpu_stq_mmuidx_ra(CPUArchState *env, abi_ptr addr, uint64_t val, int mmu_idx, uintptr_t retaddr); =20 -#ifdef MMU_MODE0_SUFFIX -#define CPU_MMU_INDEX 0 -#define MEMSUFFIX MMU_MODE0_SUFFIX -#define DATA_SIZE 1 -#include "exec/cpu_ldst_template.h" - -#define DATA_SIZE 2 -#include "exec/cpu_ldst_template.h" - -#define DATA_SIZE 4 -#include "exec/cpu_ldst_template.h" - -#define DATA_SIZE 8 -#include "exec/cpu_ldst_template.h" -#undef CPU_MMU_INDEX -#undef MEMSUFFIX -#endif - -#if (NB_MMU_MODES >=3D 2) && defined(MMU_MODE1_SUFFIX) -#define CPU_MMU_INDEX 1 -#define MEMSUFFIX MMU_MODE1_SUFFIX -#define DATA_SIZE 1 -#include "exec/cpu_ldst_template.h" - -#define DATA_SIZE 2 -#include "exec/cpu_ldst_template.h" - -#define DATA_SIZE 4 -#include "exec/cpu_ldst_template.h" - -#define DATA_SIZE 8 -#include "exec/cpu_ldst_template.h" -#undef CPU_MMU_INDEX -#undef MEMSUFFIX -#endif - -#if (NB_MMU_MODES >=3D 3) && defined(MMU_MODE2_SUFFIX) - -#define CPU_MMU_INDEX 2 -#define MEMSUFFIX MMU_MODE2_SUFFIX -#define DATA_SIZE 1 -#include "exec/cpu_ldst_template.h" - -#define DATA_SIZE 2 -#include "exec/cpu_ldst_template.h" - -#define DATA_SIZE 4 -#include "exec/cpu_ldst_template.h" - -#define DATA_SIZE 8 -#include "exec/cpu_ldst_template.h" -#undef CPU_MMU_INDEX -#undef MEMSUFFIX -#endif /* (NB_MMU_MODES >=3D 3) */ - -#if (NB_MMU_MODES >=3D 4) && defined(MMU_MODE3_SUFFIX) - -#define CPU_MMU_INDEX 3 -#define MEMSUFFIX MMU_MODE3_SUFFIX -#define DATA_SIZE 1 -#include "exec/cpu_ldst_template.h" - -#define DATA_SIZE 2 -#include "exec/cpu_ldst_template.h" - -#define DATA_SIZE 4 -#include "exec/cpu_ldst_template.h" - -#define DATA_SIZE 8 -#include "exec/cpu_ldst_template.h" -#undef CPU_MMU_INDEX -#undef MEMSUFFIX -#endif /* (NB_MMU_MODES >=3D 4) */ - -#if (NB_MMU_MODES >=3D 5) && defined(MMU_MODE4_SUFFIX) - -#define CPU_MMU_INDEX 4 -#define MEMSUFFIX MMU_MODE4_SUFFIX -#define DATA_SIZE 1 -#include "exec/cpu_ldst_template.h" - -#define DATA_SIZE 2 -#include "exec/cpu_ldst_template.h" - -#define DATA_SIZE 4 -#include "exec/cpu_ldst_template.h" - -#define DATA_SIZE 8 -#include "exec/cpu_ldst_template.h" -#undef CPU_MMU_INDEX -#undef MEMSUFFIX -#endif /* (NB_MMU_MODES >=3D 5) */ - -#if (NB_MMU_MODES >=3D 6) && defined(MMU_MODE5_SUFFIX) - -#define CPU_MMU_INDEX 5 -#define MEMSUFFIX MMU_MODE5_SUFFIX -#define DATA_SIZE 1 -#include "exec/cpu_ldst_template.h" - -#define DATA_SIZE 2 -#include "exec/cpu_ldst_template.h" - -#define DATA_SIZE 4 -#include "exec/cpu_ldst_template.h" - -#define DATA_SIZE 8 -#include "exec/cpu_ldst_template.h" -#undef CPU_MMU_INDEX -#undef MEMSUFFIX -#endif /* (NB_MMU_MODES >=3D 6) */ - -#if (NB_MMU_MODES >=3D 7) && defined(MMU_MODE6_SUFFIX) - -#define CPU_MMU_INDEX 6 -#define MEMSUFFIX MMU_MODE6_SUFFIX -#define DATA_SIZE 1 -#include "exec/cpu_ldst_template.h" - -#define DATA_SIZE 2 -#include "exec/cpu_ldst_template.h" - -#define DATA_SIZE 4 -#include "exec/cpu_ldst_template.h" - -#define DATA_SIZE 8 -#include "exec/cpu_ldst_template.h" -#undef CPU_MMU_INDEX -#undef MEMSUFFIX -#endif /* (NB_MMU_MODES >=3D 7) */ - -#if (NB_MMU_MODES >=3D 8) && defined(MMU_MODE7_SUFFIX) - -#define CPU_MMU_INDEX 7 -#define MEMSUFFIX MMU_MODE7_SUFFIX -#define DATA_SIZE 1 -#include "exec/cpu_ldst_template.h" - -#define DATA_SIZE 2 -#include "exec/cpu_ldst_template.h" - -#define DATA_SIZE 4 -#include "exec/cpu_ldst_template.h" - -#define DATA_SIZE 8 -#include "exec/cpu_ldst_template.h" -#undef CPU_MMU_INDEX -#undef MEMSUFFIX -#endif /* (NB_MMU_MODES >=3D 8) */ - -#if (NB_MMU_MODES >=3D 9) && defined(MMU_MODE8_SUFFIX) - -#define CPU_MMU_INDEX 8 -#define MEMSUFFIX MMU_MODE8_SUFFIX -#define DATA_SIZE 1 -#include "exec/cpu_ldst_template.h" - -#define DATA_SIZE 2 -#include "exec/cpu_ldst_template.h" - -#define DATA_SIZE 4 -#include "exec/cpu_ldst_template.h" - -#define DATA_SIZE 8 -#include "exec/cpu_ldst_template.h" -#undef CPU_MMU_INDEX -#undef MEMSUFFIX -#endif /* (NB_MMU_MODES >=3D 9) */ - -#if (NB_MMU_MODES >=3D 10) && defined(MMU_MODE9_SUFFIX) - -#define CPU_MMU_INDEX 9 -#define MEMSUFFIX MMU_MODE9_SUFFIX -#define DATA_SIZE 1 -#include "exec/cpu_ldst_template.h" - -#define DATA_SIZE 2 -#include "exec/cpu_ldst_template.h" - -#define DATA_SIZE 4 -#include "exec/cpu_ldst_template.h" - -#define DATA_SIZE 8 -#include "exec/cpu_ldst_template.h" -#undef CPU_MMU_INDEX -#undef MEMSUFFIX -#endif /* (NB_MMU_MODES >=3D 10) */ - -#if (NB_MMU_MODES >=3D 11) && defined(MMU_MODE10_SUFFIX) - -#define CPU_MMU_INDEX 10 -#define MEMSUFFIX MMU_MODE10_SUFFIX -#define DATA_SIZE 1 -#include "exec/cpu_ldst_template.h" - -#define DATA_SIZE 2 -#include "exec/cpu_ldst_template.h" - -#define DATA_SIZE 4 -#include "exec/cpu_ldst_template.h" - -#define DATA_SIZE 8 -#include "exec/cpu_ldst_template.h" -#undef CPU_MMU_INDEX -#undef MEMSUFFIX -#endif /* (NB_MMU_MODES >=3D 11) */ - -#if (NB_MMU_MODES >=3D 12) && defined(MMU_MODE11_SUFFIX) - -#define CPU_MMU_INDEX 11 -#define MEMSUFFIX MMU_MODE11_SUFFIX -#define DATA_SIZE 1 -#include "exec/cpu_ldst_template.h" - -#define DATA_SIZE 2 -#include "exec/cpu_ldst_template.h" - -#define DATA_SIZE 4 -#include "exec/cpu_ldst_template.h" - -#define DATA_SIZE 8 -#include "exec/cpu_ldst_template.h" -#undef CPU_MMU_INDEX -#undef MEMSUFFIX -#endif /* (NB_MMU_MODES >=3D 12) */ - -#if (NB_MMU_MODES > 12) -#error "NB_MMU_MODES > 12 is not supported for now" -#endif /* (NB_MMU_MODES > 12) */ - /* these access are slower, they must be as rare as possible */ #define CPU_MMU_INDEX (cpu_mmu_index(env, false)) #define MEMSUFFIX _data --=20 2.20.1 From nobody Sat May 4 23:35:41 2024 Delivered-To: importer@patchew.org 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; 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=1576535199; cv=none; d=zohomail.com; s=zohoarc; b=nY7RBK+yas+6YuGvlMkSqXB9RzAV9OMCeRpsWwSuOnwWv41WtiYXtG/mV2CY7kWUcACU/53bwAyRbsKQJo9fJdh3KqWTA1kuTvIWqp7eHHGL6eOHPHEvJAOafOOv3JWi/ZpSxJk/7vcz6eeMjceMivG0Yoomk7OXU2hb/DXapfo= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1576535199; h=Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=n91Cd7yYniXXXBEuAFOxxPa0/GBVEYFAD0qxW/Wckas=; b=hG+pml6dZXZSeFTX4P4oHmJUsOjsNvef3qxcXmAkVidfkvFedY3vb3fYmEPw9yDAoddn37Rh6oSb4tzgIsqiMm0CCriL2+VtaRTC+Vo0eBJr4Wu3pPZXDOBEGa7rHdci/Qas0lcvUtCYVQSHlPGPmNF06B1ncpm08Bb41+qjjH4= 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) header.from= Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1576535199884745.0201773712694; Mon, 16 Dec 2019 14:26:39 -0800 (PST) Received: from localhost ([::1]:60910 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1igyp0-00060P-Mv for importer@patchew.org; Mon, 16 Dec 2019 17:26:38 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:37197) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1igybf-0005om-Qx for qemu-devel@nongnu.org; Mon, 16 Dec 2019 17:12:49 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1igybd-0007nK-Q3 for qemu-devel@nongnu.org; Mon, 16 Dec 2019 17:12:47 -0500 Received: from mail-pf1-x443.google.com ([2607:f8b0:4864:20::443]:46795) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1igybd-0007n1-Hy for qemu-devel@nongnu.org; Mon, 16 Dec 2019 17:12:45 -0500 Received: by mail-pf1-x443.google.com with SMTP id y14so6360908pfm.13 for ; Mon, 16 Dec 2019 14:12:45 -0800 (PST) Received: from localhost.localdomain ([2605:e000:c74f:dc00:6838:d2b2:17e2:8445]) by smtp.gmail.com with ESMTPSA id d6sm529767pjl.8.2019.12.16.14.12.42 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 16 Dec 2019 14:12:43 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=n91Cd7yYniXXXBEuAFOxxPa0/GBVEYFAD0qxW/Wckas=; b=xDK0z/AvKh4V4BGzpnj/qqMcPRt/sE9U0bcyQDRf33ntpcXBvFhq5ygN28JxFpPItI R/dOxqkO0RVoXFBqC37LytGEXyVM2bWFn8Wbnmvfy2+pM4rNsHFj4dsj3lsY7lIMmxV4 /qQntb26TgStnpMIDOqZ7FC2Q4keqxZFmxMoJn7xPxn1Qjs/oGzaAAFgYFs3BcDV7mY2 /gEzxcc8UA9M05Ftc0fuUzCdcsCgWCdJ7yRxFy9GysV/6jBRqBxXidOO7W86M0FD8brC y//1sKFM74UMZ8US8Rv3tcHSsYIi3Rr8FlnC9m/PdQArr0U5qvQt+1CrDHvNSKe15u8r H9UA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=n91Cd7yYniXXXBEuAFOxxPa0/GBVEYFAD0qxW/Wckas=; b=V8qTSW1CBLbTfyrymIsNHFNcG2ntmK3Y75EC6L8XJQai3x/1Fmu4yTF1Aa3u+wZ3oj jhBOPmf5T1o/hBJrBuazUAJ7jHysvP2msjcJ72mD/PRTfa2qkQgAflum57lvYH9GwQ9O zwCDojudcJXMxjOEUNJLgtJg/zyfzRhvEpTA25aMHxWlgLVqxVmK5EGkijoVkj5ji2LT aXW+YsjpNMHcuhlXQz6qvPFs5QH4j/6UDGyu0LcFLRqWlJg9tFJTo5PWZY3EhKXtJqvx J/2pt0OurZaBJ1gY0ssEPffg/PkX0iF5fNCbTsdooxbwM5b+lB8aYaZHRAjn/yAOxbsf AxZg== X-Gm-Message-State: APjAAAWj8ouoxyCD+SoE94u4GxlSwCMWaCzlni28YPo5VBaoP5z/oAM3 JfaIEjRIhsNbhLYax/Vjuxo7ZlRW4U0= X-Google-Smtp-Source: APXvYqzpsZJfBS7uFykti/HXsSOlvnCOXnO01Mu+fpunJrKQK1GMelvjzmgjymLb+8+ZU1cozPWalw== X-Received: by 2002:a65:58ce:: with SMTP id e14mr21172438pgu.153.1576534364154; Mon, 16 Dec 2019 14:12:44 -0800 (PST) From: Richard Henderson To: qemu-devel@nongnu.org Subject: [PATCH v2 28/28] cputlb: Expand cpu_ldst_template.h in cputlb.c Date: Mon, 16 Dec 2019 12:11:58 -1000 Message-Id: <20191216221158.29572-29-richard.henderson@linaro.org> X-Mailer: git-send-email 2.20.1 In-Reply-To: <20191216221158.29572-1-richard.henderson@linaro.org> References: <20191216221158.29572-1-richard.henderson@linaro.org> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2607:f8b0:4864:20::443 X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Aleksandar Markovic Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: pass (identity @linaro.org) Content-Type: text/plain; charset="utf-8" Reduce the amount of preprocessor obfuscation by expanding the text of each of the functions generated. The result is only slightly smaller than the original. Reviewed-by: Aleksandar Markovic Signed-off-by: Richard Henderson Reviewed-by: Alex Benn=C3=A9e --- include/exec/cpu_ldst.h | 67 +++++++----------- include/exec/cpu_ldst_template.h | 117 ------------------------------- accel/tcg/cputlb.c | 107 +++++++++++++++++++++++++++- 3 files changed, 130 insertions(+), 161 deletions(-) delete mode 100644 include/exec/cpu_ldst_template.h diff --git a/include/exec/cpu_ldst.h b/include/exec/cpu_ldst.h index cf4652bf48..62f38d5a22 100644 --- a/include/exec/cpu_ldst.h +++ b/include/exec/cpu_ldst.h @@ -94,32 +94,6 @@ typedef target_ulong abi_ptr; #define TARGET_ABI_FMT_ptr TARGET_ABI_FMT_lx #endif =20 -#if defined(CONFIG_USER_ONLY) - -extern __thread uintptr_t helper_retaddr; - -static inline void set_helper_retaddr(uintptr_t ra) -{ - helper_retaddr =3D ra; - /* - * Ensure that this write is visible to the SIGSEGV handler that - * may be invoked due to a subsequent invalid memory operation. - */ - signal_barrier(); -} - -static inline void clear_helper_retaddr(void) -{ - /* - * Ensure that previous memory operations have succeeded before - * removing the data visible to the signal handler. - */ - signal_barrier(); - helper_retaddr =3D 0; -} - -/* In user-only mode we provide only the _code and _data accessors. */ - uint32_t cpu_ldub_data(CPUArchState *env, abi_ptr ptr); uint32_t cpu_lduw_data(CPUArchState *env, abi_ptr ptr); uint32_t cpu_ldl_data(CPUArchState *env, abi_ptr ptr); @@ -148,6 +122,30 @@ void cpu_stl_data_ra(CPUArchState *env, abi_ptr ptr, void cpu_stq_data_ra(CPUArchState *env, abi_ptr ptr, uint64_t val, uintptr_t retaddr); =20 +#if defined(CONFIG_USER_ONLY) + +extern __thread uintptr_t helper_retaddr; + +static inline void set_helper_retaddr(uintptr_t ra) +{ + helper_retaddr =3D ra; + /* + * Ensure that this write is visible to the SIGSEGV handler that + * may be invoked due to a subsequent invalid memory operation. + */ + signal_barrier(); +} + +static inline void clear_helper_retaddr(void) +{ + /* + * Ensure that previous memory operations have succeeded before + * removing the data visible to the signal handler. + */ + signal_barrier(); + helper_retaddr =3D 0; +} + /* * Provide the same *_mmuidx_ra interface as for softmmu. * The mmu_idx argument is ignored. @@ -271,23 +269,6 @@ void cpu_stl_mmuidx_ra(CPUArchState *env, abi_ptr addr= , uint32_t val, void cpu_stq_mmuidx_ra(CPUArchState *env, abi_ptr addr, uint64_t val, int mmu_idx, uintptr_t retaddr); =20 -/* these access are slower, they must be as rare as possible */ -#define CPU_MMU_INDEX (cpu_mmu_index(env, false)) -#define MEMSUFFIX _data -#define DATA_SIZE 1 -#include "exec/cpu_ldst_template.h" - -#define DATA_SIZE 2 -#include "exec/cpu_ldst_template.h" - -#define DATA_SIZE 4 -#include "exec/cpu_ldst_template.h" - -#define DATA_SIZE 8 -#include "exec/cpu_ldst_template.h" -#undef CPU_MMU_INDEX -#undef MEMSUFFIX - #endif /* defined(CONFIG_USER_ONLY) */ =20 uint32_t cpu_ldub_code(CPUArchState *env, abi_ptr addr); diff --git a/include/exec/cpu_ldst_template.h b/include/exec/cpu_ldst_templ= ate.h deleted file mode 100644 index e400979f23..0000000000 --- a/include/exec/cpu_ldst_template.h +++ /dev/null @@ -1,117 +0,0 @@ -/* - * Software MMU support - * - * Generate inline load/store functions for one MMU mode and data - * size. - * - * Generate a store function as well as signed and unsigned loads. - * - * Not used directly but included from cpu_ldst.h. - * - * Copyright (c) 2003 Fabrice Bellard - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, see . - */ - -#if DATA_SIZE =3D=3D 8 -#define SUFFIX q -#define USUFFIX q -#define DATA_TYPE uint64_t -#define SHIFT 3 -#elif DATA_SIZE =3D=3D 4 -#define SUFFIX l -#define USUFFIX l -#define DATA_TYPE uint32_t -#define SHIFT 2 -#elif DATA_SIZE =3D=3D 2 -#define SUFFIX w -#define USUFFIX uw -#define DATA_TYPE uint16_t -#define DATA_STYPE int16_t -#define SHIFT 1 -#elif DATA_SIZE =3D=3D 1 -#define SUFFIX b -#define USUFFIX ub -#define DATA_TYPE uint8_t -#define DATA_STYPE int8_t -#define SHIFT 0 -#else -#error unsupported data size -#endif - -#if DATA_SIZE =3D=3D 8 -#define RES_TYPE uint64_t -#else -#define RES_TYPE uint32_t -#endif - -/* generic load/store macros */ - -static inline RES_TYPE -glue(glue(glue(cpu_ld, USUFFIX), MEMSUFFIX), _ra)(CPUArchState *env, - target_ulong ptr, - uintptr_t retaddr) -{ - return glue(glue(cpu_ld, USUFFIX), _mmuidx_ra)(env, ptr, CPU_MMU_INDEX, - retaddr); -} - -static inline RES_TYPE -glue(glue(cpu_ld, USUFFIX), MEMSUFFIX)(CPUArchState *env, target_ulong ptr) -{ - return glue(glue(cpu_ld, USUFFIX), _mmuidx_ra)(env, ptr, CPU_MMU_INDEX= , 0); -} - -#if DATA_SIZE <=3D 2 -static inline int -glue(glue(glue(cpu_lds, SUFFIX), MEMSUFFIX), _ra)(CPUArchState *env, - target_ulong ptr, - uintptr_t retaddr) -{ - return glue(glue(cpu_lds, SUFFIX), _mmuidx_ra)(env, ptr, CPU_MMU_INDEX, - retaddr); -} - -static inline int -glue(glue(cpu_lds, SUFFIX), MEMSUFFIX)(CPUArchState *env, target_ulong ptr) -{ - return glue(glue(cpu_lds, SUFFIX), _mmuidx_ra)(env, ptr, CPU_MMU_INDEX= , 0); -} -#endif - -/* generic store macro */ - -static inline void -glue(glue(glue(cpu_st, SUFFIX), MEMSUFFIX), _ra)(CPUArchState *env, - target_ulong ptr, - RES_TYPE v, uintptr_t ret= addr) -{ - glue(glue(cpu_st, SUFFIX), _mmuidx_ra)(env, ptr, v, CPU_MMU_INDEX, - retaddr); -} - -static inline void -glue(glue(cpu_st, SUFFIX), MEMSUFFIX)(CPUArchState *env, target_ulong ptr, - RES_TYPE v) -{ - glue(glue(cpu_st, SUFFIX), _mmuidx_ra)(env, ptr, v, CPU_MMU_INDEX, 0); -} - -#undef RES_TYPE -#undef DATA_TYPE -#undef DATA_STYPE -#undef SUFFIX -#undef USUFFIX -#undef DATA_SIZE -#undef SHIFT diff --git a/accel/tcg/cputlb.c b/accel/tcg/cputlb.c index f0e4b0aee4..a991ea2964 100644 --- a/accel/tcg/cputlb.c +++ b/accel/tcg/cputlb.c @@ -35,7 +35,6 @@ #include "qemu/atomic128.h" #include "translate-all.h" #include "trace-root.h" -#include "qemu/plugin.h" #include "trace/mem.h" #ifdef CONFIG_PLUGIN #include "qemu/plugin-memory.h" @@ -1697,6 +1696,68 @@ uint64_t cpu_ldq_mmuidx_ra(CPUArchState *env, abi_pt= r addr, ? helper_le_ldq_mmu : helper_be_ldq_mmu); } =20 +uint32_t cpu_ldub_data_ra(CPUArchState *env, target_ulong ptr, + uintptr_t retaddr) +{ + return cpu_ldub_mmuidx_ra(env, ptr, cpu_mmu_index(env, false), retaddr= ); +} + +int cpu_ldsb_data_ra(CPUArchState *env, target_ulong ptr, uintptr_t retadd= r) +{ + return cpu_ldsb_mmuidx_ra(env, ptr, cpu_mmu_index(env, false), retaddr= ); +} + +uint32_t cpu_lduw_data_ra(CPUArchState *env, target_ulong ptr, + uintptr_t retaddr) +{ + return cpu_lduw_mmuidx_ra(env, ptr, cpu_mmu_index(env, false), retaddr= ); +} + +int cpu_ldsw_data_ra(CPUArchState *env, target_ulong ptr, uintptr_t retadd= r) +{ + return cpu_ldsw_mmuidx_ra(env, ptr, cpu_mmu_index(env, false), retaddr= ); +} + +uint32_t cpu_ldl_data_ra(CPUArchState *env, target_ulong ptr, uintptr_t re= taddr) +{ + return cpu_ldl_mmuidx_ra(env, ptr, cpu_mmu_index(env, false), retaddr); +} + +uint64_t cpu_ldq_data_ra(CPUArchState *env, target_ulong ptr, uintptr_t re= taddr) +{ + return cpu_ldq_mmuidx_ra(env, ptr, cpu_mmu_index(env, false), retaddr); +} + +uint32_t cpu_ldub_data(CPUArchState *env, target_ulong ptr) +{ + return cpu_ldub_data_ra(env, ptr, 0); +} + +int cpu_ldsb_data(CPUArchState *env, target_ulong ptr) +{ + return cpu_ldsb_data_ra(env, ptr, 0); +} + +uint32_t cpu_lduw_data(CPUArchState *env, target_ulong ptr) +{ + return cpu_lduw_data_ra(env, ptr, 0); +} + +int cpu_ldsw_data(CPUArchState *env, target_ulong ptr) +{ + return cpu_ldsw_data_ra(env, ptr, 0); +} + +uint32_t cpu_ldl_data(CPUArchState *env, target_ulong ptr) +{ + return cpu_ldl_data_ra(env, ptr, 0); +} + +uint64_t cpu_ldq_data(CPUArchState *env, target_ulong ptr) +{ + return cpu_ldq_data_ra(env, ptr, 0); +} + /* * Store Helpers */ @@ -1970,6 +2031,50 @@ void cpu_stq_mmuidx_ra(CPUArchState *env, target_ulo= ng addr, uint64_t val, cpu_store_helper(env, addr, val, mmu_idx, retaddr, MO_TEQ); } =20 +void cpu_stb_data_ra(CPUArchState *env, target_ulong ptr, + uint32_t val, uintptr_t retaddr) +{ + cpu_stb_mmuidx_ra(env, ptr, val, cpu_mmu_index(env, false), retaddr); +} + +void cpu_stw_data_ra(CPUArchState *env, target_ulong ptr, + uint32_t val, uintptr_t retaddr) +{ + cpu_stw_mmuidx_ra(env, ptr, val, cpu_mmu_index(env, false), retaddr); +} + +void cpu_stl_data_ra(CPUArchState *env, target_ulong ptr, + uint32_t val, uintptr_t retaddr) +{ + cpu_stl_mmuidx_ra(env, ptr, val, cpu_mmu_index(env, false), retaddr); +} + +void cpu_stq_data_ra(CPUArchState *env, target_ulong ptr, + uint64_t val, uintptr_t retaddr) +{ + cpu_stq_mmuidx_ra(env, ptr, val, cpu_mmu_index(env, false), retaddr); +} + +void cpu_stb_data(CPUArchState *env, target_ulong ptr, uint32_t val) +{ + cpu_stb_data_ra(env, ptr, val, 0); +} + +void cpu_stw_data(CPUArchState *env, target_ulong ptr, uint32_t val) +{ + cpu_stw_data_ra(env, ptr, val, 0); +} + +void cpu_stl_data(CPUArchState *env, target_ulong ptr, uint32_t val) +{ + cpu_stl_data_ra(env, ptr, val, 0); +} + +void cpu_stq_data(CPUArchState *env, target_ulong ptr, uint64_t val) +{ + cpu_stq_data_ra(env, ptr, val, 0); +} + /* First set of helpers allows passing in of OI and RETADDR. This makes them callable from other helpers. */ =20 --=20 2.20.1