qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: Richard Henderson <richard.henderson@linaro.org>
To: qemu-devel@nongnu.org
Cc: anjo@rev.ng, ale@rev.ng, philmd@linaro.org
Subject: [PATCH v2 09/24] accel/tcg: Remove CPUState.icount_decr_ptr
Date: Wed, 13 Sep 2023 19:44:20 -0700	[thread overview]
Message-ID: <20230914024435.1381329-10-richard.henderson@linaro.org> (raw)
In-Reply-To: <20230914024435.1381329-1-richard.henderson@linaro.org>

We can now access icount_decr directly.

Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
---
 include/exec/cpu-all.h | 1 -
 include/hw/core/cpu.h  | 2 --
 hw/core/cpu-common.c   | 4 ++--
 3 files changed, 2 insertions(+), 5 deletions(-)

diff --git a/include/exec/cpu-all.h b/include/exec/cpu-all.h
index c3c78ed8ab..3b01e4ee25 100644
--- a/include/exec/cpu-all.h
+++ b/include/exec/cpu-all.h
@@ -434,7 +434,6 @@ void tcg_exec_unrealizefn(CPUState *cpu);
 static inline void cpu_set_cpustate_pointers(ArchCPU *cpu)
 {
     cpu->parent_obj.env_ptr = &cpu->env;
-    cpu->parent_obj.icount_decr_ptr = &cpu->parent_obj.neg.icount_decr;
 }
 
 /* Validate correct placement of CPUArchState. */
diff --git a/include/hw/core/cpu.h b/include/hw/core/cpu.h
index 1f289136ec..44955af3bc 100644
--- a/include/hw/core/cpu.h
+++ b/include/hw/core/cpu.h
@@ -440,7 +440,6 @@ struct qemu_work_item;
  * @as: Pointer to the first AddressSpace, for the convenience of targets which
  *      only have a single AddressSpace
  * @env_ptr: Pointer to subclass-specific CPUArchState field.
- * @icount_decr_ptr: Pointer to IcountDecr field within subclass.
  * @gdb_regs: Additional GDB registers.
  * @gdb_num_regs: Number of total registers accessible to GDB.
  * @gdb_num_g_regs: Number of registers in GDB 'g' packets.
@@ -512,7 +511,6 @@ struct CPUState {
     MemoryRegion *memory;
 
     CPUArchState *env_ptr;
-    IcountDecr *icount_decr_ptr;
 
     CPUJumpCache *tb_jmp_cache;
 
diff --git a/hw/core/cpu-common.c b/hw/core/cpu-common.c
index ced66c2b34..08d5bbc873 100644
--- a/hw/core/cpu-common.c
+++ b/hw/core/cpu-common.c
@@ -86,7 +86,7 @@ void cpu_exit(CPUState *cpu)
     qatomic_set(&cpu->exit_request, 1);
     /* Ensure cpu_exec will see the exit request after TCG has exited.  */
     smp_wmb();
-    qatomic_set(&cpu->icount_decr_ptr->u16.high, -1);
+    qatomic_set(&cpu->neg.icount_decr.u16.high, -1);
 }
 
 static int cpu_common_gdb_read_register(CPUState *cpu, GByteArray *buf, int reg)
@@ -130,7 +130,7 @@ static void cpu_common_reset_hold(Object *obj)
     cpu->halted = cpu->start_powered_off;
     cpu->mem_io_pc = 0;
     cpu->icount_extra = 0;
-    qatomic_set(&cpu->icount_decr_ptr->u32, 0);
+    qatomic_set(&cpu->neg.icount_decr.u32, 0);
     cpu->can_do_io = 1;
     cpu->exception_index = -1;
     cpu->crash_occurred = false;
-- 
2.34.1



  parent reply	other threads:[~2023-09-14  2:46 UTC|newest]

Thread overview: 51+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-09-14  2:44 [PATCH v2 00/24] Reduce usage of CPUArchState in cputlb.c Richard Henderson
2023-09-14  2:44 ` [PATCH v2 01/24] target/arm: Replace TARGET_PAGE_ENTRY_EXTRA Richard Henderson
2023-09-14  2:44 ` [PATCH v2 02/24] accel/tcg: Move CPUTLB definitions from cpu-defs.h Richard Henderson
2023-09-14 10:47   ` Anton Johansson via
2023-09-14  2:44 ` [PATCH v2 03/24] qom: Propagate alignment through type system Richard Henderson
2023-09-14  5:59   ` Philippe Mathieu-Daudé
2023-09-14  2:44 ` [PATCH v2 04/24] target/*: Use __alignof not __alignof__ Richard Henderson
2023-09-14  6:01   ` Philippe Mathieu-Daudé
2023-09-14  2:44 ` [PATCH v2 05/24] target/arm: Remove size and alignment for cpu subclasses Richard Henderson
2023-09-14  6:02   ` Philippe Mathieu-Daudé
2023-09-14  2:44 ` [PATCH v2 06/24] target/*: Add instance_align to all cpu base classes Richard Henderson
2023-09-14  6:04   ` Philippe Mathieu-Daudé
2023-09-14  2:44 ` [PATCH v2 07/24] accel/tcg: Validate placement of CPUNegativeOffsetState Richard Henderson
2023-09-14 10:19   ` Anton Johansson via
2023-09-14  2:44 ` [PATCH v2 08/24] accel/tcg: Move CPUNegativeOffsetState into CPUState Richard Henderson
2023-09-14 10:24   ` Anton Johansson via
2023-09-14  2:44 ` Richard Henderson [this message]
2023-09-14 10:28   ` [PATCH v2 09/24] accel/tcg: Remove CPUState.icount_decr_ptr Anton Johansson via
2023-09-14  2:44 ` [PATCH v2 10/24] accel/tcg: Move can_do_io to CPUNegativeOffsetState Richard Henderson
2023-09-14  6:08   ` Philippe Mathieu-Daudé
2023-09-14  2:44 ` [PATCH v2 11/24] accel/tcg: Remove cpu_neg() Richard Henderson
2023-09-14  6:08   ` Philippe Mathieu-Daudé
2023-09-14  2:44 ` [PATCH v2 12/24] tcg: Rename cpu_env to tcg_env Richard Henderson
2023-09-14  6:10   ` Philippe Mathieu-Daudé
2023-09-14 15:30     ` Philippe Mathieu-Daudé
2023-09-14  2:44 ` [PATCH v2 13/24] accel/tcg: Replace CPUState.env_ptr with cpu_env() Richard Henderson
2023-09-14 10:38   ` Anton Johansson via
2023-09-14 18:12   ` Philippe Mathieu-Daudé
2023-09-14 18:15     ` Richard Henderson
2023-09-14 18:38       ` Philippe Mathieu-Daudé
2023-09-14 18:53         ` Richard Henderson
2023-09-14  2:44 ` [PATCH v2 14/24] accel/tcg: Remove cpu_set_cpustate_pointers Richard Henderson
2023-09-14  6:12   ` Philippe Mathieu-Daudé
2023-09-14  2:44 ` [PATCH v2 15/24] accel/tcg: Remove env_neg() Richard Henderson
2023-09-14 10:39   ` Anton Johansson via
2023-09-14  2:44 ` [PATCH v2 16/24] tcg: Remove TCGContext.tlb_fast_offset Richard Henderson
2023-09-14 10:43   ` Anton Johansson via
2023-09-14  2:44 ` [PATCH v2 17/24] accel/tcg: Modify tlb_*() to use CPUState Richard Henderson
2023-09-14  2:44 ` [PATCH v2 18/24] accel/tcg: Modify probe_access_internal() " Richard Henderson
2023-09-14  6:15   ` Philippe Mathieu-Daudé
2023-09-14  2:44 ` [PATCH v2 19/24] accel/tcg: Modifies memory access functions " Richard Henderson
2023-09-14  6:18   ` Philippe Mathieu-Daudé
2023-09-14  2:44 ` [PATCH v2 20/24] accel/tcg: Modify atomic_mmu_lookup() " Richard Henderson
2023-09-14  6:20   ` Philippe Mathieu-Daudé
2023-09-14  2:44 ` [PATCH v2 21/24] accel/tcg: Use CPUState in atomicity helpers Richard Henderson
2023-09-14  6:22   ` Philippe Mathieu-Daudé
2023-09-14  2:44 ` [PATCH v2 22/24] accel/tcg: Remove env_tlb() Richard Henderson
2023-09-14 15:44   ` Philippe Mathieu-Daudé
2023-09-14 16:24     ` Anton Johansson via
2023-09-14  2:44 ` [PATCH v2 23/24] accel/tcg: Unify user and softmmu do_[st|ld]*_mmu() Richard Henderson
2023-09-14  2:44 ` [PATCH v2 24/24] accel/tcg: move ld/st helpers to ldst_common.c.inc Richard Henderson

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=20230914024435.1381329-10-richard.henderson@linaro.org \
    --to=richard.henderson@linaro.org \
    --cc=ale@rev.ng \
    --cc=anjo@rev.ng \
    --cc=philmd@linaro.org \
    --cc=qemu-devel@nongnu.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).