From: Thomas Huth <thuth@redhat.com>
To: qemu-devel@nongnu.org
Cc: "Peter Maydell" <peter.maydell@linaro.org>,
"Philippe Mathieu-Daudé" <philmd@linaro.org>,
"Richard Henderson" <richard.henderson@linaro.org>
Subject: [PULL 46/55] target/mips: Prefer fast cpu_env() over slower CPU QOM cast macro
Date: Tue, 12 Mar 2024 13:43:30 +0100 [thread overview]
Message-ID: <20240312124339.761630-47-thuth@redhat.com> (raw)
In-Reply-To: <20240312124339.761630-1-thuth@redhat.com>
From: Philippe Mathieu-Daudé <philmd@linaro.org>
Mechanical patch produced running the command documented
in scripts/coccinelle/cpu_env.cocci_template header.
Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Message-ID: <20240129164514.73104-19-philmd@linaro.org>
Signed-off-by: Thomas Huth <thuth@redhat.com>
---
target/mips/cpu.c | 15 ++++----------
target/mips/gdbstub.c | 6 ++----
target/mips/kvm.c | 27 +++++++++----------------
target/mips/sysemu/physaddr.c | 3 +--
target/mips/tcg/exception.c | 3 +--
target/mips/tcg/op_helper.c | 8 +++-----
target/mips/tcg/sysemu/special_helper.c | 3 +--
target/mips/tcg/sysemu/tlb_helper.c | 6 ++----
target/mips/tcg/translate.c | 3 +--
9 files changed, 24 insertions(+), 50 deletions(-)
diff --git a/target/mips/cpu.c b/target/mips/cpu.c
index 98ef073631..8d8f690a53 100644
--- a/target/mips/cpu.c
+++ b/target/mips/cpu.c
@@ -80,8 +80,7 @@ static void fpu_dump_state(CPUMIPSState *env, FILE *f, int flags)
static void mips_cpu_dump_state(CPUState *cs, FILE *f, int flags)
{
- MIPSCPU *cpu = MIPS_CPU(cs);
- CPUMIPSState *env = &cpu->env;
+ CPUMIPSState *env = cpu_env(cs);
int i;
qemu_fprintf(f, "pc=0x" TARGET_FMT_lx " HI=0x" TARGET_FMT_lx
@@ -123,9 +122,7 @@ void cpu_set_exception_base(int vp_index, target_ulong address)
static void mips_cpu_set_pc(CPUState *cs, vaddr value)
{
- MIPSCPU *cpu = MIPS_CPU(cs);
-
- mips_env_set_pc(&cpu->env, value);
+ mips_env_set_pc(cpu_env(cs), value);
}
static vaddr mips_cpu_get_pc(CPUState *cs)
@@ -137,8 +134,7 @@ static vaddr mips_cpu_get_pc(CPUState *cs)
static bool mips_cpu_has_work(CPUState *cs)
{
- MIPSCPU *cpu = MIPS_CPU(cs);
- CPUMIPSState *env = &cpu->env;
+ CPUMIPSState *env = cpu_env(cs);
bool has_work = false;
/*
@@ -433,10 +429,7 @@ static void mips_cpu_reset_hold(Object *obj)
static void mips_cpu_disas_set_info(CPUState *s, disassemble_info *info)
{
- MIPSCPU *cpu = MIPS_CPU(s);
- CPUMIPSState *env = &cpu->env;
-
- if (!(env->insn_flags & ISA_NANOMIPS32)) {
+ if (!(cpu_env(s)->insn_flags & ISA_NANOMIPS32)) {
#if TARGET_BIG_ENDIAN
info->print_insn = print_insn_big_mips;
#else
diff --git a/target/mips/gdbstub.c b/target/mips/gdbstub.c
index 62d7b72407..169d47416a 100644
--- a/target/mips/gdbstub.c
+++ b/target/mips/gdbstub.c
@@ -25,8 +25,7 @@
int mips_cpu_gdb_read_register(CPUState *cs, GByteArray *mem_buf, int n)
{
- MIPSCPU *cpu = MIPS_CPU(cs);
- CPUMIPSState *env = &cpu->env;
+ CPUMIPSState *env = cpu_env(cs);
if (n < 32) {
return gdb_get_regl(mem_buf, env->active_tc.gpr[n]);
@@ -78,8 +77,7 @@ int mips_cpu_gdb_read_register(CPUState *cs, GByteArray *mem_buf, int n)
int mips_cpu_gdb_write_register(CPUState *cs, uint8_t *mem_buf, int n)
{
- MIPSCPU *cpu = MIPS_CPU(cs);
- CPUMIPSState *env = &cpu->env;
+ CPUMIPSState *env = cpu_env(cs);
target_ulong tmp;
tmp = ldtul_p(mem_buf);
diff --git a/target/mips/kvm.c b/target/mips/kvm.c
index 15d0cf9adb..6c52e59f55 100644
--- a/target/mips/kvm.c
+++ b/target/mips/kvm.c
@@ -63,8 +63,7 @@ int kvm_arch_irqchip_create(KVMState *s)
int kvm_arch_init_vcpu(CPUState *cs)
{
- MIPSCPU *cpu = MIPS_CPU(cs);
- CPUMIPSState *env = &cpu->env;
+ CPUMIPSState *env = cpu_env(cs);
int ret = 0;
qemu_add_vm_change_state_handler(kvm_mips_update_state, cs);
@@ -460,8 +459,7 @@ static inline int kvm_mips_change_one_reg(CPUState *cs, uint64_t reg_id,
*/
static int kvm_mips_save_count(CPUState *cs)
{
- MIPSCPU *cpu = MIPS_CPU(cs);
- CPUMIPSState *env = &cpu->env;
+ CPUMIPSState *env = cpu_env(cs);
uint64_t count_ctl;
int err, ret = 0;
@@ -502,8 +500,7 @@ static int kvm_mips_save_count(CPUState *cs)
*/
static int kvm_mips_restore_count(CPUState *cs)
{
- MIPSCPU *cpu = MIPS_CPU(cs);
- CPUMIPSState *env = &cpu->env;
+ CPUMIPSState *env = cpu_env(cs);
uint64_t count_ctl;
int err_dc, err, ret = 0;
@@ -590,8 +587,7 @@ static void kvm_mips_update_state(void *opaque, bool running, RunState state)
static int kvm_mips_put_fpu_registers(CPUState *cs, int level)
{
- MIPSCPU *cpu = MIPS_CPU(cs);
- CPUMIPSState *env = &cpu->env;
+ CPUMIPSState *env = cpu_env(cs);
int err, ret = 0;
unsigned int i;
@@ -670,8 +666,7 @@ static int kvm_mips_put_fpu_registers(CPUState *cs, int level)
static int kvm_mips_get_fpu_registers(CPUState *cs)
{
- MIPSCPU *cpu = MIPS_CPU(cs);
- CPUMIPSState *env = &cpu->env;
+ CPUMIPSState *env = cpu_env(cs);
int err, ret = 0;
unsigned int i;
@@ -751,8 +746,7 @@ static int kvm_mips_get_fpu_registers(CPUState *cs)
static int kvm_mips_put_cp0_registers(CPUState *cs, int level)
{
- MIPSCPU *cpu = MIPS_CPU(cs);
- CPUMIPSState *env = &cpu->env;
+ CPUMIPSState *env = cpu_env(cs);
int err, ret = 0;
(void)level;
@@ -974,8 +968,7 @@ static int kvm_mips_put_cp0_registers(CPUState *cs, int level)
static int kvm_mips_get_cp0_registers(CPUState *cs)
{
- MIPSCPU *cpu = MIPS_CPU(cs);
- CPUMIPSState *env = &cpu->env;
+ CPUMIPSState *env = cpu_env(cs);
int err, ret = 0;
err = kvm_mips_get_one_reg(cs, KVM_REG_MIPS_CP0_INDEX, &env->CP0_Index);
@@ -1181,8 +1174,7 @@ static int kvm_mips_get_cp0_registers(CPUState *cs)
int kvm_arch_put_registers(CPUState *cs, int level)
{
- MIPSCPU *cpu = MIPS_CPU(cs);
- CPUMIPSState *env = &cpu->env;
+ CPUMIPSState *env = cpu_env(cs);
struct kvm_regs regs;
int ret;
int i;
@@ -1217,8 +1209,7 @@ int kvm_arch_put_registers(CPUState *cs, int level)
int kvm_arch_get_registers(CPUState *cs)
{
- MIPSCPU *cpu = MIPS_CPU(cs);
- CPUMIPSState *env = &cpu->env;
+ CPUMIPSState *env = cpu_env(cs);
int ret = 0;
struct kvm_regs regs;
int i;
diff --git a/target/mips/sysemu/physaddr.c b/target/mips/sysemu/physaddr.c
index 13c8bc8f47..5c5184e136 100644
--- a/target/mips/sysemu/physaddr.c
+++ b/target/mips/sysemu/physaddr.c
@@ -230,8 +230,7 @@ int get_physical_address(CPUMIPSState *env, hwaddr *physical,
hwaddr mips_cpu_get_phys_page_debug(CPUState *cs, vaddr addr)
{
- MIPSCPU *cpu = MIPS_CPU(cs);
- CPUMIPSState *env = &cpu->env;
+ CPUMIPSState *env = cpu_env(cs);
hwaddr phys_addr;
int prot;
diff --git a/target/mips/tcg/exception.c b/target/mips/tcg/exception.c
index da49a93912..13275d1ded 100644
--- a/target/mips/tcg/exception.c
+++ b/target/mips/tcg/exception.c
@@ -79,8 +79,7 @@ void helper_wait(CPUMIPSState *env)
void mips_cpu_synchronize_from_tb(CPUState *cs, const TranslationBlock *tb)
{
- MIPSCPU *cpu = MIPS_CPU(cs);
- CPUMIPSState *env = &cpu->env;
+ CPUMIPSState *env = cpu_env(cs);
tcg_debug_assert(!(cs->tcg_cflags & CF_PCREL));
env->active_tc.PC = tb->pc;
diff --git a/target/mips/tcg/op_helper.c b/target/mips/tcg/op_helper.c
index 98935b5e64..65403f1a87 100644
--- a/target/mips/tcg/op_helper.c
+++ b/target/mips/tcg/op_helper.c
@@ -279,8 +279,7 @@ void mips_cpu_do_unaligned_access(CPUState *cs, vaddr addr,
MMUAccessType access_type,
int mmu_idx, uintptr_t retaddr)
{
- MIPSCPU *cpu = MIPS_CPU(cs);
- CPUMIPSState *env = &cpu->env;
+ CPUMIPSState *env = cpu_env(cs);
int error_code = 0;
int excp;
@@ -306,9 +305,8 @@ void mips_cpu_do_transaction_failed(CPUState *cs, hwaddr physaddr,
int mmu_idx, MemTxAttrs attrs,
MemTxResult response, uintptr_t retaddr)
{
- MIPSCPU *cpu = MIPS_CPU(cs);
- MIPSCPUClass *mcc = MIPS_CPU_GET_CLASS(cpu);
- CPUMIPSState *env = &cpu->env;
+ MIPSCPUClass *mcc = MIPS_CPU_GET_CLASS(cs);
+ CPUMIPSState *env = cpu_env(cs);
if (access_type == MMU_INST_FETCH) {
do_raise_exception(env, EXCP_IBE, retaddr);
diff --git a/target/mips/tcg/sysemu/special_helper.c b/target/mips/tcg/sysemu/special_helper.c
index 518d3fbc34..5baa25348e 100644
--- a/target/mips/tcg/sysemu/special_helper.c
+++ b/target/mips/tcg/sysemu/special_helper.c
@@ -90,8 +90,7 @@ static void debug_post_eret(CPUMIPSState *env)
bool mips_io_recompile_replay_branch(CPUState *cs, const TranslationBlock *tb)
{
- MIPSCPU *cpu = MIPS_CPU(cs);
- CPUMIPSState *env = &cpu->env;
+ CPUMIPSState *env = cpu_env(cs);
if ((env->hflags & MIPS_HFLAG_BMASK) != 0
&& !(cs->tcg_cflags & CF_PCREL) && env->active_tc.PC != tb->pc) {
diff --git a/target/mips/tcg/sysemu/tlb_helper.c b/target/mips/tcg/sysemu/tlb_helper.c
index cdae42ffdd..119eae771e 100644
--- a/target/mips/tcg/sysemu/tlb_helper.c
+++ b/target/mips/tcg/sysemu/tlb_helper.c
@@ -906,8 +906,7 @@ bool mips_cpu_tlb_fill(CPUState *cs, vaddr address, int size,
MMUAccessType access_type, int mmu_idx,
bool probe, uintptr_t retaddr)
{
- MIPSCPU *cpu = MIPS_CPU(cs);
- CPUMIPSState *env = &cpu->env;
+ CPUMIPSState *env = cpu_env(cs);
hwaddr physical;
int prot;
int ret = TLBRET_BADADDR;
@@ -1340,8 +1339,7 @@ void mips_cpu_do_interrupt(CPUState *cs)
bool mips_cpu_exec_interrupt(CPUState *cs, int interrupt_request)
{
if (interrupt_request & CPU_INTERRUPT_HARD) {
- MIPSCPU *cpu = MIPS_CPU(cs);
- CPUMIPSState *env = &cpu->env;
+ CPUMIPSState *env = cpu_env(cs);
if (cpu_mips_hw_interrupts_enabled(env) &&
cpu_mips_hw_interrupts_pending(env)) {
diff --git a/target/mips/tcg/translate.c b/target/mips/tcg/translate.c
index 3ba2101647..06c108cc9c 100644
--- a/target/mips/tcg/translate.c
+++ b/target/mips/tcg/translate.c
@@ -15566,8 +15566,7 @@ void mips_restore_state_to_opc(CPUState *cs,
const TranslationBlock *tb,
const uint64_t *data)
{
- MIPSCPU *cpu = MIPS_CPU(cs);
- CPUMIPSState *env = &cpu->env;
+ CPUMIPSState *env = cpu_env(cs);
env->active_tc.PC = data[0];
env->hflags &= ~MIPS_HFLAG_BMASK;
--
2.44.0
next prev parent reply other threads:[~2024-03-12 12:48 UTC|newest]
Thread overview: 57+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-03-12 12:42 [PULL 00/55] Misc ERRP_GUARD() and cpu_env() patches Thomas Huth
2024-03-12 12:42 ` [PULL 01/55] hw/cxl/cxl-host: Fix missing ERRP_GUARD() in cxl_fixed_memory_window_config() Thomas Huth
2024-03-12 12:42 ` [PULL 02/55] hw/display/macfb: Fix missing ERRP_GUARD() in macfb_nubus_realize() Thomas Huth
2024-03-12 12:42 ` [PULL 03/55] hw/mem/cxl_type3: Fix missing ERRP_GUARD() in ct3_realize() Thomas Huth
2024-03-12 12:42 ` [PULL 04/55] hw/misc/xlnx-versal-trng: Check returned bool in trng_prop_fault_event_set() Thomas Huth
2024-03-12 12:42 ` [PULL 05/55] hw/pci-bridge/cxl_upstream: Fix missing ERRP_GUARD() in cxl_usp_realize() Thomas Huth
2024-03-12 12:42 ` [PULL 06/55] hw/intc: Check @errp to handle the error of IOAPICCommonClass.realize() Thomas Huth
2024-03-12 12:42 ` [PULL 07/55] error: Add error_vprepend() in comment of ERRP_GUARD() rules Thomas Huth
2024-03-12 12:42 ` [PULL 08/55] backends/iommufd: Fix missing ERRP_GUARD() for error_prepend() Thomas Huth
2024-03-12 12:42 ` [PULL 09/55] block: " Thomas Huth
2024-03-12 12:42 ` [PULL 10/55] block/copy-before-write: " Thomas Huth
2024-03-12 12:42 ` [PULL 11/55] block/nbd: " Thomas Huth
2024-03-12 12:42 ` [PULL 12/55] block/nvme: " Thomas Huth
2024-03-12 12:42 ` [PULL 13/55] block/qcow2-bitmap: " Thomas Huth
2024-03-12 12:42 ` [PULL 14/55] block/qcow2: " Thomas Huth
2024-03-12 12:42 ` [PULL 15/55] block/qed: " Thomas Huth
2024-03-12 12:43 ` [PULL 16/55] block/snapshot: " Thomas Huth
2024-03-12 12:43 ` [PULL 17/55] block/vdi: " Thomas Huth
2024-03-12 12:43 ` [PULL 18/55] block/vmdk: " Thomas Huth
2024-03-12 12:43 ` [PULL 19/55] block/virtio-blk: " Thomas Huth
2024-03-12 12:43 ` [PULL 20/55] hw/scsi/vhost-scsi: " Thomas Huth
2024-03-12 12:43 ` [PULL 21/55] hw/vfio/ap: " Thomas Huth
2024-03-12 12:43 ` [PULL 22/55] hw/vfio/container: " Thomas Huth
2024-03-12 12:43 ` [PULL 23/55] hw/vfio/helpers: " Thomas Huth
2024-03-12 12:43 ` [PULL 24/55] hw/vfio/iommufd: " Thomas Huth
2024-03-12 12:43 ` [PULL 25/55] hw/vfio/pci-quirks: " Thomas Huth
2024-03-12 12:43 ` [PULL 26/55] hw/vfio/pci: " Thomas Huth
2024-03-12 12:43 ` [PULL 27/55] hw/vfio/platform: " Thomas Huth
2024-03-12 12:43 ` [PULL 28/55] hw/virtio/vhost-vsock: " Thomas Huth
2024-03-12 12:43 ` [PULL 29/55] hw/virtio/vhost: " Thomas Huth
2024-03-12 12:43 ` [PULL 30/55] migration/option: " Thomas Huth
2024-03-12 12:43 ` [PULL 31/55] net/vhost-vdpa: " Thomas Huth
2024-03-12 12:43 ` [PULL 32/55] target/s390x/cpu_models: " Thomas Huth
2024-03-12 12:43 ` [PULL 33/55] error: Move ERRP_GUARD() to the beginning of the function Thomas Huth
2024-03-12 12:43 ` [PULL 34/55] bulk: Access existing variables initialized to &S->F when available Thomas Huth
2024-03-12 12:43 ` [PULL 35/55] hw/core: Declare CPUArchId::cpu as CPUState instead of Object Thomas Huth
2024-03-12 12:43 ` [PULL 36/55] bulk: Call in place single use cpu_env() Thomas Huth
2024-03-12 12:43 ` [PULL 37/55] target: Replace CPU_GET_CLASS(cpu -> obj) in cpu_reset_hold() handler Thomas Huth
2024-03-12 12:43 ` [PULL 38/55] target/alpha: Prefer fast cpu_env() over slower CPU QOM cast macro Thomas Huth
2024-03-12 12:43 ` [PULL 39/55] target/avr: " Thomas Huth
2024-03-12 12:43 ` [PULL 40/55] target/cris: " Thomas Huth
2024-03-12 12:43 ` [PULL 41/55] target/hexagon: " Thomas Huth
2024-03-12 12:43 ` [PULL 42/55] target/i386/hvf: Use CPUState typedef Thomas Huth
2024-03-12 12:43 ` [PULL 43/55] target/loongarch: Prefer fast cpu_env() over slower CPU QOM cast macro Thomas Huth
2024-03-12 12:43 ` [PULL 44/55] target/m68k: " Thomas Huth
2024-03-12 12:43 ` [PULL 45/55] target/microblaze: " Thomas Huth
2024-03-12 12:43 ` Thomas Huth [this message]
2024-03-12 12:43 ` [PULL 47/55] target/nios2: " Thomas Huth
2024-03-12 12:43 ` [PULL 48/55] target/openrisc: " Thomas Huth
2024-03-12 12:43 ` [PULL 49/55] target/ppc: " Thomas Huth
2024-03-12 12:43 ` [PULL 50/55] target/rx: " Thomas Huth
2024-03-12 12:43 ` [PULL 51/55] target/sh4: " Thomas Huth
2024-03-12 12:43 ` [PULL 52/55] target/sparc: " Thomas Huth
2024-03-12 12:43 ` [PULL 53/55] target/tricore: " Thomas Huth
2024-03-12 12:43 ` [PULL 54/55] target/xtensa: " Thomas Huth
2024-03-12 12:43 ` [PULL 55/55] user: " Thomas Huth
2024-03-12 21:31 ` [PULL 00/55] Misc ERRP_GUARD() and cpu_env() patches Peter Maydell
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20240312124339.761630-47-thuth@redhat.com \
--to=thuth@redhat.com \
--cc=peter.maydell@linaro.org \
--cc=philmd@linaro.org \
--cc=qemu-devel@nongnu.org \
--cc=richard.henderson@linaro.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).