From patchwork Tue Jun 4 20:33:25 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Richard Henderson X-Patchwork-Id: 165824 Delivered-To: patch@linaro.org Received: by 2002:a92:9e1a:0:0:0:0:0 with SMTP id q26csp6335567ili; Tue, 4 Jun 2019 13:42:36 -0700 (PDT) X-Google-Smtp-Source: APXvYqwWQGWNDtwlf0VXk2XpX0z0tIN5cVHDahHA4Li3j813HC3/izFvwPEStKPxb3FXbkFMOmRq X-Received: by 2002:a67:ec88:: with SMTP id h8mr9884642vsp.102.1559680956463; Tue, 04 Jun 2019 13:42:36 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1559680956; cv=none; d=google.com; s=arc-20160816; b=IdFqisrbimV7+z+z5B1upEpkiabUvX0Z4qDRTLME0WoBfV5OQbx1WHSjiuXSeXXENV jzJhpT/SSeXfz+99BDIax15xpNFn+MDtpEHWTnblEcVwJ5fqsbfCCfPLwtuBhdg4KR7h WBIwXWiAAFhwIlAWXKvAOpCLW3kP28ajaReLCH5RPbkr9xWRlfQCneZsJ5YDG0jHB8ys VaRHrS4+pnIXgjv1Zh4U7NnFL+QCik3UPzKDK0vMM3aUliipm1gPX/KlTtPWapjw1Roj gyTFX/N2ALODHj3lScukksj/atg4i4H/HJO4XzH3OMXyIMuvrcfyMfASH7uwkZPJkucV 2GVA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:list-subscribe:list-help:list-post:list-archive :list-unsubscribe:list-id:precedence:subject:references:in-reply-to :message-id:date:to:from:dkim-signature; bh=3eEZ43+foZOHsJH12yR7I4WMYSzG6ykvnQtbtEqnbDs=; b=idfnb28yQ8RtJFCdpgRCuE22rE28mWSNvrKOL+S2JLXqAYUuzU0xcJVVfkW6R0te/2 upr/M6PP6fywI/k20jHRdAROKJptxYQc1QRs4qREXDttVIVuMVyS/krTw/PEHRpmyPhV G/AHGBx4F65SqnydVAYEugU0fPkFfychL4XQmE/81Ym5iRL2rX7GxspsZ6m3x9uma/yd g+yP3T232BudCVZ4Np4dWptbO7Xmeel4cwfouCss7tG0FASo0HHyGfAP0wppVx3mirD7 nZTwD0qatz+2HtCL0a34e5x0aI+klhKTSRDEXGc3EXcHRD1lolHhgR/ao9wj4UDHJg+g gYVQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=fail header.i=@linaro.org header.s=google header.b=r3wNXQSW; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Return-Path: Received: from lists.gnu.org (lists.gnu.org. [209.51.188.17]) by mx.google.com with ESMTPS id g36si4429050uah.54.2019.06.04.13.42.36 for (version=TLS1 cipher=AES128-SHA bits=128/128); Tue, 04 Jun 2019 13:42:36 -0700 (PDT) Received-SPF: pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; Authentication-Results: mx.google.com; dkim=fail header.i=@linaro.org header.s=google header.b=r3wNXQSW; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: from localhost ([127.0.0.1]:57699 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1hYGGR-0008Cn-Si for patch@linaro.org; Tue, 04 Jun 2019 16:42:35 -0400 Received: from eggs.gnu.org ([209.51.188.92]:35734) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1hYG8R-00016S-Jl for qemu-devel@nongnu.org; Tue, 04 Jun 2019 16:34:20 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1hYG8Q-0004EM-4p for qemu-devel@nongnu.org; Tue, 04 Jun 2019 16:34:19 -0400 Received: from mail-oi1-x241.google.com ([2607:f8b0:4864:20::241]:40972) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1hYG8P-0004Cy-Vd for qemu-devel@nongnu.org; Tue, 04 Jun 2019 16:34:18 -0400 Received: by mail-oi1-x241.google.com with SMTP id b21so12668317oic.8 for ; Tue, 04 Jun 2019 13:34:17 -0700 (PDT) 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; bh=3eEZ43+foZOHsJH12yR7I4WMYSzG6ykvnQtbtEqnbDs=; b=r3wNXQSWE0KBY++rKoL85Ou3wukzAVz1/VJHrrErBFc899eCqZF0Kiy4b3MOQMEeP0 p33LgbNYFwbGh5JfkOZc6/EbSaO3c8fdgxLa13eJlQllWHnxAO4D+zE8oqbkVhor0Ut0 JJDz366FysAXDysVDzO8ncnoX80NA6NXCKeWU6CLemJi7S3jjYcNUxGjjXhQKTWhyBQ3 bc4DYN1TFBHpxhJ493f4eNQ3M1cmapQrhb0ZBKMnS+hvyaniQGGW/FHfdAqHuEQ6fxzs SJoTap9rLYSKYjhrzihC8qAD3ppUm9MTs89Psz+YbpdnDRfBIyCeK4y9Y2F37/pjFGOx TJnA== 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; bh=3eEZ43+foZOHsJH12yR7I4WMYSzG6ykvnQtbtEqnbDs=; b=rpgg4PDjlePJ/ps9EJoA8NYGfWoGPLUpCSGsrRH+P7TUtzmZysFnSGt3q+MJPa4nkc NTTL6BBA0B0/M6vRAQakrxb1HI85rZCtYSzFMA7/VRwhSXUSIglrYJqzdGSxMldOMQGm jUgBjthtgExEply21PDRFhOA6+7Ms9wiu7/5Wr3JEvg5991pjt0eBMK+MfD2+eOex1Wi 00330OlrEzx6CMG+p8rKjWCYZDq92wktmg3JQewpp+V8s8jvlhu5/EbLJK1gH/TJWVbk 2vP3fX6PA7JDeDhrB/80Fi2hGlWgPPkL/GzFOf38/j2c3Of0nwabdO+DujlvoDDTzyHU LV1w== X-Gm-Message-State: APjAAAWMJpuHoI2b2XxpvjFFPIDUs3XtW1cLdB6CkgAFbdqao/+pdotx 1lvckX7Fxz36bdzx/+Q9bQHDRH14IzTbIA== X-Received: by 2002:aca:3fc6:: with SMTP id m189mr3475894oia.124.1559680456690; Tue, 04 Jun 2019 13:34:16 -0700 (PDT) Received: from localhost.localdomain (200-56-192-86-cable.cybercable.net.mx. [200.56.192.86]) by smtp.gmail.com with ESMTPSA id h1sm5979901otj.78.2019.06.04.13.34.15 for (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Tue, 04 Jun 2019 13:34:15 -0700 (PDT) From: Richard Henderson To: qemu-devel@nongnu.org Date: Tue, 4 Jun 2019 15:33:25 -0500 Message-Id: <20190604203351.27778-14-richard.henderson@linaro.org> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20190604203351.27778-1-richard.henderson@linaro.org> References: <20190604203351.27778-1-richard.henderson@linaro.org> X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2607:f8b0:4864:20::241 Subject: [Qemu-devel] [PATCH v4 13/39] target/hppa: Use env_cpu, env_archcpu X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+patch=linaro.org@nongnu.org Sender: "Qemu-devel" Cleanup in the boilerplate that each target must define. Replace hppa_env_get_cpu with env_archcpu. The combination CPU(hppa_env_get_cpu) should have used ENV_GET_CPU to begin; use env_cpu now. Reviewed-by: Alistair Francis Reviewed-by: Peter Maydell Signed-off-by: Richard Henderson --- target/hppa/cpu.h | 5 ----- linux-user/hppa/cpu_loop.c | 2 +- target/hppa/helper.c | 3 +-- target/hppa/int_helper.c | 4 ++-- target/hppa/mem_helper.c | 10 ++++------ target/hppa/op_helper.c | 8 +++----- 6 files changed, 11 insertions(+), 21 deletions(-) -- 2.17.1 diff --git a/target/hppa/cpu.h b/target/hppa/cpu.h index 0cb1fc8800..75e6a91a5e 100644 --- a/target/hppa/cpu.h +++ b/target/hppa/cpu.h @@ -222,11 +222,6 @@ struct HPPACPU { QEMUTimer *alarm_timer; }; -static inline HPPACPU *hppa_env_get_cpu(CPUHPPAState *env) -{ - return container_of(env, HPPACPU, env); -} - #define ENV_OFFSET offsetof(HPPACPU, env) typedef CPUHPPAState CPUArchState; diff --git a/linux-user/hppa/cpu_loop.c b/linux-user/hppa/cpu_loop.c index 880955fdef..9915456a1d 100644 --- a/linux-user/hppa/cpu_loop.c +++ b/linux-user/hppa/cpu_loop.c @@ -105,7 +105,7 @@ static abi_ulong hppa_lws(CPUHPPAState *env) void cpu_loop(CPUHPPAState *env) { - CPUState *cs = CPU(hppa_env_get_cpu(env)); + CPUState *cs = env_cpu(env); target_siginfo_t info; abi_ulong ret; int trapnr; diff --git a/target/hppa/helper.c b/target/hppa/helper.c index 11c61b3ca2..0dcd105b88 100644 --- a/target/hppa/helper.c +++ b/target/hppa/helper.c @@ -71,8 +71,7 @@ void cpu_hppa_put_psw(CPUHPPAState *env, target_ureg psw) /* If PSW_P changes, it affects how we translate addresses. */ if ((psw ^ old_psw) & PSW_P) { #ifndef CONFIG_USER_ONLY - CPUState *src = CPU(hppa_env_get_cpu(env)); - tlb_flush_by_mmuidx(src, 0xf); + tlb_flush_by_mmuidx(env_cpu(env), 0xf); #endif } } diff --git a/target/hppa/int_helper.c b/target/hppa/int_helper.c index 8d5edd3a20..89241c31e7 100644 --- a/target/hppa/int_helper.c +++ b/target/hppa/int_helper.c @@ -77,7 +77,7 @@ void HELPER(write_eirr)(CPUHPPAState *env, target_ureg val) { env->cr[CR_EIRR] &= ~val; qemu_mutex_lock_iothread(); - eval_interrupt(hppa_env_get_cpu(env)); + eval_interrupt(env_archcpu(env)); qemu_mutex_unlock_iothread(); } @@ -85,7 +85,7 @@ void HELPER(write_eiem)(CPUHPPAState *env, target_ureg val) { env->cr[CR_EIEM] = val; qemu_mutex_lock_iothread(); - eval_interrupt(hppa_env_get_cpu(env)); + eval_interrupt(env_archcpu(env)); qemu_mutex_unlock_iothread(); } #endif /* !CONFIG_USER_ONLY */ diff --git a/target/hppa/mem_helper.c b/target/hppa/mem_helper.c index 0fd3ac6645..b12c5b5054 100644 --- a/target/hppa/mem_helper.c +++ b/target/hppa/mem_helper.c @@ -56,7 +56,7 @@ static hppa_tlb_entry *hppa_find_tlb(CPUHPPAState *env, vaddr addr) static void hppa_flush_tlb_ent(CPUHPPAState *env, hppa_tlb_entry *ent) { - CPUState *cs = CPU(hppa_env_get_cpu(env)); + CPUState *cs = env_cpu(env); unsigned i, n = 1 << (2 * ent->page_size); uint64_t addr = ent->va_b; @@ -329,7 +329,7 @@ static void ptlb_work(CPUState *cpu, run_on_cpu_data data) void HELPER(ptlb)(CPUHPPAState *env, target_ulong addr) { - CPUState *src = CPU(hppa_env_get_cpu(env)); + CPUState *src = env_cpu(env); CPUState *cpu; trace_hppa_tlb_ptlb(env); run_on_cpu_data data = RUN_ON_CPU_TARGET_PTR(addr); @@ -346,17 +346,15 @@ void HELPER(ptlb)(CPUHPPAState *env, target_ulong addr) number of pages/entries (we choose all), and is local to the cpu. */ void HELPER(ptlbe)(CPUHPPAState *env) { - CPUState *src = CPU(hppa_env_get_cpu(env)); trace_hppa_tlb_ptlbe(env); memset(env->tlb, 0, sizeof(env->tlb)); - tlb_flush_by_mmuidx(src, 0xf); + tlb_flush_by_mmuidx(env_cpu(env), 0xf); } void cpu_hppa_change_prot_id(CPUHPPAState *env) { if (env->psw & PSW_P) { - CPUState *src = CPU(hppa_env_get_cpu(env)); - tlb_flush_by_mmuidx(src, 0xf); + tlb_flush_by_mmuidx(env_cpu(env), 0xf); } } diff --git a/target/hppa/op_helper.c b/target/hppa/op_helper.c index 952e97a7d7..04d23c1b22 100644 --- a/target/hppa/op_helper.c +++ b/target/hppa/op_helper.c @@ -29,8 +29,7 @@ void QEMU_NORETURN HELPER(excp)(CPUHPPAState *env, int excp) { - HPPACPU *cpu = hppa_env_get_cpu(env); - CPUState *cs = CPU(cpu); + CPUState *cs = env_cpu(env); cs->exception_index = excp; cpu_loop_exit(cs); @@ -38,8 +37,7 @@ void QEMU_NORETURN HELPER(excp)(CPUHPPAState *env, int excp) void QEMU_NORETURN hppa_dynamic_excp(CPUHPPAState *env, int excp, uintptr_t ra) { - HPPACPU *cpu = hppa_env_get_cpu(env); - CPUState *cs = CPU(cpu); + CPUState *cs = env_cpu(env); cs->exception_index = excp; cpu_loop_exit_restore(cs, ra); @@ -630,7 +628,7 @@ target_ureg HELPER(read_interval_timer)(void) #ifndef CONFIG_USER_ONLY void HELPER(write_interval_timer)(CPUHPPAState *env, target_ureg val) { - HPPACPU *cpu = hppa_env_get_cpu(env); + HPPACPU *cpu = env_archcpu(env); uint64_t current = qemu_clock_get_ns(QEMU_CLOCK_VIRTUAL); uint64_t timeout;