From nobody Fri May 10 12:48:19 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=1577574948; cv=none; d=zohomail.com; s=zohoarc; b=hdbCU03wZSmWq+pe4N5ncFFFJR9ZKsCMvzStGvKBR40pwhE87+TidjbZ9PzQ4XQyuuZeEaEifEBUWEZ2SoOdBPjpbBPCZLbUQ7u5YbOTnV8rNEvqq9IybEJKpspPodrlsaR9ZMGJLE+oMTZ93c2nRdvHmdy+5L9iLBGCi35WgGc= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1577574948; 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=TefutcrMB9pareM/zxzC1lVLnwDD302zB/fR5vwwqMc=; b=Y1jRnenDBzuWEq7nYGfA8Xu1Ky5D+tbSWPsWwfV4diZFy8TohXkrFkyAzmATvCMLV6Qo+8npJBysKQZpcjM6phPenc062SAThqWRiduAXKC4TrDb5sWwyeHQAC9LIWi5mjf1sWxhrMUJ0+UNBRIarUlb2LfAa2hoQWxzdKKxk3I= 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 1577574948833827.8167177604668; Sat, 28 Dec 2019 15:15:48 -0800 (PST) Received: from localhost ([::1]:47246 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1ilLJD-0000es-Fu for importer@patchew.org; Sat, 28 Dec 2019 18:15:47 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:38769) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1ilLFF-0004Dp-5r for qemu-devel@nongnu.org; Sat, 28 Dec 2019 18:11:42 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1ilLFE-0003Ss-7S for qemu-devel@nongnu.org; Sat, 28 Dec 2019 18:11:41 -0500 Received: from mail-pg1-x543.google.com ([2607:f8b0:4864:20::543]:38320) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1ilLFE-0003OF-0Y for qemu-devel@nongnu.org; Sat, 28 Dec 2019 18:11:40 -0500 Received: by mail-pg1-x543.google.com with SMTP id a33so16263925pgm.5 for ; Sat, 28 Dec 2019 15:11:39 -0800 (PST) Received: from localhost.localdomain (194-223-58-9.tpgi.com.au. [194.223.58.9]) by smtp.gmail.com with ESMTPSA id c18sm21077186pfr.40.2019.12.28.15.11.35 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 28 Dec 2019 15:11:38 -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=TefutcrMB9pareM/zxzC1lVLnwDD302zB/fR5vwwqMc=; b=He482V05R9k0rygoGIICBNAFswxjxmfOc5nE59djzdhF6Psht9FBYdiKs0jxPfY7cz LMemqN1E8Kd1h1DjHwz/FLWnSNMep9IOK4R7Kch1VljgCRd9O6yEIOqkqbhAajGMWLG4 5mOqLejmNEVqzYpyJKqQf3iNj9d0aKw8IkFGMP4sp68W+B4VEZQRviGaDxRAaw9qLd4o 2a/kvouCtWeYBcLmQfiGrjm21xAtmGr3Cgd+CcdbaveaEBYQ+VwiTKaT7RUwbVEd9tp4 HrM7BY3YUGUIQLFK9uyaLlNhCMBjIYnCZSO4SwCestiJ100OXAkaSxws6DvYeU+BW5D0 OjtQ== 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=TefutcrMB9pareM/zxzC1lVLnwDD302zB/fR5vwwqMc=; b=JaOnFoi6MBKBPQAcgzbuTy/V7LASqPtDALq1/33yOEfe9kYWDX4yGnKsdSbtjL/GZl RPXsHLZHpr99kIPlAwlMFQe7hmBWmyGDWu9jAwGKA+F6G3Dpe0zaSH/XuUoWoWnFfXNW 6nMm8iavOJIY7s50wQsy1r7oISwezSJ1/6ZsDitacNyLcKNAsoqK3TElBd4EPycDMvh+ KYI0nCkbj4cPUdKTE5d8RAw1x7xjVPqMjMs9LJzViSfd3XdxSWOdlFpbwENQxx2Cz3q1 AbRk4Rc6wVxxmWaVfOSUivvgspjaMiHkl9FyXSsKW+/GgwbvWQblB+JJA/Oh94hDuTnY J7tQ== X-Gm-Message-State: APjAAAUvig8RF92sdeCfZgibPOcHonBgQNuA6HlcwTYz0cmciyZbpxwA 4x9zemJMuITsCbfCiIOiIyvU+b0Gqbk= X-Google-Smtp-Source: APXvYqxtqxVcXHiiZJmmjwsBdlyzVVOp0dyWFL3TP93BgavdjyYEKloCi/kmmPgyeEM3tIh3f/mwCQ== X-Received: by 2002:a63:4f5c:: with SMTP id p28mr61537504pgl.409.1577574698647; Sat, 28 Dec 2019 15:11:38 -0800 (PST) From: Richard Henderson To: qemu-devel@nongnu.org Subject: [PATCH v3 01/29] target/xtensa: Use probe_access for itlb_hit_test Date: Sun, 29 Dec 2019 10:10:56 +1100 Message-Id: <20191228231124.18307-2-richard.henderson@linaro.org> X-Mailer: git-send-email 2.20.1 In-Reply-To: <20191228231124.18307-1-richard.henderson@linaro.org> References: <20191228231124.18307-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::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: Max Filippov , =?UTF-8?q?Alex=20Benn=C3=A9e?= , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: pass (identity @linaro.org) 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 Reviewed-by: Alex Benn=C3=A9e Reviewed-by: Philippe Mathieu-Daud=C3=A9 Signed-off-by: Richard Henderson Tested-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 Fri May 10 12:48:19 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=1577574796; cv=none; d=zohomail.com; s=zohoarc; b=gkOvUjNN7NJLFOZMuGHAx8HREf0VHIYekiN7BzREIV1XWi3hsKrZBnb9X5StAkBTu4mRTBLg4/hz2rUU4FDAJBhYe0brOhMNUT0Lw5EHkTVVjsvzeev7ln0kGdVo38mVqKg+AgQAR9hrGoS2uAGZjJeayTO1ZgUB3bNayAu0oDU= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1577574796; 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=iCXuMC6wO9f+VoJnhE3lUwa5BRgmWcB+z6z3m9aJPKQ=; b=fUH2bN4jTMaBP+uw91Pn8K39+9SOZ6mFkw6O/yaFhqWO1NTxgmZzuMosF8rvzYKVlazxDeTgsjTTj2+c1VfrZOVaF+ZOy5Co+HwEfnmzbh3OaRikGrlfY9Awd2iYgkktzTUO1atthyqSjE/61AoWvTDzUfCezJbhB4tk9u9Q+zo= 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 15775747964483.9683002839157098; Sat, 28 Dec 2019 15:13:16 -0800 (PST) Received: from localhost ([::1]:47164 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1ilLGk-0005q4-RP for importer@patchew.org; Sat, 28 Dec 2019 18:13:14 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:38976) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1ilLFI-0004Ga-LG for qemu-devel@nongnu.org; Sat, 28 Dec 2019 18:11:45 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1ilLFH-0003iD-0d for qemu-devel@nongnu.org; Sat, 28 Dec 2019 18:11:44 -0500 Received: from mail-pg1-x542.google.com ([2607:f8b0:4864:20::542]:38320) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1ilLFG-0003eo-QV for qemu-devel@nongnu.org; Sat, 28 Dec 2019 18:11:42 -0500 Received: by mail-pg1-x542.google.com with SMTP id a33so16263971pgm.5 for ; Sat, 28 Dec 2019 15:11:42 -0800 (PST) Received: from localhost.localdomain (194-223-58-9.tpgi.com.au. [194.223.58.9]) by smtp.gmail.com with ESMTPSA id c18sm21077186pfr.40.2019.12.28.15.11.39 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 28 Dec 2019 15:11: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=iCXuMC6wO9f+VoJnhE3lUwa5BRgmWcB+z6z3m9aJPKQ=; b=VccT/pFKYrNFJ3WEWmdpipPqoqHosL1A6LjVTQaN7FGNXJD16B1dqpHuAZgfkI+YBi sAqlfWglTg51sid7HvoGss4eTmmG+bMN2UqnqQZQvmy6Ora1CfeuP2G7Ab4YDKy/BWq3 zltK8VmCE2ymK4TJZ6KCfhsbHv+bwskwRBu7H3QId/v5y7nx083d8SqyVc9RhjfkDGJn IE+XKS0MWtn2/FvouFuBEz8DdxM7ga0FwKPbJI0rjfc1BKgqYN0JR/mL9YPgSfqntPbE 8RjEC+YdUwJthwW5Y7A8jqSOWAcZ17HOOi3ouavxS03avP+vinDF0AqRZc+4gj3+xBhW lSuQ== 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=iCXuMC6wO9f+VoJnhE3lUwa5BRgmWcB+z6z3m9aJPKQ=; b=ZGjZBMZFHg+rfn9UOqBwA82BscLX44ywRdWiYEf4viQQGnDejqMmnBRbT5tt1EnAc+ siaPai5YMLuLu9qeDOjFCXm4k4a3IDAbrmTtJnAfrIKlcmlOmNAYJCAe7elSiZQHNNRf xj3Xhh8xZEjQzCERy8/bp6Jl/xr32Or+4psvD0t9vopQy3JQ9tUFNMmjxhciYjNstF6x UpogtvSeB4ZLhqJFJ9VJYdrFBotvaLL1Wb2EX+9bKzpPs61EX4WoncArlY39jncUuAcu jIo1SuMPxYBLuqWvfqt59CtdCMKKTUA3GylZpjaP+ZLEb+nVYAeng26xdci+K1UK1A4Q HwhQ== X-Gm-Message-State: APjAAAX8LwAKkP9Dp3ktHZnlK3mkqM3ynpEKHMYsysZZDUhtQzxe4QhV qx1ZaVF0fHjj+F8yUSxI8pUeLkDp9YQ= X-Google-Smtp-Source: APXvYqyOsp7p6JwozUmVXQuc4+FOZiuZOdfrYdOsl49jAZxleWeuv4b0DUyHVUL2cjTUl9eiphUAXQ== X-Received: by 2002:a63:5a64:: with SMTP id k36mr64306167pgm.323.1577574701551; Sat, 28 Dec 2019 15:11:41 -0800 (PST) From: Richard Henderson To: qemu-devel@nongnu.org Subject: [PATCH v3 02/29] cputlb: Use trace_mem_get_info instead of trace_mem_build_info Date: Sun, 29 Dec 2019 10:10:57 +1100 Message-Id: <20191228231124.18307-3-richard.henderson@linaro.org> X-Mailer: git-send-email 2.20.1 In-Reply-To: <20191228231124.18307-1-richard.henderson@linaro.org> References: <20191228231124.18307-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::542 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?Philippe=20Mathieu-Daud=C3=A9?= , =?UTF-8?q?Alex=20Benn=C3=A9e?= Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: fail (Header signature does not verify) 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. Reviewed-by: Alex Benn=C3=A9e Reviewed-by: Philippe Mathieu-Daud=C3=A9 Signed-off-by: Richard Henderson Tested-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 Fri May 10 12:48:19 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=1577575162; cv=none; d=zohomail.com; s=zohoarc; b=KMtpcr0Xh740x1/nm4OwEb5TtrM3cZI/tDsBnmSW7JsaeK3nqSSUOV/CjweBatwYHELogHiAQNEVw9TJ5inz5f4k79lNAzvtBSNmzRRBmr+JFkhXUp54ILxnA82FF6Z3w+bTRu8kDfgC3lQCOX/Q48XmiuuLGKm5HCZYd7CIOHQ= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1577575162; 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=DNuPbU9CZGapek+2oeeNAANDaqkN0tYp36H/As4CIoo=; b=gW1eJzya0A24VfL0o/68geAhmJI1XnyW9JU8A3Fs4z21y8hk0eVrWH+E335oNw6A4B9OzqoN3X7+xXLRrg2N7tKblO0zMBGYbM/t6gQX92jvYsEdIGOvcOE3XSKP2/D26rIZHxasi5VogIp6Vcg5bswvJsEGmYlXSOCn5Dl5CcQ= 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 1577575162385590.7461687017294; Sat, 28 Dec 2019 15:19:22 -0800 (PST) Received: from localhost ([::1]:47310 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1ilLMa-0004IY-Pg for importer@patchew.org; Sat, 28 Dec 2019 18:19:17 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:39152) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1ilLFL-0004Jd-7r for qemu-devel@nongnu.org; Sat, 28 Dec 2019 18:11:48 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1ilLFJ-0003zQ-L3 for qemu-devel@nongnu.org; Sat, 28 Dec 2019 18:11:47 -0500 Received: from mail-pg1-x52e.google.com ([2607:f8b0:4864:20::52e]:43657) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1ilLFJ-0003uN-Bo for qemu-devel@nongnu.org; Sat, 28 Dec 2019 18:11:45 -0500 Received: by mail-pg1-x52e.google.com with SMTP id k197so16259159pga.10 for ; Sat, 28 Dec 2019 15:11:45 -0800 (PST) Received: from localhost.localdomain (194-223-58-9.tpgi.com.au. [194.223.58.9]) by smtp.gmail.com with ESMTPSA id c18sm21077186pfr.40.2019.12.28.15.11.41 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 28 Dec 2019 15:11: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=DNuPbU9CZGapek+2oeeNAANDaqkN0tYp36H/As4CIoo=; b=crKQLBfwy8Pm0R7MB1tWFMjXkV0IFCVwSC/PmLO/bci4jMz3B+MYZu/nXC4xV8osIX t4TwkCrwoWKQCAGxAkfmVpOh4UjEuZXkvwx4eCoBhlFqjUheKTOxi4l0sWR896tiE/uG RrlywzOO9w/2lDZCT9PvRlP8s6sfi8OxcNEDGfQGfsH2FmRfVbw3KJNhSVdWgshE75RF 9ofvwRYjwQ/7pKYWHP2X98210fwhngqmDCKHVTwbOvPHopAE2V73xd7By/Yuttwl6eRV 9fZHnu1QwIZ1AHQfXG14HK+aenoklNG32rlO9Zx56fLJ8VuDwNOJ94nrxOgSsEcqOpA6 wyxg== 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=DNuPbU9CZGapek+2oeeNAANDaqkN0tYp36H/As4CIoo=; b=A+6VOKZeoay9qqG5LzF4ADhspNcBjb8l6UuU6zh4h78XL6jWrimXQOjm5hu3BMhuou OATxLTQqleMZZfThnvEJuWPXATq+vZSJ9ALZKaS52T2Wk6Pz8zMJXEBB1kiBePcw5J0I WvpwMFisPi9RJt7dd+veqVopYKuaK7hS2mO/Yt/SOpeaTvYq/pDkIFZa4qZ/8xFjmaHH sYwglXcDThaMvTwZfcdHyIcCEqtltIjD4H5rJK8G/0QWII6F7yidaGyUPFOCmNo8tbrb UkJEYoqnslZc2qhhlrDE6u1/AY5WnUUtCnSTgeEj+KE9b08yMxrLurW3uLXN2p2J0LDY NrtQ== X-Gm-Message-State: APjAAAWrys20OI4NzL3I3DfzMckicfKb4UDzH1eivq9kRQVcKqK26yX7 yiPz7ED+gYf4mpbkl5pfcf3uQ3g/zPk= X-Google-Smtp-Source: APXvYqyS9mxFm46w1jYx09qDdCAIgMbws9uzYuz+hpTri3yu7DUQTaMTEpD7UjoQIXckrsuek4wEQA== X-Received: by 2002:a62:e80b:: with SMTP id c11mr56256657pfi.28.1577574704109; Sat, 28 Dec 2019 15:11:44 -0800 (PST) From: Richard Henderson To: qemu-devel@nongnu.org Subject: [PATCH v3 03/29] trace: Remove trace_mem_build_info_no_se_[bl]e Date: Sun, 29 Dec 2019 10:10:58 +1100 Message-Id: <20191228231124.18307-4-richard.henderson@linaro.org> X-Mailer: git-send-email 2.20.1 In-Reply-To: <20191228231124.18307-1-richard.henderson@linaro.org> References: <20191228231124.18307-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::52e 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) 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. Reviewed-by: Alex Benn=C3=A9e Signed-off-by: Richard Henderson Tested-by: Philippe Mathieu-Daud=C3=A9 --- 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 Fri May 10 12:48:19 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=1577574957; cv=none; d=zohomail.com; s=zohoarc; b=gU1ceTdoGHW2PWbPYphCEWIoJEM6Diz8EJRgrD1KIIFmCYAFDIc6jUgpql0VP57a7PwcHxn4gHjTvFD3CdmAWgrdHRquD6FloJtvQ5poiNIFaT8qFV/pxksM93WxQMoboRr8hqMaq2H+neOz/4FKIiLY6BHyeA0a49qmA1Rkx/E= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1577574957; 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=PF+g5iRIalVK0WWT4QVZhxCNUDOljNoF8r3HMmqZ1Wo=; b=H7Wxt0X9+MKzAbeLwj8C3gLIUyMvTrCVu2znqCLdbArBcYoYJ2JSsUbBN1J62EojBtQ8pkl/wcoMjsBk6xgCpg2RJk0r9rJ7lLGunULEC+4nbtLmfjhyhYXLlzYfEev7YyypjEcEMNeIh1MSR9ka5Spe6JGTCDctJwFSsueJqFo= 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 1577574957912297.1231904386924; Sat, 28 Dec 2019 15:15:57 -0800 (PST) Received: from localhost ([::1]:47250 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1ilLJM-0000tx-5W for importer@patchew.org; Sat, 28 Dec 2019 18:15:56 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:39288) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1ilLFN-0004N9-9K for qemu-devel@nongnu.org; Sat, 28 Dec 2019 18:11:50 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1ilLFM-0004EA-8T for qemu-devel@nongnu.org; Sat, 28 Dec 2019 18:11:49 -0500 Received: from mail-pg1-x543.google.com ([2607:f8b0:4864:20::543]:43742) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1ilLFM-00049o-1J for qemu-devel@nongnu.org; Sat, 28 Dec 2019 18:11:48 -0500 Received: by mail-pg1-x543.google.com with SMTP id k197so16259182pga.10 for ; Sat, 28 Dec 2019 15:11:47 -0800 (PST) Received: from localhost.localdomain (194-223-58-9.tpgi.com.au. [194.223.58.9]) by smtp.gmail.com with ESMTPSA id c18sm21077186pfr.40.2019.12.28.15.11.44 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 28 Dec 2019 15:11:46 -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=PF+g5iRIalVK0WWT4QVZhxCNUDOljNoF8r3HMmqZ1Wo=; b=QoXKUpyI2UZ+LBfWCwgdMO+RBQji8wDor0rMyCFRBkaZG4uo9kDJsYxIUjZD4S3qLg /vreV2Xwpks++FX8DjzjJZcodlP9R4kvbJKU39NkOrl1xnY4lpaDPcWQOD4vouaWoShf IhoW4xTBaeHpQfMNfU6l5wf7sqzI/26l2BKZlv0OeZAg8WelUEfPyHV+yTE27Cfx6niF AhC5SDjlLaqThsGOjF95b6gvac3/G7Q2eVbprWAyNAcMyGpnWQim+hE2slRKd9mtqtEa YE/MJ0vdxP2LLEvs4YBpPnyWDEv5gtOFUPcHtPCjFv6EiF90CQ9WEC463JDpc02jiFPS ELjA== 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=PF+g5iRIalVK0WWT4QVZhxCNUDOljNoF8r3HMmqZ1Wo=; b=T88SWfRaHpX6uwzLhBdKBkih18atXyrzgWgYvFuFgVPsy0tL/qHnCbHAk6BU7iPJBf 5h6RKa7jxCNUm6O+VbWer/wT1Vzml9y8/Ce3cR3ba8gyODgKRbEgJAXq0cpTxgGUGg4r 9P5P+LEJKB/ksRm/MB2KlEEw5rWuHOVT9DYXtfWsY/n8x5H4hCz48ffgQFotdkskUQV9 iG0A1zQFZY75WC+P7/N+cnPbh/6VzbYoOH2Eqh+QteTnrnZmarCQXguzg3LztPzopPTn en8mDnzr38ZIlJIiSyQHKX2CcLc1JN/Bf+4TisNmjbHfvDwHFml3zI3subNXInDdkgYm v5IA== X-Gm-Message-State: APjAAAX09Lt3xHzh1C9WmNnV0f3CIvMswSAq/HpxWRN5O5Yv3aHSW1+w /pmTm1AfyqUmzucMG5X5HtkQxVaAEwk= X-Google-Smtp-Source: APXvYqxM1XlDxe9+3P9To9d/BBMyndFNhHlLeIddgEzfNOE8Sy2sTVKND7E6xI+4vYQuWJ4U25TnjA== X-Received: by 2002:aa7:95a3:: with SMTP id a3mr64418153pfk.193.1577574706959; Sat, 28 Dec 2019 15:11:46 -0800 (PST) From: Richard Henderson To: qemu-devel@nongnu.org Subject: [PATCH v3 04/29] target/s390x: Include tcg.h in mem_helper.c Date: Sun, 29 Dec 2019 10:10:59 +1100 Message-Id: <20191228231124.18307-5-richard.henderson@linaro.org> X-Mailer: git-send-email 2.20.1 In-Reply-To: <20191228231124.18307-1-richard.henderson@linaro.org> References: <20191228231124.18307-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::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: =?UTF-8?q?Alex=20Benn=C3=A9e?= , David Hildenbrand Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: fail (Header signature does not verify) Code movement in an upcoming patch will show that this file was implicitly depending on tcg.h being included indirectly. Reviewed-by: David Hildenbrand Reviewed-by: Alex Benn=C3=A9e Signed-off-by: Richard Henderson Tested-by: Philippe Mathieu-Daud=C3=A9 --- 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 2921419c27..20a84b3912 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 Fri May 10 12:48:19 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=1577574808; cv=none; d=zohomail.com; s=zohoarc; b=aBh9TNimPbc7ER2cUaV+cLyIa5q2R+Zxk2yJAk+L0OiWWfXxQxS8f8qJvKMjSU0326saWBPa3lWnoga8kcDOxtcQ8dv5GSTZhpai7A3SjeCmOFRI7TpZIcvF//gmF8SJoCnv17vsGh/DXbdkz8AN+lpzUZG5Zf4W3ksdfu2xLFk= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1577574808; 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=IAnQiL0iMLFMCcApEq0tSytTxXGtPzjLxfXmOHANo3I=; b=Gtv3n7YB/zn/rm2pa/8WaUYx9jycvLHOa4a/2RH0YbIyJrxFXgzSZWve5YQkfQsBn+yhNpLgtvEDP4VQ5DPZJ8g5J8uxX6OqcdMFQ7OlgcP8NqYpvdnfvsGwLDkQaxvCqWSifKfkoalgseVxSAMc0+LI6JAxZ0Jd1UTY3PGacjk= 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 1577574808720343.2770300204253; Sat, 28 Dec 2019 15:13:28 -0800 (PST) Received: from localhost ([::1]:47198 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1ilLGx-0006D2-EG for importer@patchew.org; Sat, 28 Dec 2019 18:13:27 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:39473) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1ilLFQ-0004Rj-5q for qemu-devel@nongnu.org; Sat, 28 Dec 2019 18:11:53 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1ilLFP-0004Xu-6K for qemu-devel@nongnu.org; Sat, 28 Dec 2019 18:11:52 -0500 Received: from mail-pl1-x643.google.com ([2607:f8b0:4864:20::643]:44273) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1ilLFO-0004ST-Vl for qemu-devel@nongnu.org; Sat, 28 Dec 2019 18:11:51 -0500 Received: by mail-pl1-x643.google.com with SMTP id az3so13187530plb.11 for ; Sat, 28 Dec 2019 15:11:50 -0800 (PST) Received: from localhost.localdomain (194-223-58-9.tpgi.com.au. [194.223.58.9]) by smtp.gmail.com with ESMTPSA id c18sm21077186pfr.40.2019.12.28.15.11.47 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 28 Dec 2019 15:11:49 -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=IAnQiL0iMLFMCcApEq0tSytTxXGtPzjLxfXmOHANo3I=; b=m4DZn6pq/Yce5SNLuRzLHSGpx42AOIExlGxe33SsAPi38uOR39XAxQwlJxUJbBnKFC 7h73DBeFpQuuGkLQioK2nu5FUV3GO8qJPhGRdeirBkqANT6XesFHbyegXskgsIE9mtWr COa8O72+6CsRDdwKKPs9hN7e0VkRiq2s6lzWqW5WbTFAZClzd7KIzjJWCiYn+ELHbW8B NJ37navf6EDf+9DNI55GvHW9Fp7rhyOtqhtw72a9L42/QUYdn8MHS5h6pnCgi5pTdPXQ Zkt0No69PhVuksZc6QlUyE73xkMgSlClNyEp5cZJgWowHlAnepMuzXh+2DobiVl/IM/S TpPQ== 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=IAnQiL0iMLFMCcApEq0tSytTxXGtPzjLxfXmOHANo3I=; b=n5GasFkyFrrO2b/v/x5NJDz9yOho6WsPSsCPHh6+vlBV1kIdjZI+W+TVJjkSbhrqFe MF1ZwacqpY7QZgsVkgdVtV8idjwpVUYXJXLKDxlbaTYPqqn2p9vT4PX8tChEKp8ob18I 7K5OQWpv9IMwOApPlco2H9psRScaGW/GtCfumssagzfd+BItGIubc3U9QdYWZc4s/dvg UEmrR4FOwiVgaVE6gKpl3IB09DpdT417BDGmHa+Vy3YDTspE1Q12pSnOoYdBruCNsFMT uwIpbtoH4YNnRpWkdMTgZlRNfMiqUZsE8eo4NnbeMGn7JdI16JbWaWpfokqEAMqeSVlr fVkA== X-Gm-Message-State: APjAAAXCy/TzoRcfkJ0DeWUC1Qhcf5B/u2KEOYfU3VaeB7gejt+yPVNU vFSJINSq4EjOQagexcyddfAxvUkOEJg= X-Google-Smtp-Source: APXvYqz58R5Ay//v87VbZJW1lOjT3XkIxpo1dSB9HQ56gr09xPp2DVtM7uEr26VqpQYU8RZy43SZ8w== X-Received: by 2002:a17:902:76cb:: with SMTP id j11mr59894432plt.175.1577574709617; Sat, 28 Dec 2019 15:11:49 -0800 (PST) From: Richard Henderson To: qemu-devel@nongnu.org Subject: [PATCH v3 05/29] target/arm: Include tcg.h in sve_helper.c Date: Sun, 29 Dec 2019 10:11:00 +1100 Message-Id: <20191228231124.18307-6-richard.henderson@linaro.org> X-Mailer: git-send-email 2.20.1 In-Reply-To: <20191228231124.18307-1-richard.henderson@linaro.org> References: <20191228231124.18307-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: Peter Maydell , =?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. Cc: Peter Maydell Reviewed-by: Alex Benn=C3=A9e Signed-off-by: Richard Henderson Tested-by: Philippe Mathieu-Daud=C3=A9 --- 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 Fri May 10 12:48:19 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=1577574985; cv=none; d=zohomail.com; s=zohoarc; b=T/VelO0HhkAFOsigxas8P4IFeVycnl21zLkplvJCcmE4qrFu+XjqMMXGOremqeFSkivi24E0Ps4Q6LirjG63iLahsTH9y3Fdj77ZHQAiuAgPYK5sDt5gINbhlqIDOS8jRT+uMmq4Xh+DPGSPMHFF95veEsPF0hYOfwUeJXnGddo= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1577574985; 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=gv1Ud2yP6gyCq8Ud2s9mR3U2aNtqiVaY/Id70lxMdZgIDE2n4fvM8ie86XRtvXUE/rbTOkihXPRS+VP021zxPA0zAPTFR2q+PnTYzAavNiFR29NWFZHXVogv1V61JqaspWvA4tMOHXuVOh4I1yKEvCsP34/euKjRottmpKGuRAw= 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 1577574985660983.1999097098484; Sat, 28 Dec 2019 15:16:25 -0800 (PST) Received: from localhost ([::1]:47262 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1ilLJo-0001MT-EI for importer@patchew.org; Sat, 28 Dec 2019 18:16:24 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:39635) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1ilLFS-0004VW-Ka for qemu-devel@nongnu.org; Sat, 28 Dec 2019 18:11:55 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1ilLFR-0004mB-LH for qemu-devel@nongnu.org; Sat, 28 Dec 2019 18:11:54 -0500 Received: from mail-pj1-x1043.google.com ([2607:f8b0:4864:20::1043]:55757) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1ilLFR-0004i9-Fj for qemu-devel@nongnu.org; Sat, 28 Dec 2019 18:11:53 -0500 Received: by mail-pj1-x1043.google.com with SMTP id d5so6297786pjz.5 for ; Sat, 28 Dec 2019 15:11:53 -0800 (PST) Received: from localhost.localdomain (194-223-58-9.tpgi.com.au. [194.223.58.9]) by smtp.gmail.com with ESMTPSA id c18sm21077186pfr.40.2019.12.28.15.11.49 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 28 Dec 2019 15:11:51 -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=TPQwt2Vvx3SSIAK2JA60vrqNfb86Otue8pde5Iawhbs7zu3ufUU4hTJOUb4hQC6l2h 3bGxU2j/k90ns2SLmWytaXrSPDMbtNMLC5AVlEHsYhubFfzKAza2iJMb3RPaqzQfHnJg DSdEp/viMDEfx7k8u+bc+a48G9lYmqzI4VHfBc2WP8jNwlZIAQVyCKTZVKRBO7qOpP10 KwMFNucW2Z7Xipx5vysgKHpscx1SquIf0ljHpcCNBl1ekID1AGpRdSC/eUNIZKv3SpGK 4msIJZ4+wtJOG0aAZSEgJ3WGYwiaVstKDIO8T0MGqWjfMiZvKqAJ6ViEaR7xCtXS/7n0 UFNw== 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=h/FkaFq7fWHJH7KUor3UV79Xp2pH2xgf9JFGRA3kyzPj/Duuc6/q4adQ3rCI6m7oAc ChX3x7fKmAnwaThpos27fRfcsXsgsp/SUWEEg1OI2N9swJwtnVJKSEDQtab+NPNFelxE bq2IERCHos7+FxRhZEOGcr2JBqYVydfoplm7pQa6pxT4Hfj9YUzm8AZijJM237mT/NH4 EKpLgskLzLUMl4zMy7gnhucXKTbL5DeZFdn+bu3rsJL1rzo1z/Ts/tz/JVjXe7xnxuhZ ziCgLxVq3mPhPtfgJpfd0jMe/l+uuCTpc6h+CC4soaE1Lf2XnZcT6/NiRwC9tekhrAPi eKyQ== X-Gm-Message-State: APjAAAXdJDX5ZBNUAbqMw8u29pGeWH7inE9v15eodqC1oiWJmFUUbgMc lDxfXt2W9xRLBAjrzUwKXgURckpQYiw= X-Google-Smtp-Source: APXvYqyReW7Gpebh49Wq2RQu79O6dvv5HaYstFMGb6Eyi4MbR0YMIdKAdfx4f1vynzCnRhBRzuYkDQ== X-Received: by 2002:a17:902:7d94:: with SMTP id a20mr55561476plm.26.1577574712167; Sat, 28 Dec 2019 15:11:52 -0800 (PST) From: Richard Henderson To: qemu-devel@nongnu.org Subject: [PATCH v3 06/29] accel/tcg: Include tcg.h in tcg-runtime.c Date: Sun, 29 Dec 2019 10:11:01 +1100 Message-Id: <20191228231124.18307-7-richard.henderson@linaro.org> X-Mailer: git-send-email 2.20.1 In-Reply-To: <20191228231124.18307-1-richard.henderson@linaro.org> References: <20191228231124.18307-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::1043 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 Tested-by: Philippe Mathieu-Daud=C3=A9 --- 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 Fri May 10 12:48:19 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=1577574816; cv=none; d=zohomail.com; s=zohoarc; b=d/Rr36HYeF4VAhLEDlwCUDBvz/UiLMIIRUHkrDNjC3k6E1qug5caBzunVnqjMx7vJuKmCBLdkbhYmewGeix9XqbfVYpf8Y899FagDdGyYAxahzGCOHkmkrDsqFqpakcS+hg9/PWJaLqAVKs0TmcS8RhvlstanWjPE8bh+f5nmN8= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1577574816; 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=e7IjWrGdGmZg7JkMhbQbAWZ0eqaluquJ5qRv97GXAjk=; b=FMyXFAYmbHEPYox0ThmPeTQK1ZtJ7N7sDjt5elkjdlFdYGa3nq67BTqIhHNJf8CYD9q8ZbjXhdUMaNE5qmM8p+9QIUjoJU7TsTXq6iAZUAQcOgYwhss2WAelBMsryPtEwp24x7uMjKzg/qEqYQxSyN9B6JXcER28v5eEZhYgxmI= 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 1577574816655842.5756838193734; Sat, 28 Dec 2019 15:13:36 -0800 (PST) Received: from localhost ([::1]:47204 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1ilLH5-0006Ny-8V for importer@patchew.org; Sat, 28 Dec 2019 18:13:35 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:39794) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1ilLFV-0004aA-Gf for qemu-devel@nongnu.org; Sat, 28 Dec 2019 18:11:58 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1ilLFU-00054D-AG for qemu-devel@nongnu.org; Sat, 28 Dec 2019 18:11:57 -0500 Received: from mail-pl1-x641.google.com ([2607:f8b0:4864:20::641]:38954) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1ilLFU-0004zM-3x for qemu-devel@nongnu.org; Sat, 28 Dec 2019 18:11:56 -0500 Received: by mail-pl1-x641.google.com with SMTP id g6so10250840plp.6 for ; Sat, 28 Dec 2019 15:11:56 -0800 (PST) Received: from localhost.localdomain (194-223-58-9.tpgi.com.au. [194.223.58.9]) by smtp.gmail.com with ESMTPSA id c18sm21077186pfr.40.2019.12.28.15.11.52 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 28 Dec 2019 15:11:54 -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=e7IjWrGdGmZg7JkMhbQbAWZ0eqaluquJ5qRv97GXAjk=; b=Gq0m7DMhV1+i6cHjAH8+98rCcXg82qdLs1Efe9y5gEPhuvOAvqIK0F1mGY1s+WASPz 0QOBKJqJdGTtQOOdHO5jrNAA1wSRsu5U9qyhw/9enJJA7BXJNpqhhyB0imEWXezu0g6h jxuLOxIq09Ytkvr5zR3La18xcCRhvrMLGI/3NAUC6XJkdPLJNp0mz+z60YoTvs87tqPv 7ROUIvPNGazjE8w9wyFQWzWLoj6eiRtIF0FJtS4eklun50PzFUKgG3vZ8+xT/FLXFuBZ bbGT0KG6pykAOgEMe6r3AoORpw+UtB2VH+GV/dZwXDSyIAmINPBoPe/mIsfAfeNhA80i Bh9w== 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=e7IjWrGdGmZg7JkMhbQbAWZ0eqaluquJ5qRv97GXAjk=; b=iD3w+dihza5rwP0mgoHT9QK5PU8QWVBYLhHV2Bkc+FQhjHKwaN/ujmCZ0kG7o6kRgz ttnC5pET6E8eUOadZlSRXlV3s9aUDw+JNh6A2EaZNZXEf0m6QisOwoFwU7QOazp8JB+Y hyhbZh7I7GBl+g22pC3AnWQttlYRdYwBaUGJmUr/QRmUsJ6jRkU16YhsltKOdGJJXwnN P+DDdEtSjlPHsBEEwK4o3thF+x+PUN8qh2Pl26IYdi2EKdIl2Ainy4HjuqLdl1xIJHc1 S+J945P+RwnCX0zTFYZcvFqENhNeaT2Q/+Ikzbs9cWtaDHDyxUCu8tJr1RWWKwRvxyWp +psw== X-Gm-Message-State: APjAAAXixli9pm4t5N8t/T2gPkEZYFZsg+b/ZFkxdYXg0A5CG0UMZGH9 /W8/0ovrWI2nXUVuI3rBLCNWNWW9FiE= X-Google-Smtp-Source: APXvYqyM7lwOL1ljfukycW4hjb6vJzz+KUoIiD6cRpCbwi9t2/mcx7OeoAdjMQ2YoAjp/emGUaJD7A== X-Received: by 2002:a17:90a:191a:: with SMTP id 26mr35282365pjg.111.1577574714835; Sat, 28 Dec 2019 15:11:54 -0800 (PST) From: Richard Henderson To: qemu-devel@nongnu.org Subject: [PATCH v3 07/29] linux-user: Include tcg.h in syscall.c Date: Sun, 29 Dec 2019 10:11:02 +1100 Message-Id: <20191228231124.18307-8-richard.henderson@linaro.org> X-Mailer: git-send-email 2.20.1 In-Reply-To: <20191228231124.18307-1-richard.henderson@linaro.org> References: <20191228231124.18307-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::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: , 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 Reviewed-by: Philippe Mathieu-Daud=C3=A9 Tested-by: Philippe Mathieu-Daud=C3=A9 --- 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 Fri May 10 12:48:19 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=1577574995; cv=none; d=zohomail.com; s=zohoarc; b=kW7RKDMLhHtdTvkUSGLqRdl4NTc1cm93PjX0OqMNlZGoKmDyWbK5avmBcML3LTPkv5yLa4miCEiOjkKc/M2e3/UwgbpP41LL34SdtQAxNJ2VJqpK7Awi01rRORf2rP06mR7PVRu2XDFmRuVXiz/I2kyE2h8T81iorLemwjZQOio= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1577574995; 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=o4tOjWH6ALV81K/fF+oLX92Wb4vwp7buMFAa8+Hf4/8=; b=FTxBlNOhaO+dPzCOQ8AdhaGhwiy3WxWuVnZuDJR0IkUz7v3VPrxqM2KNRe8O6SMSWhz5UAS8M8YdvmKrFgGeI4q4CiqHgzsqyF8vUAdE3uoCDKQhlYKENpIl8c+bCKVaEzRtTR90lbMERMBIds7pbxi7KaPwmISUhmV9yWOPdf0= 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 1577574995470903.190432667965; Sat, 28 Dec 2019 15:16:35 -0800 (PST) Received: from localhost ([::1]:47270 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1ilLJy-0001dC-CZ for importer@patchew.org; Sat, 28 Dec 2019 18:16:34 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:39939) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1ilLFX-0004eJ-SK for qemu-devel@nongnu.org; Sat, 28 Dec 2019 18:12:00 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1ilLFW-0005JO-R3 for qemu-devel@nongnu.org; Sat, 28 Dec 2019 18:11:59 -0500 Received: from mail-pj1-x1044.google.com ([2607:f8b0:4864:20::1044]:35965) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1ilLFW-0005Fg-LG for qemu-devel@nongnu.org; Sat, 28 Dec 2019 18:11:58 -0500 Received: by mail-pj1-x1044.google.com with SMTP id n59so6564019pjb.1 for ; Sat, 28 Dec 2019 15:11:58 -0800 (PST) Received: from localhost.localdomain (194-223-58-9.tpgi.com.au. [194.223.58.9]) by smtp.gmail.com with ESMTPSA id c18sm21077186pfr.40.2019.12.28.15.11.55 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 28 Dec 2019 15:11:56 -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=o4tOjWH6ALV81K/fF+oLX92Wb4vwp7buMFAa8+Hf4/8=; b=MBnOOf7vawqZ29ltJGufOPxKSdWs1FzS8LCIURURTxW0R3SU+m1jR7nvcvkcpudOr1 WfeUdXH/Hj3zxm9kAFLyt9MzBqGz6oJE0ORKU2/niUuEospE5EP6JP0QxG7VbhJMKTfZ Vy6dzUiYYbCjys0KXJUpKQJwOMcQFRWxzZK/JPYzp9IQj9dbJ1gJoIlJ4j1HJd/mNGeM 4Rhybu3Drj0ig7eGfS58mLUNfLV+plKv3ZC0axH9hWgpephi2ZJzw8Qgyqfw//S6k+pM dnnndZDGQRxoLKGw23o8Z8sASjvGsccxLPAl01K2wlvabeso55fpBlIGSrR9bnW0H9J7 i2Nw== 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=o4tOjWH6ALV81K/fF+oLX92Wb4vwp7buMFAa8+Hf4/8=; b=ieJDd+GfYDemVdqJBKCb5wrT5DPXcM6msHj0zj8orxA0p3ozJ32keRZ72PtYZSP/Wx peWOY1mfrcJ7Yeg5DKLyorXxa3BxX8INjR7k+v8Kns5PpvFbxXm4qRdIB6DJYs5oQfxI vNMdePoMUq5pSe2rogrvDH7R59R2EwWZm6Vvcqn15irINuZA/6hHgFxS1fazjI2vCpeq dv0Wm0T45H7y7KWiSkhzhaNTJP1aHKVaOHwGEcB+U/vKTmOMkIvvWaglieAAb0KHZ2NK qQMwPkubozevr5rrRg0PSnpFs0asPAtSP2G26wP1Y7GQwIP1Vwn0ezETlNmbnP3a+zAF w33A== X-Gm-Message-State: APjAAAXtB3cCcbF8TzSRBJr4ioURTjVHXVoXqhWRSGGc0d9RLb4OhA6W qsyX0SaU4CPe9tLVyWjaA0VCGXfme1k= X-Google-Smtp-Source: APXvYqzpVkolM/7oxCIoetBaBPaj20Zztm+P4Qeq+ru0JG0traHPq8QlJk04UX1oDbP45iKQ03ZuVA== X-Received: by 2002:a17:90a:d804:: with SMTP id a4mr35592977pjv.11.1577574717387; Sat, 28 Dec 2019 15:11:57 -0800 (PST) From: Richard Henderson To: qemu-devel@nongnu.org Subject: [PATCH v3 08/29] linux-user: Include trace-root.h in syscall-trace.h Date: Sun, 29 Dec 2019 10:11:03 +1100 Message-Id: <20191228231124.18307-9-richard.henderson@linaro.org> X-Mailer: git-send-email 2.20.1 In-Reply-To: <20191228231124.18307-1-richard.henderson@linaro.org> References: <20191228231124.18307-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::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: , 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 trace-root.h being included beforehand. Reviewed-by: Alex Benn=C3=A9e Signed-off-by: Richard Henderson Reviewed-by: Philippe Mathieu-Daud=C3=A9 Tested-by: Philippe Mathieu-Daud=C3=A9 --- 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 Fri May 10 12:48:19 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=1577575197; cv=none; d=zohomail.com; s=zohoarc; b=eh0PWNLVBnB2OKydIg4bpzjwlzXchtd0i78bnCJDFfXNtie3b8U5kJ1s7WhKBVmsFZrXSyeUXYG0SAmGd+aMPpoiL9khe1/xtu/BJk4FP3RHBsPbvNBDPK8wdR2LA/Skgy6l7XiPcqiLau6TNyLb2IXXvevixko0lYGFsn+zFPU= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1577575197; 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=5hxKYSXHgHM/lVQxEfqAqj7RCUsAoWe3Z31+krFCY/w=; b=Q7xdF/dk27A0p5uqnC4uulED9bGUdTypbJJaPGciXR1iC2WpPGXrH3JWmQ8pii2vaSJyxz6MeDtu3Gvl/4Rvr89oRirCY/9DvpYpSlExfBSEZwF4Dj+GSuMg26n23gCna3j2zqFnB7CqaE1zXS3OtR/sGGbrasrjHNkokkGjoAw= 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 1577575197476682.3028600749308; Sat, 28 Dec 2019 15:19:57 -0800 (PST) Received: from localhost ([::1]:47318 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1ilLNE-00055g-2o for importer@patchew.org; Sat, 28 Dec 2019 18:19:56 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:40137) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1ilLFb-0004jo-9L for qemu-devel@nongnu.org; Sat, 28 Dec 2019 18:12:04 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1ilLFa-0005eZ-5o for qemu-devel@nongnu.org; Sat, 28 Dec 2019 18:12:03 -0500 Received: from mail-pj1-x1041.google.com ([2607:f8b0:4864:20::1041]:54440) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1ilLFZ-0005ZW-VF for qemu-devel@nongnu.org; Sat, 28 Dec 2019 18:12:02 -0500 Received: by mail-pj1-x1041.google.com with SMTP id kx11so6311685pjb.4 for ; Sat, 28 Dec 2019 15:12:01 -0800 (PST) Received: from localhost.localdomain (194-223-58-9.tpgi.com.au. [194.223.58.9]) by smtp.gmail.com with ESMTPSA id c18sm21077186pfr.40.2019.12.28.15.11.57 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 28 Dec 2019 15:11:59 -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=5hxKYSXHgHM/lVQxEfqAqj7RCUsAoWe3Z31+krFCY/w=; b=NPBp5fEZvwe5ZrOc3TkWJHAbcoatj9rcxYbxIpS9paPDFePJPNQ53B7gMYgFRaDATv kJmAYBRRADhBP7CgO+WI69BRBD08Ss0YXdPUX7oiWRHxIYOvtChOfb/RhCUCOlSKK7mT x+EGc24w1tgeqNZ9zRTJ3SinVwzQT2k8ADM5GA2feXkLW8Uv1YkSB+XOtIK/Twe19Vnb Vs2jgc1l2VWrxUBUOCOQEECPkWz1xQeX18JozZTEj1qHErOseidNkMqIq2F26P03pdO8 yWsJZGQCe3NEo9iFXcnTI2AiS+W8SMCpavz6tXN3qlXYQ6rzTwJMkIEjmAH0d1QSm1kK 5IiQ== 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=5hxKYSXHgHM/lVQxEfqAqj7RCUsAoWe3Z31+krFCY/w=; b=OpOmbRE41lmq7JO3vwWVaiImhpdA+EkMrWqFrjdSYoC6qzN0jGplqEeEBQNP6zgc/Z RLIaB6BBytJpyxuadQwWdzIjLdEYbtcWTSavxR2obiSj51hPlVqaVgtbro7KA3nsiYb2 ZIfRgnQk5akKfQvQk48JBLuDVEQH+UdkxC9H96KOJ6Lcc2YI9lIkLMC1IUEBKHnF4+Mm tYAWQJABUfltNbA0ytqXCgeHkqWx3ePZ4w5SkaBItIwv/IMbRv+KDqB3xsCDWWV7qQC1 SgSeqq1LgbRRPF7DdRK4BjFOC0X9V7yB/AzcgoK264yvflzh08/z4BUfoioDjZj18mhT oeOg== X-Gm-Message-State: APjAAAUiugnPwgP8A4mUDnRxdLKz6Ntmob1zEsTuOb4s9DicIvErx4IQ iVzotMztk8LtgO4dnta3JZYEjsSjCew= X-Google-Smtp-Source: APXvYqzOmNS40DX4a47sSfiB71NH98Z8wlRQ8bdpU/pxK/XnFpFouWoVj79fRWOLEZSjGPrnBX6Kpw== X-Received: by 2002:a17:90b:1243:: with SMTP id gx3mr35894855pjb.117.1577574719888; Sat, 28 Dec 2019 15:11:59 -0800 (PST) From: Richard Henderson To: qemu-devel@nongnu.org Subject: [PATCH v3 09/29] plugins: Include trace/mem.h in api.c Date: Sun, 29 Dec 2019 10:11:04 +1100 Message-Id: <20191228231124.18307-10-richard.henderson@linaro.org> X-Mailer: git-send-email 2.20.1 In-Reply-To: <20191228231124.18307-1-richard.henderson@linaro.org> References: <20191228231124.18307-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::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: =?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 trace/mem.h being included beforehand. Reported-by: Alex Benn=C3=A9e Signed-off-by: Richard Henderson Reviewed-by: Philippe Mathieu-Daud=C3=A9 Tested-by: Philippe Mathieu-Daud=C3=A9 --- plugins/api.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/plugins/api.c b/plugins/api.c index fa1d9f276d..cb7098ce79 100644 --- a/plugins/api.c +++ b/plugins/api.c @@ -46,6 +46,8 @@ #include "qemu/plugin-memory.h" #include "hw/boards.h" #endif +#include "trace-root.h" +#include "trace/mem.h" =20 /* Uninstall and Reset handlers */ =20 --=20 2.20.1 From nobody Fri May 10 12:48:19 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=1577575331; cv=none; d=zohomail.com; s=zohoarc; b=E1ND/1ECnqcs4H803qwa1JIyg083rOCqzjTLNByydWsqtE/3FAKzE66OEmIVYm8Wssamr2bY5urNwRG8dupqb/1ZcNNbjvJ2fTG3yU205c6UHfZoiOyaz1B6IFTqi1rgGqNzL3qYkXKibxHaeIxUAtmotPcqTGP1tP3QGOpku1E= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1577575331; 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=MnSpkFpNOTnhC4rSkWk0MGw+zrJsiapt+CChJD9TpOIbJlHD80KVU/yG5L5IIETrgz+dOkyykJxssYN50Rp+A/CKSq5t/haF3vIHaGAfGna+kjifbvoQHQxdiPpzfcPBnOC2pIX7m+1e0/Eg3XWSqnjUkrT5o/BGSNqM2Gc6nw0= 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 157757533133034.26572483025063; Sat, 28 Dec 2019 15:22:11 -0800 (PST) Received: from localhost ([::1]:47372 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1ilLPN-0007vz-OW for importer@patchew.org; Sat, 28 Dec 2019 18:22:09 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:40343) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1ilLFe-0004pA-Ks for qemu-devel@nongnu.org; Sat, 28 Dec 2019 18:12:08 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1ilLFc-0005rM-A8 for qemu-devel@nongnu.org; Sat, 28 Dec 2019 18:12:06 -0500 Received: from mail-pj1-x1043.google.com ([2607:f8b0:4864:20::1043]:39356) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1ilLFc-0005n9-1W for qemu-devel@nongnu.org; Sat, 28 Dec 2019 18:12:04 -0500 Received: by mail-pj1-x1043.google.com with SMTP id t101so6556836pjb.4 for ; Sat, 28 Dec 2019 15:12:03 -0800 (PST) Received: from localhost.localdomain (194-223-58-9.tpgi.com.au. [194.223.58.9]) by smtp.gmail.com with ESMTPSA id c18sm21077186pfr.40.2019.12.28.15.12.00 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 28 Dec 2019 15:12:02 -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=T4aZfH0j8rWJ0+Q0fkO+IcRgVVxgh5qr/Mgu2wcc/FcwnLV3plk4fvFPlATOpP5Ymm zM+O+xd5S4168qALr+HHVpLoE5Rb2fMAKZAQU9RCza3I+8YHxAJJYosyJ66G+VkAPPQe NteJ1a3auw7yIeY+UVEvP6/2I8TtvT1zEsiEbS8S7p/y9GcO92IvlUMX+vkM3SWjdsbd sMKkfbPSFBgXf3i5DNGEmCMmmg0SdRRAj5KVEhHrxJUc91RRhxh1WCShMHoZqiC3F/cf unlwTku3WZj3EWpme9KAomdOXsn1kUAsR9SEUWAtpSj03WGwfeQRRq8OAG1XP0RMM5CU SAVA== 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=L9NtgOykYPByLz5gQUOP29loDfzxrEz5BaiTq7Xh+F1byBjEyheJgPm6nr/yNw8vxm i37kREwk9lPCMW8ybMJQ3lkxuFIS1YbADPAmA5ecXJndUMl8aPQASxs84pcByLfan/KF Ui0adZvpuroXK5nGPuasSogP8F8ySiI50U8BXrM09tlOwR+i/g3fCYAiJKfn51Y5MNJS Lmp/vN3knfRnBVbsZsmyCY8awu2fzraOYW/et1t69d9RgAyPhOe5vE0OUujsVMch3xnX M75I3zQsR8bSiZkPX+tnrQn3+1s6H4F+RahSl8pW5AxBSx55LUYMk2lkxO4kzuXvjq37 GUGg== X-Gm-Message-State: APjAAAVbfjb26B2fXrCk9ztQk2/FHfxeFw36JoRoqKb9bPqdC8Llv2sH eLfPI96TxsLBNGti3/aOinvUhawGx8E= X-Google-Smtp-Source: APXvYqz72gX4VJBdlWq6UUgFyDaCB8moTATgrzk6oz1CH1vKBy4gIb1ANdRlP28/trgyW3idft1sFQ== X-Received: by 2002:a17:902:b788:: with SMTP id e8mr61314544pls.1.1577574722611; Sat, 28 Dec 2019 15:12:02 -0800 (PST) From: Richard Henderson To: qemu-devel@nongnu.org Subject: [PATCH v3 10/29] cputlb: Move body of cpu_ldst_template.h out of line Date: Sun, 29 Dec 2019 10:11:05 +1100 Message-Id: <20191228231124.18307-11-richard.henderson@linaro.org> X-Mailer: git-send-email 2.20.1 In-Reply-To: <20191228231124.18307-1-richard.henderson@linaro.org> References: <20191228231124.18307-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::1043 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 Tested-by: Philippe Mathieu-Daud=C3=A9 --- 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 Fri May 10 12:48:19 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=1577575359; cv=none; d=zohomail.com; s=zohoarc; b=m5KJq5jGn29WpqC739CfgnV495his9WlDb7L8+YwH/F/Jv6wEVDkx0smz6gekBHAeBw4t1Qvx2C5ZSUccbJJH+DdwdYBxA0Osaa99eV6tgCOuxBaTa8orYk1BIZm6LJzPSzuMC6OYilbMF1nkOp3oiy8ZHp64bI/xIJQ2WkWqU4= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1577575359; 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=w1Tjfb9SeZwoP+jBqe2wdJ6MBodnhM7nlLGRuc9cKpc=; b=gNLN/cxw0LyfGuPxW5gs8Yy3OMPEGpOpKzf+dEdUZ32F5pliJa4ILgdCi245ZEsn+lo9DdDwQPyDvElaHlRZS6cLe+uomGZUV9NJTP7aAqopdgRCi72lozB2wroASQrOLIZxMmCInNC+V6y756O4iV5MHbiNfee+e9B31L/ha9I= 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 1577575359444229.7813472319192; Sat, 28 Dec 2019 15:22:39 -0800 (PST) Received: from localhost ([::1]:47380 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1ilLPq-00009r-CT for importer@patchew.org; Sat, 28 Dec 2019 18:22:38 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:40461) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1ilLFg-0004rn-9o for qemu-devel@nongnu.org; Sat, 28 Dec 2019 18:12:09 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1ilLFe-00067X-S5 for qemu-devel@nongnu.org; Sat, 28 Dec 2019 18:12:08 -0500 Received: from mail-pf1-x444.google.com ([2607:f8b0:4864:20::444]:42699) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1ilLFe-00062d-Kf for qemu-devel@nongnu.org; Sat, 28 Dec 2019 18:12:06 -0500 Received: by mail-pf1-x444.google.com with SMTP id 4so16523766pfz.9 for ; Sat, 28 Dec 2019 15:12:06 -0800 (PST) Received: from localhost.localdomain (194-223-58-9.tpgi.com.au. [194.223.58.9]) by smtp.gmail.com with ESMTPSA id c18sm21077186pfr.40.2019.12.28.15.12.03 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 28 Dec 2019 15:12:04 -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=w1Tjfb9SeZwoP+jBqe2wdJ6MBodnhM7nlLGRuc9cKpc=; b=XrU2WswTKopE2H/YsaObV1VEkPWJaFvc3EjTeZrF2NQqg/Ny9i7ovoBe6AhkSoF6s+ HZw4RuQjztwf7wvJoQoeHAx+MqlsXiGC4x5h1cSRLGGHf/29ABXdMIuzfT46men4kpr7 UqUGs2BtBU2xle1gvE79kkTYzaCbfgnUmj/fUr6V9gn/VDP4lNQgC0gk68QeqFclo0ho PnqH0JNmuNFgujM1Amne2+tQLCZvbJfPbr6V28gxg0SDnFkoloigLkHKelmIFbpi3Z6c Ns2actVIyuEbhkkJ0UdHweymqOVyNI3fx9vG6BYhkE9quTZqT+kZ9ec9AtRSNl1Q+weh 0efQ== 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=w1Tjfb9SeZwoP+jBqe2wdJ6MBodnhM7nlLGRuc9cKpc=; b=dhSyg5PMLpyZtNC81CUeVPLSuRrlLj5i9aQS3GYAEimKQLfiAgYep8lGjTHhtDyUV2 zWFxQQz78W7RoxAZFsxS5JE/6NXH3Ic7tPbxketyrBKl1dBpyBy3xvnsIhsuOX3+1TW/ GEO7p2zLDbM1nZhv1H0774yfDu1r+dymryykn7FwqvIl2H0b1W84GzCmusU1G7/uyNgi kD9DO5cbS38w9WPx3HHyfvnknlpNNkUvKeSqK4+IjDT8RBIpqyEpFz0QBPk4cJ6LmsJV Fk/ZcUFwSEy9p60qaM0zIV+tlGzFLWKlkp611j58e6QDu8hn6JVfNvOIUiex14m7G+Vi 7ddA== X-Gm-Message-State: APjAAAXtSP+MiUfexGBBqqnax0QZtME9Wb6kPfaYyoGARIpPpp+CaV77 3bsGEj17SjST1oeljEU4rAYSOXYXMgY= X-Google-Smtp-Source: APXvYqwsov8L8sQ2JwtxJaioF4TvjB7+efUBNBoeaAkOelRL5JiOi8zBGcdE0ghz1CFwZsqwk7nkxg== X-Received: by 2002:a63:696:: with SMTP id 144mr65402768pgg.260.1577574725329; Sat, 28 Dec 2019 15:12:05 -0800 (PST) From: Richard Henderson To: qemu-devel@nongnu.org Subject: [PATCH v3 11/29] translator: Use cpu_ld*_code instead of open-coding Date: Sun, 29 Dec 2019 10:11:06 +1100 Message-Id: <20191228231124.18307-12-richard.henderson@linaro.org> X-Mailer: git-send-email 2.20.1 In-Reply-To: <20191228231124.18307-1-richard.henderson@linaro.org> References: <20191228231124.18307-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::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: =?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) The DO_LOAD macros replicate the distinction already performed by the cpu_ldst.h functions. Use them. Reviewed-by: Alex Benn=C3=A9e Signed-off-by: Richard Henderson Tested-by: Philippe Mathieu-Daud=C3=A9 --- 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 Fri May 10 12:48:19 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=1577575491; cv=none; d=zohomail.com; s=zohoarc; b=UbI91B20yyP2DXPnLz5UxK5aL2P06aFIcrzxVvBBf0Kvx+1PdrUZwXEqRMS4Tw3KVYVAKC0a9iWf09I/rfv9bKM9vZG8VjhbUbLt8dev0NeI6rU9oDIFdzWHtcNOMJycOY3nF4vhXow9IxI117slS61gqrYO2c+JIQyK4f0YdyE= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1577575491; 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=OQXMJqtsrJdKKEA15pcNbe+dpXqSynJp6wuSo69Cwh5b+8UVHPKm5wwYfuLBMtafSwngBGp9biD4vIaPs4Ch9+V9kisuy0TwU6g3JUG8bW+3ZWzyy901TIhMQkK/MqeAZMs7vXT+rpMs6utjb/5x7dPDOpnCqtWbQt/L/bPZzFU= 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 1577575491545724.4603754690497; Sat, 28 Dec 2019 15:24:51 -0800 (PST) Received: from localhost ([::1]:47430 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1ilLRx-0003f1-UE for importer@patchew.org; Sat, 28 Dec 2019 18:24:49 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:40680) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1ilLFk-0004xX-2L for qemu-devel@nongnu.org; Sat, 28 Dec 2019 18:12:14 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1ilLFh-0006NT-P0 for qemu-devel@nongnu.org; Sat, 28 Dec 2019 18:12:11 -0500 Received: from mail-pl1-x643.google.com ([2607:f8b0:4864:20::643]:38956) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1ilLFh-0006Iu-GZ for qemu-devel@nongnu.org; Sat, 28 Dec 2019 18:12:09 -0500 Received: by mail-pl1-x643.google.com with SMTP id g6so10250982plp.6 for ; Sat, 28 Dec 2019 15:12:09 -0800 (PST) Received: from localhost.localdomain (194-223-58-9.tpgi.com.au. [194.223.58.9]) by smtp.gmail.com with ESMTPSA id c18sm21077186pfr.40.2019.12.28.15.12.05 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 28 Dec 2019 15:12:07 -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=Oaf0kdqG4XVtDaaAFhwY5L5HWLyy4FWjCsSpw5I0FVtXxt8cSr7XWd6qTg1nUKssAi /IRhTxO24/KQMLH44QAVeiDmhf/jH50vEfXiFNPpDUJxmhRVaVQ3fmR+mqczehZ7xBYN H7njpDtWVvjPOX57Y/t672jfLLAwimwanrTz1eEt1GTSiYk0SUKkVJ8X6tkF22UF23gA vESkn+ywIilYQokIB7hrHkGJQX2Y1CkZif1Gh8o7UClP7mEM8/0DO+nJXqjXqFlBcqik QW2WYXTmVgBD3AE+gzOVy7sgTpNwgZWiGqFW1Ga3UnXr+zE80n9LKJbdQ2BMhw/yp56V IJWA== 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=OYNt9/0838z/NjbxKrzJPsQ1IjFE+KHpD7iaTN1byL6HLPNVdhDwNiI7Cf7CxK9b7+ LotmGhlL5eLdYp20e9NfpLgtUxjbknDckTLCO2HFpyTCcGl94b1x7FnduYaL4Km79iOB xcMaX2NNRHETeXYUMXNoXw2gItPCxi1qqV2CU52irg4RqqjS16dX1BcZzJoBm4SQSgE6 UP6jPDt9pvcV0YUKGr/L/wrfYETjMAu1CvAqxI4Zukbch+KgbIjo99wUeiVyZL6xSqZs hYlTDRfmDfYmFPkyGYTgSwJ7bv2gBnGMMatMKL+BKO5RGhn+bmFQ66M9pmuv/fIM4nJD sEvg== X-Gm-Message-State: APjAAAV2V8cuZa1/a+8vKG+PQZBuciR4hTdfzMGE2umR2xJMmhYgnvAU peUnnivQNEzE9tnshekwj4tTVp0YobY= X-Google-Smtp-Source: APXvYqwW7OvoUH+N+q2jqPhkZlGJeOMgzcySfz2H5JihbreL92SEHVAJQuyygrCLqzaD8k5V0OUacA== X-Received: by 2002:a17:902:be0e:: with SMTP id r14mr3425741pls.194.1577574728086; Sat, 28 Dec 2019 15:12:08 -0800 (PST) From: Richard Henderson To: qemu-devel@nongnu.org Subject: [PATCH v3 12/29] cputlb: Rename helper_ret_ld*_cmmu to cpu_ld*_code Date: Sun, 29 Dec 2019 10:11:07 +1100 Message-Id: <20191228231124.18307-13-richard.henderson@linaro.org> X-Mailer: git-send-email 2.20.1 In-Reply-To: <20191228231124.18307-1-richard.henderson@linaro.org> References: <20191228231124.18307-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 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 Tested-by: Philippe Mathieu-Daud=C3=A9 --- 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 Fri May 10 12:48:19 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=1577575467; cv=none; d=zohomail.com; s=zohoarc; b=BvoYTiITEIx2NoaoP8TdHWlkfe22YFTdjmJqrNiVtb0R7dHFX2gwLWuSiw6LGS7UKSm06755iKV5QWn1AbQnYRgtkGAWPKA2I8bJ2iDBEW7JDC4GMowPzSb9JmAxlgxfe7Txob1cCOqxXPxgMaynPdIJ8goODCjfGctQL3VWa5s= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1577575467; 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=7Wu0YJ8pFORBgxAB5PtKj+diTl2fTr8B/A84qgNh4bE=; b=a8smN1sDVmQruHiJMiUEuMmBef/cov2x9tkNJQlojM/EogQMyBBCFZ8Z2FqTKgV3NMpfcfXmaVmf44XQj1msrVI3GOMzXanfhgvW7N0cJCi7gs1ZQI+c6QjUotqRFc/GR725cVg2QLsKAPqbOyrzs6NJNG5mdOkdvWBBr22Yswg= 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 1577575467968931.5438593867377; Sat, 28 Dec 2019 15:24:27 -0800 (PST) Received: from localhost ([::1]:47422 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1ilLRa-00034R-Hv for importer@patchew.org; Sat, 28 Dec 2019 18:24:26 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:40865) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1ilLFm-00053E-OZ for qemu-devel@nongnu.org; Sat, 28 Dec 2019 18:12:17 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1ilLFk-0006ba-Ba for qemu-devel@nongnu.org; Sat, 28 Dec 2019 18:12:14 -0500 Received: from mail-pf1-x443.google.com ([2607:f8b0:4864:20::443]:36805) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1ilLFk-0006Xs-2p for qemu-devel@nongnu.org; Sat, 28 Dec 2019 18:12:12 -0500 Received: by mail-pf1-x443.google.com with SMTP id x184so16537868pfb.3 for ; Sat, 28 Dec 2019 15:12:12 -0800 (PST) Received: from localhost.localdomain (194-223-58-9.tpgi.com.au. [194.223.58.9]) by smtp.gmail.com with ESMTPSA id c18sm21077186pfr.40.2019.12.28.15.12.08 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 28 Dec 2019 15:12:09 -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=7Wu0YJ8pFORBgxAB5PtKj+diTl2fTr8B/A84qgNh4bE=; b=RocGE5HBRzwbbvihI4crLz6cA0bFgp20djkyoO0RnJelLuLjzp3exS3kJPcXXzKukR 3ZBzbLbXzHRrxcoBD2kg9Iwh4/FV6snB106YnUo880txOHarHT7HK/kTTemkD7lJ2kSL 1cWL3YDuWQR2z4d4qWcmv3PVUL23faw2lTK8Mr06lljR6mUeJt/1SE2yHmFS4ur/XxZo dyUL3zUTvW28eO083sArRlgnjBj42t+wb5rRaasfnYPw/hNHm+JHrKbYFpjZWvn9TMsW XFXscXi2KabKVw/5ScL/R7fLm2uDlnicf+sDg+O3DQP5y12oVwcNRg/6Q0+Z+DgBNW9+ rdtA== 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=7Wu0YJ8pFORBgxAB5PtKj+diTl2fTr8B/A84qgNh4bE=; b=lyHwZjsN4E8aR1ZesJzq7Az/g3bE6UATRGtVC7ckZz7FVz5AmXvh/5PcBB1gL5bH77 bzm5wRSgfoVMvVxX4iIMGvMjeNYMmWhEFUIgeRkH6+gAHhExlm+Ml/Hh78ekx/TQnHIg dZsNCtAqrPOA++EzDnxSem4hDYh8KdBn6AXlIpajyieoUmTsl59lTsAnTPiwOxRvtXMT ibc4f9Sq084F/GoZ6X7XzQ1o5gZoHpkbwER0+rPwg0CHrT+cjs9taSUoElLM8Tv1OeYg 2eT1yNvnbx7v334fCELDCWROOtQ0lk64jjuf5W7wwOtYJfvebf5mHufk5FQ1CKisclKL d6Zg== X-Gm-Message-State: APjAAAUGbzz00o+2sHcynn/k8VCmzmJ7A1eh6xzR9vzP1+iXXRr3KtYJ YuihFO+C4dhnxXM6H2b46v+TEiwgmpM= X-Google-Smtp-Source: APXvYqxE77CtOrxG5wH4WA4Cdh0gqN5VxBf3fZTg1yUSrBKQSJpa0uhtMeLhhmx0BFglyl66VSFJkA== X-Received: by 2002:a63:bc01:: with SMTP id q1mr66111457pge.442.1577574730592; Sat, 28 Dec 2019 15:12:10 -0800 (PST) From: Richard Henderson To: qemu-devel@nongnu.org Subject: [PATCH v3 13/29] cputlb: Provide cpu_(ld, st}*_mmuidx_ra for user-only Date: Sun, 29 Dec 2019 10:11:08 +1100 Message-Id: <20191228231124.18307-14-richard.henderson@linaro.org> X-Mailer: git-send-email 2.20.1 In-Reply-To: <20191228231124.18307-1-richard.henderson@linaro.org> References: <20191228231124.18307-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::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: =?UTF-8?q?Alex=20Benn=C3=A9e?= Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: fail (Header signature does not verify) This finishes the new interface began with the previous patch. Document the interface and deprecate MMU_MODE_SUFFIX. Reviewed-by: Alex Benn=C3=A9e Signed-off-by: Richard Henderson Reviewed-by: Aleksandar Markovic Tested-by: Philippe Mathieu-Daud=C3=A9 --- 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 Fri May 10 12:48:19 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=1577575624; cv=none; d=zohomail.com; s=zohoarc; b=EsKtZm7xLUd14dLbMqZW8BCjRKlYWwYlWoSn3kwg80ZYzwdX8MLdL+WpsIa8oKi0U+B3AJjIM48L/l4mNqPkSDCnV/pKXgpxf+bwiT/z7C2XHDP2V5vxkR6aD1VHwTaQ6CY0vPSfiuAcOO6p4Iub+oDR389jXk0KMEk7JQ01Nt0= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1577575624; 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=ldCBPIWc8mhUIrG4FNbVFhLO4ifRLpZg7PBUswXT7Cc=; b=dv+yWqvcTzyPaZGQDYkkUPAAR5dVU2NB4BzHLVkClnqcl/fmSn66+O81RcDjhn9Ymr8pagiKFcZ34HprjabZ9BU00y7ojKuRbCk9fYGTq7NF+IAOk/n94K3VH8XUSwf9XRrBDRptBZhlZvM9AlRps3yJpV3k/hwYB3y7WHd8RzA= 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 1577575624472325.0416886726945; Sat, 28 Dec 2019 15:27:04 -0800 (PST) Received: from localhost ([::1]:47484 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1ilLU7-000728-AS for importer@patchew.org; Sat, 28 Dec 2019 18:27:03 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:40969) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1ilLFo-00055t-Dw for qemu-devel@nongnu.org; Sat, 28 Dec 2019 18:12:17 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1ilLFn-0006rB-90 for qemu-devel@nongnu.org; Sat, 28 Dec 2019 18:12:16 -0500 Received: from mail-pj1-x1042.google.com ([2607:f8b0:4864:20::1042]:38755) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1ilLFn-0006mv-2b for qemu-devel@nongnu.org; Sat, 28 Dec 2019 18:12:15 -0500 Received: by mail-pj1-x1042.google.com with SMTP id l35so6556610pje.3 for ; Sat, 28 Dec 2019 15:12:15 -0800 (PST) Received: from localhost.localdomain (194-223-58-9.tpgi.com.au. [194.223.58.9]) by smtp.gmail.com with ESMTPSA id c18sm21077186pfr.40.2019.12.28.15.12.10 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 28 Dec 2019 15: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=ldCBPIWc8mhUIrG4FNbVFhLO4ifRLpZg7PBUswXT7Cc=; b=rAvUPbulxQ1IDCZxEo3CsHXYgQ0eMBdCYt0KnanZHmD3Qkxx+j95lNQZYXNGzOw8ts A92wqy972KKkv2WNMm9FzR3ncl042lClEB/E6jfAvnKy4qTkhd1K3tWe4vHILc/5/Lgk PYGuCq6iQkABixfdq4k3lU3gmXOSQ7au3UuQ5QviH7pkZUX+RfA5EefT8TDUTCTmEWHn FAlpv7aAptTbCW9u91Vs/nabU0HVMLUIZypvY7qRV6+JVXRp3XQUVV3B/ppi9C2Mr6c9 AtRRsS2i6mic34GpTB5SfcS2cGRmsFDgzmZLWVcuS5/jmHOwAVaxlEF+UG1Yt/XE+5dt ooWQ== 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=ldCBPIWc8mhUIrG4FNbVFhLO4ifRLpZg7PBUswXT7Cc=; b=dAT1SkMagCkCAMog6lYgMgYUDIMvxnVtRiZjWuWbxz9LrH6f/GhMsv1te7jUkqWxUT 1BlnBMCpzhbWjuc+X3Ct4QmpnkyNEXYNtqszJW27IGPCUZ3M+vowJwAvcJsqMJOfnHLd cIi9ahpvfizvv6xRxxMSr1uRvXeA+eaei+1SEasgAbYB5TiAEQ9PdQ26yOEN0LfPMZ8P aNe6R0Uh5a4S95+i6dczsf14V2Tvw6ltIegI55Y9eUqMQHWY/LWNQGnrUfcaeNB/SXWR 5WxtHlOO9MFLtjZi9rhde2VzM47sK5xwkhhoeCwwtXFX7BocFj0MiMk2jYB4cZBdhz3P FNPw== X-Gm-Message-State: APjAAAVmVBWJ5JLguAo5LiwJWZIOFlnM0wJ0espYL0UgmQb6DyxBWk+x PferaXRAgSWAvdu85vfpNWjD7MdVYzM= X-Google-Smtp-Source: APXvYqwXorNy9mnmL6/0PrXsVT63hG8FgJhvHuRDxhbyRySDeDP72YtVKjr9WUGewKF1gpsebYvNKQ== X-Received: by 2002:a17:90a:c708:: with SMTP id o8mr36390626pjt.104.1577574733752; Sat, 28 Dec 2019 15:12:13 -0800 (PST) From: Richard Henderson To: qemu-devel@nongnu.org Subject: [PATCH v3 14/29] target/i386: Use cpu_*_mmuidx_ra instead of templates Date: Sun, 29 Dec 2019 10:11:09 +1100 Message-Id: <20191228231124.18307-15-richard.henderson@linaro.org> X-Mailer: git-send-email 2.20.1 In-Reply-To: <20191228231124.18307-1-richard.henderson@linaro.org> References: <20191228231124.18307-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::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: Paolo Bonzini , =?UTF-8?q?Alex=20Benn=C3=A9e?= , Eduardo Habkost Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: fail (Header signature does not verify) Do not use exec/cpu_ldst_{,useronly_}template.h directly, but instead use the functional interface. Cc: Eduardo Habkost Acked-by: Paolo Bonzini Reviewed-by: Alex Benn=C3=A9e Signed-off-by: Richard Henderson Tested-by: Philippe Mathieu-Daud=C3=A9 --- 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 Fri May 10 12:48:19 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=1577575350; cv=none; d=zohomail.com; s=zohoarc; b=Xm9ABu/oys32T1e1GMYJIOT+kbmDfv0rE6kUDGYi/XvJ1qSbNRffqNP6QozXz3PTpD4ZxtiJRcZqg86N1WNEfEDl7M2Hi0xzpuIaO7IdPCMHTX40SxUCKKH7b3sN9AqscgfbACYY/S+g66lFRDflSbR7B46agzOSaR1XoVc4o4U= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1577575350; 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=ECuZS7xLaZaQnVhvvqkXHoqw1lSzDUCLtHyHOIktlBg=; b=NCkPMye9S9bsjTPKCsThq08ZfA8GfhNAlqGaLMlIHS/6oPYgJMFYAZnVqbzhA6PPfaulIfSu+qKc9/DCVi+S9Crf+6jLKFvhFf10uatM7+uwcBCQ2B+aOVHWpglwG+SoEvs0t4ytyCo7DJVXW++taSs/iWdNgJI6KeS7RsD3AVc= 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 1577575350934726.9312883704338; Sat, 28 Dec 2019 15:22:30 -0800 (PST) Received: from localhost ([::1]:47376 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1ilLPh-0008Pm-FK for importer@patchew.org; Sat, 28 Dec 2019 18:22:29 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:41225) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1ilLFs-0005CU-EX for qemu-devel@nongnu.org; Sat, 28 Dec 2019 18:12:22 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1ilLFp-00074j-Tt for qemu-devel@nongnu.org; Sat, 28 Dec 2019 18:12:20 -0500 Received: from mail-pj1-x1042.google.com ([2607:f8b0:4864:20::1042]:39357) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1ilLFp-00071D-KY for qemu-devel@nongnu.org; Sat, 28 Dec 2019 18:12:17 -0500 Received: by mail-pj1-x1042.google.com with SMTP id t101so6557087pjb.4 for ; Sat, 28 Dec 2019 15:12:17 -0800 (PST) Received: from localhost.localdomain (194-223-58-9.tpgi.com.au. [194.223.58.9]) by smtp.gmail.com with ESMTPSA id c18sm21077186pfr.40.2019.12.28.15.12.14 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 28 Dec 2019 15: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=ECuZS7xLaZaQnVhvvqkXHoqw1lSzDUCLtHyHOIktlBg=; b=UnWhZeIraHVPF9Y9iVbLTWkdBx3yt5ktGeB9nJOEVVzQYPgM5y1lVQmcKky5VU6tzw umtFlOgpv56tuhcpN+HUDgcEnQd+u3Ppw+rf30olNnQguUnL/2DWch10y1p9jWV4j0qm xwzhRd/78G7+mm1LhLmEPIzRsbl2AATpwH+3t6jfsB/TQCk7lJHkygmT3Mg5LS3axgrJ d6GVGrcSH7IYNP1FnAKdSWj4l5R0nRgEtauR4JS+fpXGO5rlEUs3Kobx184nFoas2+MP ZhohZEIAzbCmumPzQqG1TO5xTwVtpdv4T/UsUz3tmqvN3Lsr48fbQiNHENZMlrSxL4zY U3iQ== 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=ECuZS7xLaZaQnVhvvqkXHoqw1lSzDUCLtHyHOIktlBg=; b=SXaa02biirb9yV+7nucZFX6UHJ4u1OhKi6dq2w6H5gf/YrIrPW++tupXCdSvg622P/ tJSfO8KMrb5MRckV8n5q5B6CmHJHAotpIxJ5ozNHzQZeWJDvIWIjO8H38sVYxoaD9Qmm aCcfffnK0WwKveP+woYwJz9b1+szAnW6h8GFJFyHISHp0ZP7iPxDf/FIBE2eirK12asu I3XXr1IRzq0Vei3V59jLlTbOUPgHrMc0zBS50yWUSi1EpsmHhUuPVFQKAU+RQ67wdE+f hZF92qDt+TZtb2rXjJJpihp2jwd/Agrg3kkPPGlXjOZZHYEeSkl0ReDsqwozxZfEYOLJ nOhQ== X-Gm-Message-State: APjAAAWb7jIdTOKYQ69HoZbEl4lKSKqAti1Z4fv3HRVSU096uUUyro4S WQlO9uD5TnQul9IklSVKj2DpvXJHwJA= X-Google-Smtp-Source: APXvYqxrzmL6s6yQlFMof0c8u0ndgdyVeOAoAtWEtmeKQolrfpJvY/4oEDbtwReZe0ACl1QGPBzQSQ== X-Received: by 2002:a17:90a:d682:: with SMTP id x2mr35879865pju.44.1577574736292; Sat, 28 Dec 2019 15:12:16 -0800 (PST) From: Richard Henderson To: qemu-devel@nongnu.org Subject: [PATCH v3 15/29] cputlb: Expand cpu_ldst_useronly_template.h in user-exec.c Date: Sun, 29 Dec 2019 10:11:10 +1100 Message-Id: <20191228231124.18307-16-richard.henderson@linaro.org> X-Mailer: git-send-email 2.20.1 In-Reply-To: <20191228231124.18307-1-richard.henderson@linaro.org> References: <20191228231124.18307-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::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: =?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) 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. Reviewed-by: Alex Benn=C3=A9e Signed-off-by: Richard Henderson Tested-by: Philippe Mathieu-Daud=C3=A9 --- 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 Fri May 10 12:48:19 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=1577575191; cv=none; d=zohomail.com; s=zohoarc; b=DbUFUGw/kMaNeBmPSlsr4n5T7o4oRUOXGIZQGi+2UFL5nyUX6DnzhzSdihIZbJGjI5XECSR3ktXgVTi/5QTd6gM+EZpx3Hd0NDrfKzRIEMHR2szM0w1dHG1YkWboOTPohBX1jTFGugt5V+e0nBwFZuTqYXuJ6sY3tJLWO3jMf4E= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1577575191; 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=JNBmm1sV0HQlIuj50EfP42qQQdAOa/hMzuJfrSMg+C0=; b=LPuCQEvZ2xcuJfFgGcStCEr2AApm8CiJfmmkoMXSphovXDuyqLTgOn/yCrJaUgMZDdGn/07b3JChSo2VLCoJ6NHsGN1S7z8dEyvbwxq4Mpd/Zgep20Sl2DQQEL7jsfjJ5OSIicynsYkQYpZkjFycSxIGFGl87f4b7bDqf+r4nzA= 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 1577575191153862.1542547653419; Sat, 28 Dec 2019 15:19:51 -0800 (PST) Received: from localhost ([::1]:47314 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1ilLN7-0004t6-Km for importer@patchew.org; Sat, 28 Dec 2019 18:19:49 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:41318) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1ilLFt-0005Ea-Qi for qemu-devel@nongnu.org; Sat, 28 Dec 2019 18:12:22 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1ilLFs-0007Jn-NT for qemu-devel@nongnu.org; Sat, 28 Dec 2019 18:12:21 -0500 Received: from mail-pf1-x443.google.com ([2607:f8b0:4864:20::443]:46561) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1ilLFs-0007Fz-He for qemu-devel@nongnu.org; Sat, 28 Dec 2019 18:12:20 -0500 Received: by mail-pf1-x443.google.com with SMTP id n9so8658348pff.13 for ; Sat, 28 Dec 2019 15:12:20 -0800 (PST) Received: from localhost.localdomain (194-223-58-9.tpgi.com.au. [194.223.58.9]) by smtp.gmail.com with ESMTPSA id c18sm21077186pfr.40.2019.12.28.15.12.16 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 28 Dec 2019 15: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=JNBmm1sV0HQlIuj50EfP42qQQdAOa/hMzuJfrSMg+C0=; b=Q0KV8V8GTe3jO+5NY9YacbGc1L5vM9HTs4TL+GzeF4vIJvT1ImevWNJWdjfkVzfEU1 BM+Y5Ohq63A2hH+2L+4jN3ekDFAk3R6MM/JHcUhoXp/Z9qb+f79+Qg5cQsNaM/4V6PXK 2ibKEtgs5BlecBC97veUkCCtzMK15IfqTM5F7tIV+Mgcbfe3puXYDWClYWW8QsTMnKTY XvZjo73cKQEB22bdZ47hPLpqU066vbOZsNk7Xf2ni5lqqhRItBlZ2/cRDKxVmURw+lN5 IHu1pt6asXNqr4yLJIaAnaYyukr10Edd4T69m6Y5O0XBWejC7rlk5dZztKYKTru6pHM0 E37A== 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=JNBmm1sV0HQlIuj50EfP42qQQdAOa/hMzuJfrSMg+C0=; b=i76irJ3mMkZLu5/f/icyDbbxe/NUPYOLmlAL9GiQcjHzT1tWCbmf4EGacToFMla+tz WXg/AUIvCOteKTqTb7YqgFGuelnSEqvATkCN9oMfQ7SKscIlcdBlV+j/fAHTBAs8Jbge +wTuwUWv2aBf9CEBqPWMQ2J5KaOtz1t6majk/XzLXZ4/EASaeQucJgneVKvisLUX6jQh mzMPWO5qz/L0NVH2+KSN8kym64k7sU472S4T32UJssoSzp+QCSzxGC3PmI/246q4QxTY G2ptlROnRK/rIgo6ybO/yFZEsT5doDUTwInwklRnMQl46ctXy6mQusHaVW4+lnua7cqq DSeQ== X-Gm-Message-State: APjAAAUFskg3Bq1pcERCJiHzOUa8v/ws/WHHs+XalikvJGB4Yvm43wh+ 8ea9v+fsowcCTzUUtJd4rA0/RKxay9g= X-Google-Smtp-Source: APXvYqxDc62B9kLDxiCPgQrEtgJLV0lJilOX8wPPQ5RBXaNWBBWAXprE2ICSAEJw8Wj3JplQ6s6hag== X-Received: by 2002:a63:4e0e:: with SMTP id c14mr62645838pgb.237.1577574739337; Sat, 28 Dec 2019 15:12:19 -0800 (PST) From: Richard Henderson To: qemu-devel@nongnu.org Subject: [PATCH v3 16/29] target/nios2: Remove MMU_MODE{0,1}_SUFFIX Date: Sun, 29 Dec 2019 10:11:11 +1100 Message-Id: <20191228231124.18307-17-richard.henderson@linaro.org> X-Mailer: git-send-email 2.20.1 In-Reply-To: <20191228231124.18307-1-richard.henderson@linaro.org> References: <20191228231124.18307-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::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: Marek Vasut , Chris Wulff , =?UTF-8?q?Alex=20Benn=C3=A9e?= Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: fail (Header signature does not verify) The functions generated by these macros are unused. Cc: Chris Wulff Cc: Marek Vasut Reviewed-by: Alex Benn=C3=A9e Signed-off-by: Richard Henderson Tested-by: Philippe Mathieu-Daud=C3=A9 --- 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 Fri May 10 12:48:19 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=1577575760; cv=none; d=zohomail.com; s=zohoarc; b=N+Ipy4EEOLjAy44rin8Flyeb3KwqBIBVJI3DIX0Fldo1BvcSWWb8JuNWoc7gbBfClak50v030wdQhQKkcmy80d2cMLwHwqqjDgI3d2fIV9PT4MHtmhldcyGdJP8N/7a8GYTFgTJBwUIyoqCpPT6wBZjEDl5Bk9LtRwPx5ICPDH4= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1577575760; 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=AQUbSMGriz8m3G7gAjD+hihq1leqiu0aK6HEuqeV1mk=; b=SR+HNj+vT2Fi4cUajpFzws9wm3VnG+FqvyM6Jh4mIh+KDzPxM8hJnNnpSgrHdmgRE93+uwl69rFX3ebop7zUh4y562SRksbjo6dNBcTaRO5NglTybRLtzOofE0f1HdJHCkn//j7XccZCge/uSDQ9BeajWX1Zf+gV4iaL3GTGcxg= 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 1577575760337301.2910257199279; Sat, 28 Dec 2019 15:29:20 -0800 (PST) Received: from localhost ([::1]:47520 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1ilLWJ-0001aK-9j for importer@patchew.org; Sat, 28 Dec 2019 18:29:19 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:41479) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1ilLFw-0005IC-6a for qemu-devel@nongnu.org; Sat, 28 Dec 2019 18:12:25 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1ilLFv-0007XF-6C for qemu-devel@nongnu.org; Sat, 28 Dec 2019 18:12:24 -0500 Received: from mail-pg1-x543.google.com ([2607:f8b0:4864:20::543]:34793) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1ilLFu-0007TO-W0 for qemu-devel@nongnu.org; Sat, 28 Dec 2019 18:12:23 -0500 Received: by mail-pg1-x543.google.com with SMTP id r11so16286385pgf.1 for ; Sat, 28 Dec 2019 15:12:22 -0800 (PST) Received: from localhost.localdomain (194-223-58-9.tpgi.com.au. [194.223.58.9]) by smtp.gmail.com with ESMTPSA id c18sm21077186pfr.40.2019.12.28.15.12.19 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 28 Dec 2019 15:12:21 -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=AQUbSMGriz8m3G7gAjD+hihq1leqiu0aK6HEuqeV1mk=; b=tZ3JmEQr/BYenwK6UKlj//RD2Nm3xW1m03v1iQDuDOtKloDT4vGhYyti2Uk3gQZaDj 734yVM404GJGVxz+HusUH/LU7QLgWfylLtTVofb70VibS1TDAtbLsnwl9EMZamEP5Lga ETUacQ9+BSpv520g58AF4bti9sowLLiO8O4ySPjsXuluOSMthnxipW5BG7XbNkfgeXRF WaF7zqRaDVLSjZ2+t91TG0p8laWFWf8DNO0dALA+6c5Rmg2kVjFocJmb/ZW7deiEpHFI wX2hfkH8+/wNaWYEKAkNysXiyeoKXIgdm1wciqed8v27GIM7q4nCvmaOJmhdO5E0bRvi Mgsg== 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=AQUbSMGriz8m3G7gAjD+hihq1leqiu0aK6HEuqeV1mk=; b=OYjZ7nH5eTElQqCu17jew+jUANq7+jOWnJbJkwLhqrRRT69y2DVRk5S+UiVk1rKEDu /HJpTNurSIpL+6JYLB6jwBCBk++s14CESTzYicZJ2NYBopKVDxpjfI/PabNp965JcmPP cw4ZbHLU1eRrxt8lbBZNwFgC6OAYPl04VkfF+Q2Bk/jfANInMiarWGv8HbfuR++gJL3K 2EzuyFoKqIfzoXlpmuZ84so9fikzGxJDsOUL71LToky/9ThETfQR423Xdnq/yRe90oRW WUoSAS3+BymJkLNh0uAqbZU0KGpbv8tEr9L0NMwPXqjpaW+2hv7q6x1Zt0tpsQkm/0pp 8JIA== X-Gm-Message-State: APjAAAU7Y5Xwcem0hQ1iReicgE/IrtIsc0JF8a8g8Fwu8CD/kJp1gW+/ 8n6j7eUwVCvgFVK3GTE0M5Vc2r/qbMw= X-Google-Smtp-Source: APXvYqzo+6/sD3iiixf5J/POGeavB5CT9afGND5e2Uxqrk5l5DvSa1kLF+N8XGGMl0rwuoQHT2soaA== X-Received: by 2002:a63:6c82:: with SMTP id h124mr62496782pgc.328.1577574741794; Sat, 28 Dec 2019 15:12:21 -0800 (PST) From: Richard Henderson To: qemu-devel@nongnu.org Subject: [PATCH v3 17/29] target/alpha: Remove MMU_MODE{0,1}_SUFFIX Date: Sun, 29 Dec 2019 10:11:12 +1100 Message-Id: <20191228231124.18307-18-richard.henderson@linaro.org> X-Mailer: git-send-email 2.20.1 In-Reply-To: <20191228231124.18307-1-richard.henderson@linaro.org> References: <20191228231124.18307-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::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: =?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) The functions generated by these macros are unused. Reviewed-by: Alex Benn=C3=A9e Signed-off-by: Richard Henderson Tested-by: Philippe Mathieu-Daud=C3=A9 --- 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 Fri May 10 12:48:19 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=1577575227; cv=none; d=zohomail.com; s=zohoarc; b=GqU8ZJcjCAeJOcQRISRbsySbW/1WNmXSJHuRjyir8q5qilPwGy5Icvx10zuUrgwaHi/4QYEwvhEYhzyPmt86aIbEMl6t1zu3d89wWmbNnomUDEsq5s1xbbbofHcqcYJZ+D66o+vMBQruTtOW+wIiI110CbpeMI2NpKHV9PqsbsI= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1577575227; 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=RE7ec3tQf69S6u/1sbXcwZ3prYFhHBLumgiHfSGx76I=; b=ILQChbO8M+X+kpstG8e9dQzaImkrb3oQ+laqHrHLFqRsVHbVb0o6rjY7IsNbj+481ALy3HLDYhDgOP9di4dFQfAZwAeog3Cfo4eVZvhwrnNTyMVvgpQesmIKaCxaLHWEfDCwSEOTmXuX5K1FM9ce8bwzpp/y0tC5mgC6AU1nGA0= 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 1577575227736996.3007066397454; Sat, 28 Dec 2019 15:20:27 -0800 (PST) Received: from localhost ([::1]:47322 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1ilLNi-0005cQ-IH for importer@patchew.org; Sat, 28 Dec 2019 18:20:26 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:41673) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1ilLFy-0005Md-Tn for qemu-devel@nongnu.org; Sat, 28 Dec 2019 18:12:30 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1ilLFx-0007nI-Tq for qemu-devel@nongnu.org; Sat, 28 Dec 2019 18:12:26 -0500 Received: from mail-pl1-x643.google.com ([2607:f8b0:4864:20::643]:37380) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1ilLFx-0007js-Nw for qemu-devel@nongnu.org; Sat, 28 Dec 2019 18:12:25 -0500 Received: by mail-pl1-x643.google.com with SMTP id c23so13202330plz.4 for ; Sat, 28 Dec 2019 15:12:25 -0800 (PST) Received: from localhost.localdomain (194-223-58-9.tpgi.com.au. [194.223.58.9]) by smtp.gmail.com with ESMTPSA id c18sm21077186pfr.40.2019.12.28.15.12.22 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 28 Dec 2019 15:12:23 -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=RE7ec3tQf69S6u/1sbXcwZ3prYFhHBLumgiHfSGx76I=; b=j2nNpB8PfmKj9UkpQ5d/F6lWTCiErIHYw3MpigY+9/gkCuFxZpx3m25mcZw7nGuyf+ i04ugRzul7E/+ot+1HPjdKCTGSY1Buefi+ujTDDH/HXatZcT2DQzfwRpvLVpiW+fDrPF MpkgrmtmWGHc5p4dadeXf/CCCa55y5Ck1/g05Td03jhcWkHZkBr5ae1cXeQDUQeTuu7d 1G8D5H4gp0CBXaNwvfmqGcXU0EKZBILc2lkJIi7uxjNdj/BI6/gwtJDvh4xsHnHx5E79 UDMsLlEverpZZqKqzEoUmSLrR/4qcq7bmAJe7wxakgFM02Q3SA+LqUK5errkSl8m48uy Y6hg== 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=RE7ec3tQf69S6u/1sbXcwZ3prYFhHBLumgiHfSGx76I=; b=HejH0oO8ielsNxudES93m5HXQtmRqQTI/ZscyaS+hOkYADshBpwwSSh66T9qaHxXwk PSUXlB1wv0J1Qbpsu0Sz9M7IhmoHJY6+vsN/vk9/seTTDit19vOXcBuaRi5swH0F8YG/ 0QflWSVJHJg2AHEzY+d3ZCwyxSNfqDdUKhSeUHTjh90cEwEuov3R+xwL6vdaCroEf+y2 qnFP6DUpknUKjZjTPguRgOcpFlEaDP3QBjjqq1Vv17zBjyNkGocuMvvDuJZOpqMp2vcK OMAxN3gqlUqV5z4pXTeTArWJElqnFROlLuUnrnHdWqq44Y7Rk+4xExqNmRQTVyxGC/LV Fe3w== X-Gm-Message-State: APjAAAXM+ENNC2eeaFfgILLO3C4MoBZAaGy0K8cOzCnfXYQN9IImJp/1 k9Xpv8JMroM1Vc3I+hxKOMWO5wAsBDo= X-Google-Smtp-Source: APXvYqz0dO0b76S6bdAymrHQJRxT+GU6X564caV0Qk73ePHtQYZl77I/eVD+1VOsWk+apjJTuYXGaw== X-Received: by 2002:a17:90a:da01:: with SMTP id e1mr36375757pjv.29.1577574744553; Sat, 28 Dec 2019 15:12:24 -0800 (PST) From: Richard Henderson To: qemu-devel@nongnu.org Subject: [PATCH v3 18/29] target/cris: Remove MMU_MODE{0,1}_SUFFIX Date: Sun, 29 Dec 2019 10:11:13 +1100 Message-Id: <20191228231124.18307-19-richard.henderson@linaro.org> X-Mailer: git-send-email 2.20.1 In-Reply-To: <20191228231124.18307-1-richard.henderson@linaro.org> References: <20191228231124.18307-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: "Edgar E . Iglesias" , =?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) The functions generated by these macros are unused. Cc: Edgar E. Iglesias Reviewed-by: Alex Benn=C3=A9e Signed-off-by: Richard Henderson Tested-by: Philippe Mathieu-Daud=C3=A9 --- 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 Fri May 10 12:48:19 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=1577575876; cv=none; d=zohomail.com; s=zohoarc; b=PDTtInLPAujsNIl23iZXhHBDwKZV/2apW35zlueNpwjIsFCHwPAGj/+08mGFbJoblICthJFjVIq7xVpFYNZkslNAcpPME5MKR5w2xZSSR5oNmXjVvyDjCkfYwq0ct2TdhXnmBwGziXOFUMTJoobcsLbTAfAUeUuI58zZl8jvYTc= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1577575876; 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=s2sFyKQc0KML7nsHeLOyCy6ccvVe4EAb+zDftLMFs6Y=; b=QWkdTJ20HR5M1i8ILC7S0EiPCTjZgOqPeSXSCEUC8JE9VZjpyuGxAuITDH8XMeRF8kClqAaXQK2fLV7aSfAgsEeNAeISkEUcZD8b1q7mGH7U6OI6BkDieVmEhUE4L6H1zL85FNbZU1ZcWxclpwEu7SU5yoIir/HNT36J10lWQ6Q= 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 1577575876970734.2497534031207; Sat, 28 Dec 2019 15:31:16 -0800 (PST) Received: from localhost ([::1]:47572 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1ilLYB-0004Li-M4 for importer@patchew.org; Sat, 28 Dec 2019 18:31:15 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:41864) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1ilLG2-0005Rk-1Z for qemu-devel@nongnu.org; Sat, 28 Dec 2019 18:12:30 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1ilLG1-000857-15 for qemu-devel@nongnu.org; Sat, 28 Dec 2019 18:12:29 -0500 Received: from mail-pl1-x642.google.com ([2607:f8b0:4864:20::642]:33414) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1ilLG0-00081V-Qn for qemu-devel@nongnu.org; Sat, 28 Dec 2019 18:12:28 -0500 Received: by mail-pl1-x642.google.com with SMTP id c13so13208314pls.0 for ; Sat, 28 Dec 2019 15:12:28 -0800 (PST) Received: from localhost.localdomain (194-223-58-9.tpgi.com.au. [194.223.58.9]) by smtp.gmail.com with ESMTPSA id c18sm21077186pfr.40.2019.12.28.15.12.24 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 28 Dec 2019 15: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=s2sFyKQc0KML7nsHeLOyCy6ccvVe4EAb+zDftLMFs6Y=; b=qj/EJkKiwFRRFVX3hOK94ImapsNG7x25YrOTzK76uFNOAvHa4ViFzH9dB7ZkTepxK4 k5+WflrcteloMJFaoKYZ/SS+gbf9KWE4490L9q7gkYcZj360a2XUSwSRMA4dUOlvsgAK wFkAoFd+PCtgpAaG+NJ3El7M3yeBvUqa0mQMM6d0helHIWCCWGj6cBwJDBmAU1FQURtR LMivEHpOmles4WVULZJhmRh8+VHRRjeIapjEhbU6ICi+aTUjdeJDbljdhnPBs9/gmt0a zi0kFuB2ASfGQLOmm+lI4Qfg4wBjc4+j2vVV+xCXGT4m13Va6S4qSCL1b9pRsdMUmg3E Q8UA== 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=s2sFyKQc0KML7nsHeLOyCy6ccvVe4EAb+zDftLMFs6Y=; b=mZlqbQGo9Xj4e0IJQRemZ8YsgCcLqPC0CWKbio15ibW7Pmys+LQMTFAQLjUg/YuD9c F2VWiatoZ0i3QBWiI3bZkePMrK2Y7KArtpeRetT5+CfzRiGYHG4H8R7WbScVGxHbni8n Uk3KR+ccLJ4xl6Kzv5MVpAVXopx1Qx5XwwSWJVtqJ97DoNho+BjQFG2SDbvqdQhYtKhs KRXg6n8DSPuishpLDJVwAqSIQ/e53RH85Dw4dSFt+SbRRW4EEwXNDNwiAkDGxe+aga8Y 9+E6X2YXdbW4/DaFNmh9QM1JxHiRr0TCn/vjnouFF/PYIhdNYCVzBSM7KuLxF5/aDYHM PkVw== X-Gm-Message-State: APjAAAUkDXR0ms8fVNE28kgjD2ePOAMof31nb5mqgTr+8Jovz4+N4L9j Yj1YxxrX2onZdqOtgu8bwBmH8SQnJ6Y= X-Google-Smtp-Source: APXvYqw6FrdQxm7hCBzX3p8hUBG/iSbsSjt1t6IRgUfGwLRYEblTLzV+SiIAw4xpazkW5szbZxwo5w== X-Received: by 2002:a17:902:8481:: with SMTP id c1mr30749960plo.319.1577574747661; Sat, 28 Dec 2019 15:12:27 -0800 (PST) From: Richard Henderson To: qemu-devel@nongnu.org Subject: [PATCH v3 19/29] target/i386: Remove MMU_MODE{0,1,2}_SUFFIX Date: Sun, 29 Dec 2019 10:11:14 +1100 Message-Id: <20191228231124.18307-20-richard.henderson@linaro.org> X-Mailer: git-send-email 2.20.1 In-Reply-To: <20191228231124.18307-1-richard.henderson@linaro.org> References: <20191228231124.18307-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::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: Paolo Bonzini , =?UTF-8?q?Alex=20Benn=C3=A9e?= , Eduardo Habkost Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: fail (Header signature does not verify) The functions generated by these macros are unused. Cc: Eduardo Habkost Acked-by: Paolo Bonzini Reviewed-by: Alex Benn=C3=A9e Signed-off-by: Richard Henderson Tested-by: Philippe Mathieu-Daud=C3=A9 --- target/i386/cpu.h | 3 --- 1 file changed, 3 deletions(-) diff --git a/target/i386/cpu.h b/target/i386/cpu.h index af282936a7..1b4b90556c 100644 --- a/target/i386/cpu.h +++ b/target/i386/cpu.h @@ -1952,9 +1952,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 Fri May 10 12:48:19 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=1577575967; cv=none; d=zohomail.com; s=zohoarc; b=L9qaxbqV2Mf2kzXnm/Eql1O6+n3o4IJOHk35bmq0XZTxcjR+q2OJM8fupugkvlg8v5g9RSW+Vjbom0JlZoaYVQ7WQ/es+rRHZ8O/BWOvEdzbOMY91XRNUiEAAbFbBP+H58zFqEPmu28kxTy293YWUuOGnYredT9uD0LWLvcwAQQ= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1577575967; 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=nAc6bZFMh5Y6eraePuEkGsT4LHqoTY3CFOaKZXGiiQo=; b=GL2tql8uMtKKXzhfK/ieJ4TSYMrWZEnfmltTnSSTs/F9qGLgT8RUBTJHBfluHwhGiBvQAZttYV3Wv2AGUL7Y9AIizQiAPJiCkDZZ/8o4+6THvPmf+SPshvt5osIHqRcY2t6ts57vNfEmZJZfx2SZy5l6m3tPue4PJikUCoa2UyA= 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 1577575967722308.64550926393645; Sat, 28 Dec 2019 15:32:47 -0800 (PST) Received: from localhost ([::1]:47604 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1ilLZe-0006Hn-RM for importer@patchew.org; Sat, 28 Dec 2019 18:32:46 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:42029) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1ilLG4-0005Wm-Qk for qemu-devel@nongnu.org; Sat, 28 Dec 2019 18:12:33 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1ilLG3-0008Kh-O6 for qemu-devel@nongnu.org; Sat, 28 Dec 2019 18:12:32 -0500 Received: from mail-pj1-x1043.google.com ([2607:f8b0:4864:20::1043]:54054) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1ilLG3-0008HA-HT for qemu-devel@nongnu.org; Sat, 28 Dec 2019 18:12:31 -0500 Received: by mail-pj1-x1043.google.com with SMTP id n96so6309377pjc.3 for ; Sat, 28 Dec 2019 15:12:31 -0800 (PST) Received: from localhost.localdomain (194-223-58-9.tpgi.com.au. [194.223.58.9]) by smtp.gmail.com with ESMTPSA id c18sm21077186pfr.40.2019.12.28.15.12.28 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 28 Dec 2019 15:12:29 -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=nAc6bZFMh5Y6eraePuEkGsT4LHqoTY3CFOaKZXGiiQo=; b=WQD077TlgHyUkOD57O2exBM5dLkPrPvBLDLPA9xY71hN/Binp/QUwL5rTbqnn98Z1y TMUKpKJ+kJX+GeYWhx+L7TCVo1uaK8cEdX2W1R7QWaZvir+X3JytF6ZRWl8Xlnx12Mrd 8ZKN/ZGBYJwODw/5O1rSv6txw8iHsUWT3JsIl1JcGPk8qqS3nwE8gfYMx2An7hbdLe+5 x1ObAgld1ru/TmCpzuu/Cv7lvK0DgWsla3cuUfmKjnLr0cW0hBEYKkvzBo6gpXelCFfF hRfFNNOoOiBzOyFhy8f5ZL5U3Kdtf9XbDMymBvxwc/ZklhbQJTc3xdz6ifevc0JUoZwg MLmQ== 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=nAc6bZFMh5Y6eraePuEkGsT4LHqoTY3CFOaKZXGiiQo=; b=Wd/5+YZH/BWtkv1FTyflmzdVLCI7Zb11AS91awvrBNpuKUVdKwA2wH7rd8UhSr5dZV 1xe9FpHa7WAokPJ0E2WKDZhVgJFQU3PqJdLUkt2pQGAPnNkNYepYccDt008XkcKeDAbT 7qclDgZXN7INpKAPVCbWZSm9862OSlPVhrHqiEMZEP5CYTpQX364J4DKLN7MxbhrbiJy qrc5ITcnSvC+mfmcRfRzqU4oX38bOLjPtXT5RisVDXaCJU6Y/udbKktek19T9PMkZZto yKDS73856CiQNaZoaKdGRZVlzAdc+UWQe96mdKLEVqmrYxE3nybe7eQoxfhMOfRQSQ+H 2SeQ== X-Gm-Message-State: APjAAAWwxjJrnhAVzVRWDFmRCZqOlaPZuJh/1h8Rn2vgQBnRH1Yy6OxB 97d5yBeOVHxdQb+PcVPl79fVekLfmsc= X-Google-Smtp-Source: APXvYqw1Y8giqf5I9mzEmT9X0LIJmcRvAkc7LUZbbG7ZLiVyJhvOQ7v50c6W64DGTp2YDKaZ4B7NcQ== X-Received: by 2002:a17:90a:fc82:: with SMTP id ci2mr35160292pjb.13.1577574750356; Sat, 28 Dec 2019 15:12:30 -0800 (PST) From: Richard Henderson To: qemu-devel@nongnu.org Subject: [PATCH v3 20/29] target/microblaze: Remove MMU_MODE{0,1,2}_SUFFIX Date: Sun, 29 Dec 2019 10:11:15 +1100 Message-Id: <20191228231124.18307-21-richard.henderson@linaro.org> X-Mailer: git-send-email 2.20.1 In-Reply-To: <20191228231124.18307-1-richard.henderson@linaro.org> References: <20191228231124.18307-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::1043 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" , =?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) The functions generated by these macros are unused. Cc: Edgar E. Iglesias Reviewed-by: Alex Benn=C3=A9e Signed-off-by: Richard Henderson Tested-by: Philippe Mathieu-Daud=C3=A9 --- 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 Fri May 10 12:48:19 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=1577575746; cv=none; d=zohomail.com; s=zohoarc; b=fDJ37ZwCYdF8jqWas1Ky8cqJNE47G1J1JRyQutGkY13Hwc6ICEKDxZ5nTG7m26L0fTNNMA7e4C06x3fKBRh8xzEbENKDIq1+wWQf+RlSRUF6Bx87KYxhRNZ8dpqbbQPKXqmBuA52PUzJMuBXCUdLljVPVCqQtT4WYqm2L/7Bzqc= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1577575746; 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=YdXEJZRP1IFp2O0duDOqWUbcJqfKg7Q1OugwBf6nt/k=; b=lHPB//5muPZCXYVWGag6G3oqmw211XicIDCnImuCn6HJv6IVLTr/nsF8r+302MlO4LDKS/DHlx1Sr1z9uxXX/7qBP2fuDobEsLEqdCeY385L5kI1ev+2q2yQNyDD5teHIUseoKwDweQ4+fsy/smrC3VVyZ57SFkLFGMMo+/+QDo= 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 157757574633685.44633178865422; Sat, 28 Dec 2019 15:29:06 -0800 (PST) Received: from localhost ([::1]:47516 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1ilLW5-0001CY-5F for importer@patchew.org; Sat, 28 Dec 2019 18:29:05 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:42175) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1ilLG7-0005ac-LY for qemu-devel@nongnu.org; Sat, 28 Dec 2019 18:12:37 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1ilLG6-00006W-Iw for qemu-devel@nongnu.org; Sat, 28 Dec 2019 18:12:35 -0500 Received: from mail-pj1-x1043.google.com ([2607:f8b0:4864:20::1043]:50337) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1ilLG6-0008Uf-AQ for qemu-devel@nongnu.org; Sat, 28 Dec 2019 18:12:34 -0500 Received: by mail-pj1-x1043.google.com with SMTP id r67so6313399pjb.0 for ; Sat, 28 Dec 2019 15:12:34 -0800 (PST) Received: from localhost.localdomain (194-223-58-9.tpgi.com.au. [194.223.58.9]) by smtp.gmail.com with ESMTPSA id c18sm21077186pfr.40.2019.12.28.15.12.30 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 28 Dec 2019 15:12:32 -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=YdXEJZRP1IFp2O0duDOqWUbcJqfKg7Q1OugwBf6nt/k=; b=t1ZCVm39F1TsyYG8sRXZ3aeX+iyx5BTRE8oGn9RC7rtEl7XNvT+K+V5zM5I9XQprKU RL7okSD9wZO83LP0LATHuxkSoKScSQOJ8J+BpdobG0stNrHMAt3EmQJCax/QBJoks6+T GJNgXaKBJ0w8E/JJbUj9xz5wtb44Q9rZQvLMMOdy7Jk+8g7srsYDwPVB7xm4BdbWxX0T moqlt4FztbAjdpjHBuC6j8MeoxbeGP0rJp9XHH+NyTngMK5/P4ZyhIDBoNbqV+lCewhk ivFW/J+8hzyLZiHY4JCVFZkeKB9V9Bh++sXmn2cibv/yNv0zkgpOIcZ1gAPr7oTsWpXL bEyw== 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=YdXEJZRP1IFp2O0duDOqWUbcJqfKg7Q1OugwBf6nt/k=; b=sB8IZ7zHh7CUQp7ixNrQ8YuEI5MEDD3eGwqRUUq+On0UrFqyyTuf5A8z1glwNCBC22 HA3EWek+h/1uYZNj+LhJj4lH+8ezfoAspKZzKvj+9dIZBRAYmFYYaxDqe8OCbKxwDy0q RwiWTfddy1nzAP6IND9eIevGB1PUMBc8CQLEu8QAeK2fBcfIfLExTzZ0U2rRA6rPn/j3 zYIPIeadIzjbOqpCiFxLCJKJPz4jxHy84BB+omEW5n47wMPNh2Oi+6rHngUR2qu13Jqs i4aQgj5aumFpheZW8lt0or3UOf9AX0q8rJuQK4J1b1zExyndcGWaRG4Aj+woLrDOALiN Q4Hg== X-Gm-Message-State: APjAAAU6hDBxbY/Kwv4T4z1nXJgMUve95gPHGt75kPD7fzFUi12N3+ao nVMsyeZSOPFDQh3UE/USFu5cBCqjMd0= X-Google-Smtp-Source: APXvYqyDBTytU+q3/fEM4RGjNNrtL98emhj+zwGgbuMNo6MjmFmTrx6ZbiPNEsX+vNVdhB8q2PKUxA== X-Received: by 2002:a17:902:b08d:: with SMTP id p13mr60534411plr.109.1577574753090; Sat, 28 Dec 2019 15:12:33 -0800 (PST) From: Richard Henderson To: qemu-devel@nongnu.org Subject: [PATCH v3 21/29] target/sh4: Remove MMU_MODE{0,1}_SUFFIX Date: Sun, 29 Dec 2019 10:11:16 +1100 Message-Id: <20191228231124.18307-22-richard.henderson@linaro.org> X-Mailer: git-send-email 2.20.1 In-Reply-To: <20191228231124.18307-1-richard.henderson@linaro.org> References: <20191228231124.18307-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::1043 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?= , Aurelien Jarno Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: fail (Header signature does not verify) The functions generated by these macros are unused. Cc: Aurelien Jarno Reviewed-by: Alex Benn=C3=A9e Signed-off-by: Richard Henderson Tested-by: Philippe Mathieu-Daud=C3=A9 --- 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 Fri May 10 12:48:19 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=1577575379; cv=none; d=zohomail.com; s=zohoarc; b=HjU3oJxxQf9deFPdMeCvBOnHk41NT7wUxTQ8IsSbdinaG/Eudvsi2g3u0JtB9CTxILfykc544ca/F/tVaRlu/XcP7/pzisq2rPq6SIY+Bh9GZU3Thct9Juw9WclwqCmnwA3eVYnShIFY6ysWWSNDb+LjEKxwqBCkRn35mdNHW7s= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1577575379; 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=lItfuMC+44mOHKIMDg46S+jTWfWeuHiIELhnH02jZNM=; b=E3bXe0hk4QPnRD16KEj7kSY6vM+rhHsKoZvg5duDBEFr686YheO5PnsIbe70F/kwBhqCWBRfeDM6kZSsKEG5typAVAM5Pn7vIS9odztQEt9x7PPo4RXahl/CpSmOSUmqgXQS0xS3pc0H9pNkGXry/7SSkHLiAwMB8Db7AofHFag= 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 1577575379290904.1632574427675; Sat, 28 Dec 2019 15:22:59 -0800 (PST) Received: from localhost ([::1]:47384 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1ilLQA-0000i1-06 for importer@patchew.org; Sat, 28 Dec 2019 18:22:58 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:42287) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1ilLGA-0005dB-L7 for qemu-devel@nongnu.org; Sat, 28 Dec 2019 18:12:39 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1ilLG9-0000Ko-MI for qemu-devel@nongnu.org; Sat, 28 Dec 2019 18:12:38 -0500 Received: from mail-pl1-x644.google.com ([2607:f8b0:4864:20::644]:37382) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1ilLG9-0000HL-FQ for qemu-devel@nongnu.org; Sat, 28 Dec 2019 18:12:37 -0500 Received: by mail-pl1-x644.google.com with SMTP id c23so13202440plz.4 for ; Sat, 28 Dec 2019 15:12:37 -0800 (PST) Received: from localhost.localdomain (194-223-58-9.tpgi.com.au. [194.223.58.9]) by smtp.gmail.com with ESMTPSA id c18sm21077186pfr.40.2019.12.28.15.12.33 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 28 Dec 2019 15:12:35 -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=lItfuMC+44mOHKIMDg46S+jTWfWeuHiIELhnH02jZNM=; b=FfLv4YtosmjEWcdwjsAJVCTUQsL5sYfcdqOaZ8fZArdbwXNkT99TdL/bKd3Kr175yA igrXF+RDnM/NX3FWX9GEFMQmtPK2tj3z5VoxcLll7dT12lKtZCsXNw9Zq5Zx3XcPZAXP gN6duYJMTdT0UdxGKN/JwnHNxm7teV7dRAC7aq6MJQHU3a6DlU3hEkJvnSjXpSdtZQWv KsnvwlHuSuunNWJyeOEVi4QXo9LzbK2UTv0xe6skIBfESwKWaQwXyjfX8bbE251n2FGF 65KWXB2vF022Z+hYPek9DUngz7XEvvh9Kng0L/+kNEuoT5OBDJkNzGeIg00rVc3bTwCr +UjA== 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=lItfuMC+44mOHKIMDg46S+jTWfWeuHiIELhnH02jZNM=; b=o2gj6Lrvy+qE16zQEpL2WchrTmzRXUSyCD50rLnJzhkm5rZtgt+XRk0NkSzC3Z47M3 Oc0M8jZyt7asbOGyWGnAFhaWRf7I/Nlvx1A2XOv1adm3PDM+l9GoMv53X+W5qshqESRI RwaIKqxq2/4l4exrajTWopoY7sQHNlKQ0pJpZRbh9cm0unzz4ioqiGa6Y5XBfIekG281 d0PQgfaR2zDs5HTbSWdSzK87BxE0eOQvOnbew4EV1rKD8yU1eT1qoG3qD/fcfpp07ZRG YwOgCpKrmMfnqPaDLvf/OlxvXkEu+4MZTlsL0OgIP3J31ej7vM8kr3BoGmG6Ywez36TP yj1Q== X-Gm-Message-State: APjAAAXg5FY7t2m9Bl3X0Nibd1lAzMKp1ZzL5HrQUjl0mDjTvIXMZNb3 KSoZ33J6HtIJY/FMSyUEPhv3kKujUX0= X-Google-Smtp-Source: APXvYqwieynKrGcnLQRjNpHf9bsSKX4h+l+q2JbIqJ/7rKpq5g/t7JHF8d7z1XR5HuKcHZQkUl7Gig== X-Received: by 2002:a17:902:bc8c:: with SMTP id bb12mr44330431plb.218.1577574756033; Sat, 28 Dec 2019 15:12:36 -0800 (PST) From: Richard Henderson To: qemu-devel@nongnu.org Subject: [PATCH v3 22/29] target/unicore32: Remove MMU_MODE{0,1}_SUFFIX Date: Sun, 29 Dec 2019 10:11:17 +1100 Message-Id: <20191228231124.18307-23-richard.henderson@linaro.org> X-Mailer: git-send-email 2.20.1 In-Reply-To: <20191228231124.18307-1-richard.henderson@linaro.org> References: <20191228231124.18307-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::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: , Cc: Guan Xuetao , =?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) The functions generated by these macros are unused. Cc: Guan Xuetao Reviewed-by: Alex Benn=C3=A9e Signed-off-by: Richard Henderson Tested-by: Philippe Mathieu-Daud=C3=A9 --- 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 Fri May 10 12:48:19 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=1577575859; cv=none; d=zohomail.com; s=zohoarc; b=eAcrm8JWsHu6pDZU1kdfVSokn+UIDFEjZcIr91iTbWWYsvL9B4zl5bnBLXmbYJgNYkcI3sh12Q3GJHip7hXDwSXsahSErlOA9SX5pc3dnSo1shJ/qK79vcvpbplaW0CGmelpzsMI5D0PxXJjPV8G4CQTBhEuxxNCsO+cT9ymZ/A= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1577575859; 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=8KeHM8r9FEkQ6hmUzWzLeevN843jeEXpnBlHeCgI2Kw=; b=Tu0NC3UCUtOFtVmnVst6yDmjBtw5pFTaNmbVrRIPVKo1HZXL2CGZdugcuBlsFrPQrvmtFAc4MzQJMmY+L/NrRUUzTC6TPFOWTwHzMlTcPKYgEAmHoWhlTxo11TwtlWTae/Zcn3K6nh9GfF4OPeHYO3iPTkqfB5b6dHNwr1EAwXc= 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 15775758594844.712467109834961; Sat, 28 Dec 2019 15:30:59 -0800 (PST) Received: from localhost ([::1]:47568 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1ilLXu-0003qp-9U for importer@patchew.org; Sat, 28 Dec 2019 18:30:58 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:42472) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1ilLGD-0005iD-MU for qemu-devel@nongnu.org; Sat, 28 Dec 2019 18:12:42 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1ilLGC-0000cE-KZ for qemu-devel@nongnu.org; Sat, 28 Dec 2019 18:12:41 -0500 Received: from mail-pg1-x541.google.com ([2607:f8b0:4864:20::541]:34794) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1ilLGC-0000WN-DA for qemu-devel@nongnu.org; Sat, 28 Dec 2019 18:12:40 -0500 Received: by mail-pg1-x541.google.com with SMTP id r11so16286588pgf.1 for ; Sat, 28 Dec 2019 15:12:40 -0800 (PST) Received: from localhost.localdomain (194-223-58-9.tpgi.com.au. [194.223.58.9]) by smtp.gmail.com with ESMTPSA id c18sm21077186pfr.40.2019.12.28.15.12.36 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 28 Dec 2019 15:12:38 -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=8KeHM8r9FEkQ6hmUzWzLeevN843jeEXpnBlHeCgI2Kw=; b=K18rOLcaFMcmeiexDbtG44mhMsxyg2gDLESkb8lMKrNwWhjoLx42kZPq8pXdzmtsqC kaH/TEQ7nLYmFq0vfM3LWx81/zrqjTm8fIE5nBRbpbVWgXJa443QP8wWQJAmhQVb80ZS AX+Mm7yxRdpO9Gvge66uke+oFV3t+5cyXGh0G1DByVC4uKwTyGzfrDlvZOf260Xyr1fs cU7D8i87rp7PbpR2DVx4WTN33gsFV4/0ZyrdblOjYseNvpTSmWIjFxN3koQ4ShSQQ+uZ UgdGq3PRlM96X+Iacn9dQNgODIPWiW2kK/r1WNWEC8WDdLqZTVNH0jXcmFVVajVUu5Zk zQaA== 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=8KeHM8r9FEkQ6hmUzWzLeevN843jeEXpnBlHeCgI2Kw=; b=qZzgB+IdpEdMhgkIKP+D2v1ra03AVPM4IOAzzRcpO4YayOW5loE7+b8MtLb7wCJtF5 Ru0ZKdrJOs+ERPGnVcgWOW5VmuqbSiZEI+h3AAtOJ1rdOGANxD5oMMhf8GyIS1iPZ7rX /+OtFF0KA7yDtecBMy5sQ8tptJjtmZCmoRXn9lFohMoip0TyQWEKYUfZ1OwYXlbv79n2 gN1QILedmVhJfGDswa2HNHaLUsc2tC3UyhoDnLCN02DYY5sGhLjlQGw9cfk0v0aRa/03 ccL4Pbn7JB4LgBbxbTZyEQbNOGkqeIb+P96c/TEjCQ2k7NaHdtuTP1uHCN0l0MlsTUv5 1KZQ== X-Gm-Message-State: APjAAAXGr3lUU+N+8mwc2NAiUQ2OCxb54r54IH/p4erdC69xfX58+dWZ UMzBOmnFdmVOcbi13JeI6IL/ck3hARQ= X-Google-Smtp-Source: APXvYqy3v3jHmCrNcTqrzwBW7/J3+fRy+E5RKZjgS4MPVlG3KCgJQIRAB5riyF2Zlfm39yU4YBEi4g== X-Received: by 2002:a63:5657:: with SMTP id g23mr61718623pgm.452.1577574759032; Sat, 28 Dec 2019 15:12:39 -0800 (PST) From: Richard Henderson To: qemu-devel@nongnu.org Subject: [PATCH v3 23/29] target/xtensa: Remove MMU_MODE{0,1,2,3}_SUFFIX Date: Sun, 29 Dec 2019 10:11:18 +1100 Message-Id: <20191228231124.18307-24-richard.henderson@linaro.org> X-Mailer: git-send-email 2.20.1 In-Reply-To: <20191228231124.18307-1-richard.henderson@linaro.org> References: <20191228231124.18307-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::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: Max Filippov , =?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) The functions generated by these macros are unused. Acked-by: Max Filippov Reviewed-by: Alex Benn=C3=A9e Signed-off-by: Richard Henderson Tested-by: Philippe Mathieu-Daud=C3=A9 --- 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 Fri May 10 12:48:19 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=1577575538; cv=none; d=zohomail.com; s=zohoarc; b=bypHOpEA/jJ7K0Ps9h+A6E4J+xeEq494hHzkzRbBQUPck4JdFa88OTmB6xQvspbI68cogfgUsyqa1DdUNTg/6+iPb4N53Avvx83I+QQDOepPsMTiDV47xYcyhf7NgpJ3JpjOIA0bj06QpSGMrPssqTagJAViKRpYeVkw1WgvvCs= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1577575538; 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=/DxurHGwuZH6JqrEQEweegleQBhLbLAfneqpCa2kWQI=; b=QDBwEe1SIDnexaCGree0bsAdK0bsQcCYkMEjlv8wabiowLkfJr/159XgpfK3mY1lyhHvyPApSSV4EtqVG3wTgL+9YZgc2DP6tOJdBWHjrI+edRAaLy7G62A7MpAWComx1smxA0cL+IoYIimxjUCZIxDQbrL1z3U+2ToKSjGoiM8= 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 1577575538116492.48240045707666; Sat, 28 Dec 2019 15:25:38 -0800 (PST) Received: from localhost ([::1]:47442 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1ilLSi-0004nC-QD for importer@patchew.org; Sat, 28 Dec 2019 18:25:36 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:42660) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1ilLGG-0005od-SW for qemu-devel@nongnu.org; Sat, 28 Dec 2019 18:12:46 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1ilLGF-0000qL-A3 for qemu-devel@nongnu.org; Sat, 28 Dec 2019 18:12:44 -0500 Received: from mail-pg1-x542.google.com ([2607:f8b0:4864:20::542]:35999) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1ilLGF-0000mY-2e for qemu-devel@nongnu.org; Sat, 28 Dec 2019 18:12:43 -0500 Received: by mail-pg1-x542.google.com with SMTP id k3so16270555pgc.3 for ; Sat, 28 Dec 2019 15:12:43 -0800 (PST) Received: from localhost.localdomain (194-223-58-9.tpgi.com.au. [194.223.58.9]) by smtp.gmail.com with ESMTPSA id c18sm21077186pfr.40.2019.12.28.15.12.39 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 28 Dec 2019 15:12:41 -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=/DxurHGwuZH6JqrEQEweegleQBhLbLAfneqpCa2kWQI=; b=D6Zs3weeFnBZO2Vcp/R+FESQBJ4N7XEZhmmXjDvOzuaad+G811Y/Rkf6cp1itm3tIt 0pASdM0eQZUQGKHIn26vaFMAgSneO1VByDFYhpwAmIHKqU7Vk6AHhbKR00e7IlAFamWn CB2iBJ/WaFKzw6FqitHdUJIMkQ+RmD+Tw5Ubtkbzf+p9f+KDuf1axpvt9MloeNer4t/W BZVWeB03vh1Pvz2vzdwRITKcP01oiM48+IWgi2KdxLWvHHOf122ZmvOGzhQw4eiVelPG mDUNMSA/RH3+R71VX5oXcL12TutsM+GaSWv6dd7KKNyVVmy6xZetqHkGVxAqyXq85Hgh /02Q== 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=/DxurHGwuZH6JqrEQEweegleQBhLbLAfneqpCa2kWQI=; b=SrEaBmfLXA+xvacNZj8J0ocNmBeYg8Trk7XZ2ANxId8aoQz8DWrN15cAoGN3GGOmnN 52KAYBZgp/+akwkg0/4V6q7GAmR2nEvBDaG7mlsy1fLWzgqV4Y7aPy/1eE2SMw+u7qOs YGbgggjy6artc3v8pm+f5uLSLOpFGud6vETjjVgD0jQxwnJ7zHVxYc2X2Cyz4MXTwwo/ nErucebdpgiBAjqeQ3Gh8rjVNKR/6CNtsOEk50VvecR2Tuz5fVqBefIh2hcX13VI/nxN nSBPtj9bziArdHyWbeCQY3RZgoYMEiNjYCPRIdex3LXOXJq5FH4ABhCmsoHrMfU/WiWl bQcg== X-Gm-Message-State: APjAAAXl7UL7SPft9/zgcQo7Flyip0/xJ/tITP+KAd0llilQfTeuKwJh 6XAxXf+7iEixh0Q+dbPjSrFMeIe+gzw= X-Google-Smtp-Source: APXvYqxOBNhpLbCkWlm1aG2o3xb/33tKst993J+6OYY296F+IsfnHT7DcwFKeyoyGGP6W4w4gjZ6Sw== X-Received: by 2002:a63:d10e:: with SMTP id k14mr64839942pgg.120.1577574761813; Sat, 28 Dec 2019 15:12:41 -0800 (PST) From: Richard Henderson To: qemu-devel@nongnu.org Subject: [PATCH v3 24/29] target/m68k: Use cpu_*_mmuidx_ra instead of MMU_MODE{0, 1}_SUFFIX Date: Sun, 29 Dec 2019 10:11:19 +1100 Message-Id: <20191228231124.18307-25-richard.henderson@linaro.org> X-Mailer: git-send-email 2.20.1 In-Reply-To: <20191228231124.18307-1-richard.henderson@linaro.org> References: <20191228231124.18307-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::542 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?= , Laurent Vivier Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: fail (Header signature does not verify) 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 Reviewed-by: Alex Benn=C3=A9e Signed-off-by: Richard Henderson Tested-by: Philippe Mathieu-Daud=C3=A9 --- 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 Fri May 10 12:48:19 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=1577575667; cv=none; d=zohomail.com; s=zohoarc; b=MEi/b2nhER0I4Hb+L1Fr8jwIsLdDUpDIMQ5bDmLddWyyssQAyPspILds2bn45tGRPFZEafa2TNgUBYuQr2mCLzUu900BevwKbCoxmxnKtlXPZfgfzX90rTX72S0ls962FETSbhtebwuVbB0f5J75GyPyWhUuR7fAEUw9SAC9myQ= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1577575667; 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=urRb0uR9O/6+SJM1ppmaD8oGu/FOyRk842uyqGR7Ev0=; b=PoGGUj8s/WoSoQMb01B3dOTTPsmPlhzId8MR0c8FwTBqlSzZi/geL3IKJN4BrfBE058KV1m3Ix09M6Uf4StWz55qtSmlwm9S05DXn2SZGmNL1MovpMcUiXKq4CoJ6GbkZ95HociJIlbUhdtebqiOD2OiNxqO4IZPdcI55lFBvG8= 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 1577575667634824.1011716054927; Sat, 28 Dec 2019 15:27:47 -0800 (PST) Received: from localhost ([::1]:47490 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1ilLUo-0007xq-IQ for importer@patchew.org; Sat, 28 Dec 2019 18:27:46 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:42922) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1ilLGL-0005vI-57 for qemu-devel@nongnu.org; Sat, 28 Dec 2019 18:12:51 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1ilLGJ-0001A3-4s for qemu-devel@nongnu.org; Sat, 28 Dec 2019 18:12:48 -0500 Received: from mail-pl1-x641.google.com ([2607:f8b0:4864:20::641]:34097) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1ilLGI-000163-QQ for qemu-devel@nongnu.org; Sat, 28 Dec 2019 18:12:47 -0500 Received: by mail-pl1-x641.google.com with SMTP id x17so13209601pln.1 for ; Sat, 28 Dec 2019 15:12:46 -0800 (PST) Received: from localhost.localdomain (194-223-58-9.tpgi.com.au. [194.223.58.9]) by smtp.gmail.com with ESMTPSA id c18sm21077186pfr.40.2019.12.28.15.12.42 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 28 Dec 2019 15:12:44 -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=urRb0uR9O/6+SJM1ppmaD8oGu/FOyRk842uyqGR7Ev0=; b=f2qn5DIYdgooPOi9Qkb1YAco3Mc5/CxypjNZiaSOaQEIFUXSlyLFpw5nhtZw1TkCFy i8bPo01usKnObeXsIKh3jHx39IC0y1351l2JYipgzl16gbG5ySyJ+3UJ52k6X17DUW8X W2OILLkRdFkb/XknAkWUAKEb+mAj1od8VOKlm84uJkKgJYSDOYOft6O/RMklDKYabk6x Yy8sPo+Po1aLJJVOvc1ro9iIJrgWKyruFvkda7SX0XoRy05/xhb9S32YHuaGJ5YHB6FD kHdOlEBMwyuxGXaZoeyLsPOkNlYFjS0Sm0cxCZq4Ijhpor2D5kczGJsp9vp3d3WdX3LM vIsQ== 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=urRb0uR9O/6+SJM1ppmaD8oGu/FOyRk842uyqGR7Ev0=; b=ZW8Ctnw3+ERsOfL5k38DGaOsqV3gYZPWc8E3hOk/+evucdoEUHto2HzgpukOCtGafA ZZ+BrcGGFrR1k0R6FCWil/dT9iDXD/r3yvDCaP/Jo6LyJaMPfGI9LhP4/gvoXtkxVcyi jgpPE8hqGw5+IJra8zZOmnl7eCrXgmzP1YzRCuyTbN0fMPgAnkyci5IZzcjGXzb5AK3n e6SZxhlJ+dbtgYPbmEITZgDrgmwaaZD//7zshIdg5Tk0zh4dpPh4ZqQluO40HL64XYgj BBsNWzSeOdukG14SXLVjilieGjQyTkSfOPUvJnvYyEH7dDqe/O8UHxaCk1soHD3y8yJL i5PQ== X-Gm-Message-State: APjAAAX663k4IQW8XcbOFBOUJXoZbnkqQt2sjc+X4gQUI4JmZh5PJfzY Fk0QO+OHvNjdBpVDyYLyTpWt/v4txCk= X-Google-Smtp-Source: APXvYqzDLB0Cdc6haliHp39GwLXxJ8NSLhx5Hz5myqZtm7u0mMFvaoNnOlp7708Gc5dUCOPGnGqWLg== X-Received: by 2002:a17:90a:f314:: with SMTP id ca20mr34091890pjb.112.1577574765446; Sat, 28 Dec 2019 15:12:45 -0800 (PST) From: Richard Henderson To: qemu-devel@nongnu.org Subject: [PATCH v3 25/29] target/mips: Use cpu_*_mmuidx_ra instead of MMU_MODE*_SUFFIX Date: Sun, 29 Dec 2019 10:11:20 +1100 Message-Id: <20191228231124.18307-26-richard.henderson@linaro.org> X-Mailer: git-send-email 2.20.1 In-Reply-To: <20191228231124.18307-1-richard.henderson@linaro.org> References: <20191228231124.18307-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::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: , Cc: Aleksandar Rikalo , =?UTF-8?q?Alex=20Benn=C3=A9e?= , 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) 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 Reviewed-by: Alex Benn=C3=A9e Signed-off-by: Richard Henderson Tested-by: Philippe Mathieu-Daud=C3=A9 --- 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 Fri May 10 12:48:19 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=1577575507; cv=none; d=zohomail.com; s=zohoarc; b=e0fw2nOuCIxS7S4OoJgb0uuhgjMrmg+VNHLTZzl6KRTg7Es4jwNCOeyTs7YY/jkct1vX8q9NuCOvX9mr0ljKwb2FtF8jOaZxhANg6G3Gvh9wnrF3VAAQRL3jFfHgVVbMQDUnYpzNMMKei/sqPnt+vljrasJkjQKJqAm1wbH3wNk= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1577575507; 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=YGX16RdW2itYDRX1lminhJhJxtzn0dioVEW1Yirv0gs=; b=SNguI3H2kq912ucQW8jjjQuPsmMNESAeKDIkFNFoSYx/EmVr22wmOndRMhbFlp41kC37lSwyV+ESeCkTUl5vRSlJf5dx18g9F71eyEL5faRyKna6cYHYcJIpewx6GQiUkc0cz0uFN0meXK+cKwkqeK9pHXVRUsyNq186c6skT4c= 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 1577575507619662.2323545028495; Sat, 28 Dec 2019 15:25:07 -0800 (PST) Received: from localhost ([::1]:47434 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1ilLSE-000476-9a for importer@patchew.org; Sat, 28 Dec 2019 18:25:06 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:43047) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1ilLGM-0005xw-PS for qemu-devel@nongnu.org; Sat, 28 Dec 2019 18:12:51 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1ilLGL-0001Ma-JU for qemu-devel@nongnu.org; Sat, 28 Dec 2019 18:12:50 -0500 Received: from mail-pg1-x541.google.com ([2607:f8b0:4864:20::541]:40503) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1ilLGL-0001J1-CG for qemu-devel@nongnu.org; Sat, 28 Dec 2019 18:12:49 -0500 Received: by mail-pg1-x541.google.com with SMTP id k25so16252482pgt.7 for ; Sat, 28 Dec 2019 15:12:49 -0800 (PST) Received: from localhost.localdomain (194-223-58-9.tpgi.com.au. [194.223.58.9]) by smtp.gmail.com with ESMTPSA id c18sm21077186pfr.40.2019.12.28.15.12.45 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 28 Dec 2019 15:12:47 -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=YGX16RdW2itYDRX1lminhJhJxtzn0dioVEW1Yirv0gs=; b=TBqcKKCcaHD8bof+7XxtpikGQ9wx5h5ki1LyQRHJ3p36w+zWjnfZnEGp3HThdUmVF8 dGGl6XatM9eDfd30Sa5NC+xMUtDDAtWtl87woqwAXi0fTn3ZUHZtHKSMHxCmzEFDffGl 0NQwO66omS8Nd7oBme7njgMLFn6V3254qiDa+IDALjwx3bgGksBgUkShmOKMkVdiv3KD oFNasLNlFHR3LiNaNMXciYA+SSH95S8WppbC4PZr+hRwS5d4+dN8b4eriKTsX1R3OkJP v4ldG76OD+lGMj65O3q9RdFWK2PpAV16Ynoyen98tzTbtR7mWSGqgdLu8YM9T++zn1oz J7Sg== 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=YGX16RdW2itYDRX1lminhJhJxtzn0dioVEW1Yirv0gs=; b=I0ZaOz6KVOLfz6kysFZCyfq7SPpu0TPNo6gGAdLELm0gbkjkk7CyBK6OHFOmwCAtys e6krqmhxpJ4k/z7mhwX3g+xD2SKCc4Zfy+sLaQrnb3Tf7qOUdFTDRLTsRcIACULEpFJm X6kFylKblC+jp3qV3aD/fShPtjoghWxtSBzP2KYaWpE6cILBSK/1kVzoEsX53rWd6+sB uIC6s1pN0JN5xnBMIf8uarwj6I3cqFhrChEy9DW2PduOYGi1KM8w6GUJpvJGq9PacSfD tSWMXm2HvF7JG5hIci5162pWIKqSKDCOmPVTK5I+GL9G54WOOsont15DyijZ5q+1SdFQ WJzw== X-Gm-Message-State: APjAAAWJ8NW6TYvNYZS+4zPipawh7CpZLfpACVcsBz5dvMBQSAM1h4ZR cMV0l9ykOevHDq+jbetGcwDB1dWTE7o= X-Google-Smtp-Source: APXvYqzkDgpNo5YcCcM4j50lNseo4h4ERXhN89z+Wh3wzg6wy4xPh8kvCwrbhgm1QawkjdyLo4tdvQ== X-Received: by 2002:a62:1613:: with SMTP id 19mr64371582pfw.7.1577574768260; Sat, 28 Dec 2019 15:12:48 -0800 (PST) From: Richard Henderson To: qemu-devel@nongnu.org Subject: [PATCH v3 26/29] target/s390x: Use cpu_*_mmuidx_ra instead of MMU_MODE*_SUFFIX Date: Sun, 29 Dec 2019 10:11:21 +1100 Message-Id: <20191228231124.18307-27-richard.henderson@linaro.org> X-Mailer: git-send-email 2.20.1 In-Reply-To: <20191228231124.18307-1-richard.henderson@linaro.org> References: <20191228231124.18307-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::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: =?UTF-8?q?Alex=20Benn=C3=A9e?= , David Hildenbrand Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: fail (Header signature does not verify) 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 Reviewed-by: Alex Benn=C3=A9e Signed-off-by: Richard Henderson Tested-by: Philippe Mathieu-Daud=C3=A9 --- v2: Use *_mmuidx_ra directly, without intermediate macros. --- target/s390x/cpu.h | 5 ----- target/s390x/mem_helper.c | 10 +++++----- 2 files changed, 5 insertions(+), 10 deletions(-) diff --git a/target/s390x/cpu.h b/target/s390x/cpu.h index e195e5c7c8..8a557fd8d1 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 20a84b3912..428bde4c54 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! */ --=20 2.20.1 From nobody Fri May 10 12:48:19 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=1577576060; cv=none; d=zohomail.com; s=zohoarc; b=Z67aB1fnnzpAbR3ZrBMby549RiI3KLc0bIVFwCuSXxAG4FbKjJ68GIfGoxf34N5jvolKxbSI1kPOocwceNJZS6p+b0ZMDNiALUjC8nRaQ9selqmVJjotI74JFYinwdqBfnxObPfhZtTvpQBDU+liXcTLY87AxfOGylA7SUppEC4= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1577576060; 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=SEzpAukoAQn83lsfCzdS88MYe9lG7G86695cNY7gsMY=; b=JL4UdOgZJX5V7EtUoB+gmbXTGI+AIRthWp2q183q67LoPQ4PWUobBEFDtbVpDAzYJtISxZVKl9D/tnWgbb2Yu7yEeNRYoi3ntyHHXB+cvqSXhENYtfgfxZ8HlbxKNwL2VL47+9rbUvE/GprObRTE4JUM1GR1u/c0RCAt17Z2bBY= 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 1577576060299993.359277848778; Sat, 28 Dec 2019 15:34:20 -0800 (PST) Received: from localhost ([::1]:47624 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1ilLb9-0007Mt-EL for importer@patchew.org; Sat, 28 Dec 2019 18:34:19 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:43244) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1ilLGQ-000639-C0 for qemu-devel@nongnu.org; Sat, 28 Dec 2019 18:12:55 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1ilLGP-0001eh-6e for qemu-devel@nongnu.org; Sat, 28 Dec 2019 18:12:54 -0500 Received: from mail-pj1-x1043.google.com ([2607:f8b0:4864:20::1043]:52139) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1ilLGO-0001Zm-Nc for qemu-devel@nongnu.org; Sat, 28 Dec 2019 18:12:53 -0500 Received: by mail-pj1-x1043.google.com with SMTP id j11so6314056pjs.1 for ; Sat, 28 Dec 2019 15:12:52 -0800 (PST) Received: from localhost.localdomain (194-223-58-9.tpgi.com.au. [194.223.58.9]) by smtp.gmail.com with ESMTPSA id c18sm21077186pfr.40.2019.12.28.15.12.48 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 28 Dec 2019 15:12:50 -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=SEzpAukoAQn83lsfCzdS88MYe9lG7G86695cNY7gsMY=; b=s3dkP/VLX154ub2oVFcY1BumUMIENcyb7ivyYPRbHlGSEOBXr2M2HGbG3tB8kRdJQy BxHLD4t04VzGFawFz4765/5i4+sGeClLVK+M/M96HW3NpRV+83tNiWRkeN7d7sUQySmW pxr8PCDCZTjalhKZeHGnGLHyv817VP3lYZEm8Q+lYaMAeFz0bLGKjmhWeM9GfRFnVGB1 T4sVMl19ClaAb9tCfIgc0X4COlwgN5LAWdfuNBTIiMmAB3oxDvubEUdtYdF/mcJEl7hd uCXjCAqiaSQ6AkvxXmYavLSLlm+UTG6WOTs4X9MpL4S1+bg/CkqGeXX+BvP5SIaEp9jr NRQQ== 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=SEzpAukoAQn83lsfCzdS88MYe9lG7G86695cNY7gsMY=; b=FraUW4THu3iEFg7x7HUS61/zgGrdqSq6Njfwq+yOzPzGQz8KJyQBFNMGO97urHBShI 5/0SzfbqDyvkihRYra5IcxqmYkTE9iCoaw3MeaoZkTiRxg+lqIDIRS0LJxARdSVH8Unx aWpddj8FjMHRAi3nOZo/hnCkRykRa4vA3VzkidJ7l6m0Hi1fSVxGgzSw/ge5LMH5kNBh Q/xrGq9t9izbZXEE/TQSmg7cioLb5ELr1VTr3tRz3pJisTjs74SMauekmXD5nzlUl0S3 MFAGJmFuLfgZ51QALl9fQNbGfH0USC+O6Oa+qzz5FkXd4w2MrdbFawCb6A307lRDEe2p 5KmA== X-Gm-Message-State: APjAAAV7LVi5XRJN6DN8989FTOKeKaf/gbkwOZgRQxvdbYVpdS3IHW05 DBAdRfj3KwuJrDUDGOtfJmUnTEqriiU= X-Google-Smtp-Source: APXvYqwJEzawqqregaKhZjTyke8TuONWp/X4GrWZfiI+pRJuefBF4ftzLjghvvNi8S/4lfWyyNK4cQ== X-Received: by 2002:a17:90a:191a:: with SMTP id 26mr35286932pjg.111.1577574771414; Sat, 28 Dec 2019 15:12:51 -0800 (PST) From: Richard Henderson To: qemu-devel@nongnu.org Subject: [PATCH v3 27/29] target/ppc: Use cpu_*_mmuidx_ra instead of MMU_MODE*_SUFFIX Date: Sun, 29 Dec 2019 10:11:22 +1100 Message-Id: <20191228231124.18307-28-richard.henderson@linaro.org> X-Mailer: git-send-email 2.20.1 In-Reply-To: <20191228231124.18307-1-richard.henderson@linaro.org> References: <20191228231124.18307-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::1043 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?= , David Gibson Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: fail (Header signature does not verify) 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 Reviewed-by: Alex Benn=C3=A9e Signed-off-by: Richard Henderson Tested-by: Philippe Mathieu-Daud=C3=A9 --- 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 103bfe9dc2..8ebeaba649 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 Fri May 10 12:48:19 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=1577576115; cv=none; d=zohomail.com; s=zohoarc; b=eaS7fP5oLkQZDMGJeNYtoTcMRWy1CE+lrozm0m2VxxEeBrDxS/pZ4mR31AG8z4WJ7zp0/xtebkYmd/Hq3i7vypGvIpXzXJBILiIgy2zXrV5rofbTuZ8TeubsiH0Wu1SEmi6FeNm8kA8nQkRsm3wfh2XT8sOb+JLqbMEv4YEHzYQ= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1577576115; 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=gwNisjSCbkUpTKZI0ymm9h7t/G0Gf4eKOZKY9iP+SJQ=; b=WyHWKikW2GnEeB7oP4l8cS68KMXnDJOdhZFTV5svNAoMrdyfhnW36MxrV7I3PycpmY2hy8GzwkEAiQPfp1L9zAc9pZ35weQ/+dgrE++j/SVC/9DXl2vlwvYqLjcF5YhU9mVI8GOHLvfyIDcOv87bTXaU/jrBg2qYIrNqXOPkq7U= 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 1577576115872227.26501822748287; Sat, 28 Dec 2019 15:35:15 -0800 (PST) Received: from localhost ([::1]:47636 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1ilLc2-0008H0-S3 for importer@patchew.org; Sat, 28 Dec 2019 18:35:14 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:43387) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1ilLGS-00067O-Tt for qemu-devel@nongnu.org; Sat, 28 Dec 2019 18:12:59 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1ilLGR-0001qE-FK for qemu-devel@nongnu.org; Sat, 28 Dec 2019 18:12:56 -0500 Received: from mail-pg1-x529.google.com ([2607:f8b0:4864:20::529]:44419) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1ilLGR-0001lv-8N for qemu-devel@nongnu.org; Sat, 28 Dec 2019 18:12:55 -0500 Received: by mail-pg1-x529.google.com with SMTP id x7so16254096pgl.11 for ; Sat, 28 Dec 2019 15:12:55 -0800 (PST) Received: from localhost.localdomain (194-223-58-9.tpgi.com.au. [194.223.58.9]) by smtp.gmail.com with ESMTPSA id c18sm21077186pfr.40.2019.12.28.15.12.51 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 28 Dec 2019 15:12:53 -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=gwNisjSCbkUpTKZI0ymm9h7t/G0Gf4eKOZKY9iP+SJQ=; b=LST3JD1TEwjhpy0cfp4U0VpM16RLIlsyN4RUKoEuRp/YQvUMabIN2muW4dnsql7i6T JxhKYc1V7sIdWR0aBtgqfiJGNfOVajlA/DHkDzhbauDzRfOmhA1dfUDAPgSCojEvAnHs U5NP+hB0aRCNsIGjdTER+L9CIUF3IFZ1+U/2OV6pb5D3JjNqiodE2fWX0VrdZGk15Zqg J/aU1AN7XHLgtQaVMwg6PX1NdiqICt/YdBT0BFZh4LGz3mzNUV7d8w2ITvjMoTKsOwW9 TpfsorR2Afz07D2/6rtF/Of95JO/xHo+2M9h+mPIhPxdowrG9J6GCdCa3Vtz/jbICnmv w08Q== 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=gwNisjSCbkUpTKZI0ymm9h7t/G0Gf4eKOZKY9iP+SJQ=; b=BfNIqwMp3E1vAZFEYskpDYO4ZokaqdQB5Y11geUrnRfNznp3sI+X67P8azNWgH65aT Gv/fGSIDszV26N0fWWOtbRNZNWN4Kl03bHZ9Cc+fNern7RGaSYOloGY71qDW0onU/sGL HJ5Maooce1RXX5rSpKc29H7bOpNkzfwXpPQqSIOkvQCzzKSQPjLsOOvVcnkqgeTr6Tfs 9eZau6bQUBGLdC826zae1RkKU45oaWoejOiudFHqxyinCvRYY9diQx3DWJUjfCntXTgi RsZnpolmLLd7SYBuR2xtwLaLq/BYB3R1FDYKrfBj49YAjOPftp4LfPDbayb0uPOuyMFv lMAQ== X-Gm-Message-State: APjAAAUThI4rhLp569NOOHF4oRJIGwWXg7mgZPX34GOrOBhDOTkdLp90 HIUcpWhoa94g5Cz73G6Jme5/JNeH/B0= X-Google-Smtp-Source: APXvYqzVM7xw7UFJH18+oHMqKZKpB678PdDfLhKFdwgWzjTteTOB0zyqPTqpGstSWbE20NxUrcCb5w== X-Received: by 2002:a63:7985:: with SMTP id u127mr61686341pgc.169.1577574773984; Sat, 28 Dec 2019 15:12:53 -0800 (PST) From: Richard Henderson To: qemu-devel@nongnu.org Subject: [PATCH v3 28/29] cputlb: Remove support for MMU_MODE*_SUFFIX Date: Sun, 29 Dec 2019 10:11:23 +1100 Message-Id: <20191228231124.18307-29-richard.henderson@linaro.org> X-Mailer: git-send-email 2.20.1 In-Reply-To: <20191228231124.18307-1-richard.henderson@linaro.org> References: <20191228231124.18307-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::529 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) All users have now been converted to cpu_*_mmuidx_ra. Reviewed-by: Alex Benn=C3=A9e Signed-off-by: Richard Henderson Tested-by: Philippe Mathieu-Daud=C3=A9 --- 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 Fri May 10 12:48:19 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=1577575784; cv=none; d=zohomail.com; s=zohoarc; b=myk+JcBNrjsxRc7gZohXrb3voV7xqVHCF5v3PPaY/U4gJd14nCu9zfklE6cmCoCpvx/kUn73lDQtNezC0d69F2MYO8InKE3J7o5rUyH5XFkYuJE2zjaylL8Juao9JO57zVUva0Ma7C6uHnwu0qa5uHo40f9JS2ph7vybkMfOsdM= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1577575784; 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=KSxlVjMgrW5qwjCYnrj72dmboj0p6pyBucySQch5mhk=; b=Qtv8FBOVejOvvxmOiAYHWCb4aNaEIs4KftjuJ6FviqutMo1B4AnucHj8LJ2lu3ThcZ6ocxV9sk97F5bYxlylZqejbU0ofIeDY289rYEEntOTE5m+Aze3Cl+Eg7stkYV2YaFjjnUSO1VsouPSa7cqbSWi4q8Eh/H8CyirYsE+aXc= 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 1577575784126628.768070012072; Sat, 28 Dec 2019 15:29:44 -0800 (PST) Received: from localhost ([::1]:47524 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1ilLWg-0002BY-Q4 for importer@patchew.org; Sat, 28 Dec 2019 18:29:42 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:43589) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1ilLGW-0006BQ-KQ for qemu-devel@nongnu.org; Sat, 28 Dec 2019 18:13:02 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1ilLGU-00024b-H8 for qemu-devel@nongnu.org; Sat, 28 Dec 2019 18:13:00 -0500 Received: from mail-pg1-x541.google.com ([2607:f8b0:4864:20::541]:37375) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1ilLGU-00020U-9B for qemu-devel@nongnu.org; Sat, 28 Dec 2019 18:12:58 -0500 Received: by mail-pg1-x541.google.com with SMTP id q127so16271114pga.4 for ; Sat, 28 Dec 2019 15:12:58 -0800 (PST) Received: from localhost.localdomain (194-223-58-9.tpgi.com.au. [194.223.58.9]) by smtp.gmail.com with ESMTPSA id c18sm21077186pfr.40.2019.12.28.15.12.54 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 28 Dec 2019 15:12:56 -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=KSxlVjMgrW5qwjCYnrj72dmboj0p6pyBucySQch5mhk=; b=lrIKnUfGfZtWf08H0BHQrwp+ohi5t4Zb4sw+FifzKOgcivuKxKBpVw+kBcIkp8DV46 EqixbeAxKolOG8HKWD/X/igR3sLVXG3oxsKTCt2hy2X+EBejKWnPyVj08XSPKUO0YA7K YBEL5DnoOTT9Ja4Lej61DN1Q2z8FNeVRLMRrPMbK6sSDC1e4dd2Oo5wYsuUHoNLcGVCh 2z4/65uYpHIhVQ4vo810cQQ3CXpBEazrdc/VMJWPu2Gc/abzQ4UUXm+drOIEeJsNn/WY MuiJuZ2fHtmvb7Flps3OUCWQ+mMFV5MKAl250olc5kkczX5WOBiXP3q2t8STYLDKTet/ Btsw== 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=KSxlVjMgrW5qwjCYnrj72dmboj0p6pyBucySQch5mhk=; b=rFudLwgOV6/oF8bq9lX9Uc2RgmJ1W/6EGOkBM9YytJpb+57NjkvWlr0PbuikSnWJy/ SP/Kjg1tMXNJhdcOQAFLU2JCTeGpZtXPOHpWfxf2oVZ+vDH1rKz89iUrBxzezzgddmxp UNB7FJwyrAvkB3/PjFbrfm7yBLeZvqJE1pnhqHOXjM4ooiWQrPE64LMWE9vlXOwBjQUu sEOHeqQFEYj4gr4YYvLr41mr1nNY4HjEdHgApNiPb7fE6MLlXxZZPMDm3er1dEkVjh0A +lbEMNjpLkOdkZOFSGycbIcKp/w/eRhEmDbYLGpOx66HCaebLdQQBg8bhU5znxTWgLjs JAtg== X-Gm-Message-State: APjAAAVqWn1yPbXgTgWy4vgOWEbyJefCk8AfZSJq71NWWB0XQjZVzDQj RDUmVstK9YyFbLWlmvnvRdwl1ZQN7AQ= X-Google-Smtp-Source: APXvYqxLelJYGTp4r+/BgFSn9UXINzMWaOq12pBm5rwumJ1S8Dn6vyyuHO7eDMRiIVu9T/0FI5PyBg== X-Received: by 2002:a63:1c1d:: with SMTP id c29mr63238665pgc.14.1577574776916; Sat, 28 Dec 2019 15:12:56 -0800 (PST) From: Richard Henderson To: qemu-devel@nongnu.org Subject: [PATCH v3 29/29] cputlb: Expand cpu_ldst_template.h in cputlb.c Date: Sun, 29 Dec 2019 10:11:24 +1100 Message-Id: <20191228231124.18307-30-richard.henderson@linaro.org> X-Mailer: git-send-email 2.20.1 In-Reply-To: <20191228231124.18307-1-richard.henderson@linaro.org> References: <20191228231124.18307-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::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: =?UTF-8?q?Alex=20Benn=C3=A9e?= , Aleksandar Markovic Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: pass (identity @linaro.org) 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: Alex Benn=C3=A9e Reviewed-by: Aleksandar Markovic Signed-off-by: Richard Henderson Tested-by: Philippe Mathieu-Daud=C3=A9 --- 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