[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH 22/24] accel/tcg: Move @tcg_cflags from CPUState to TCG AccelCPUS
From: |
Philippe Mathieu-Daudé |
Subject: |
[PATCH 22/24] accel/tcg: Move @tcg_cflags from CPUState to TCG AccelCPUState |
Date: |
Mon, 29 Apr 2024 00:14:48 +0200 |
@tcg_cflags is specific to TCG accelerator, move it to
its AccelCPUState.
Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org>
---
accel/tcg/vcpu-state.h | 2 ++
include/hw/core/cpu.h | 4 +---
accel/tcg/cpu-exec.c | 6 +++---
linux-user/main.c | 2 +-
4 files changed, 7 insertions(+), 7 deletions(-)
diff --git a/accel/tcg/vcpu-state.h b/accel/tcg/vcpu-state.h
index 5b31c801d8..1cdca0e0d4 100644
--- a/accel/tcg/vcpu-state.h
+++ b/accel/tcg/vcpu-state.h
@@ -11,9 +11,11 @@
/**
* AccelCPUState:
+ * @cflags: Pre-computed cflags for this cpu.
* @mem_io_pc: Host Program Counter at which the memory was accessed.
*/
struct AccelCPUState {
+ uint32_t cflags;
uint32_t cflags_next_tb;
sigjmp_buf jmp_env;
diff --git a/include/hw/core/cpu.h b/include/hw/core/cpu.h
index 99709270fa..f6bafa090a 100644
--- a/include/hw/core/cpu.h
+++ b/include/hw/core/cpu.h
@@ -396,9 +396,8 @@ struct qemu_work_item;
* to a cluster this will be UNASSIGNED_CLUSTER_INDEX; otherwise it will
* be the same as the cluster-id property of the CPU object's
TYPE_CPU_CLUSTER
* QOM parent.
- * Under TCG this value is propagated to @tcg_cflags.
+ * Under TCG this value is propagated to @accel->cflags.
* See TranslationBlock::TCG CF_CLUSTER_MASK.
- * @tcg_cflags: Pre-computed cflags for this cpu.
* @nr_cores: Number of cores within this CPU package.
* @nr_threads: Number of threads within this CPU core.
* @running: #true if CPU is currently running (lockless).
@@ -515,7 +514,6 @@ struct CPUState {
/* TODO Move common fields from CPUArchState here. */
int cpu_index;
int cluster_index;
- uint32_t tcg_cflags;
uint32_t halted;
int32_t exception_index;
diff --git a/accel/tcg/cpu-exec.c b/accel/tcg/cpu-exec.c
index 8f8e1fa948..84fd041aec 100644
--- a/accel/tcg/cpu-exec.c
+++ b/accel/tcg/cpu-exec.c
@@ -149,17 +149,17 @@ static void init_delay_params(SyncClocks *sc, const
CPUState *cpu)
bool tcg_cflags_has(CPUState *cpu, uint32_t flags)
{
- return cpu->tcg_cflags & flags;
+ return cpu->accel->cflags & flags;
}
void tcg_cflags_set(CPUState *cpu, uint32_t flags)
{
- cpu->tcg_cflags |= flags;
+ cpu->accel->cflags |= flags;
}
uint32_t curr_cflags(CPUState *cpu)
{
- uint32_t cflags = cpu->tcg_cflags;
+ uint32_t cflags = cpu->accel->cflags;
/*
* Record gdb single-step. We should be exiting the TB by raising
diff --git a/linux-user/main.c b/linux-user/main.c
index 5f7f03f4b0..8be06627da 100644
--- a/linux-user/main.c
+++ b/linux-user/main.c
@@ -241,7 +241,7 @@ CPUArchState *cpu_copy(CPUArchState *env)
/* Reset non arch specific state */
cpu_reset(new_cpu);
- new_cpu->tcg_cflags = cpu->tcg_cflags;
+ new_cpu->accel->cflags = cpu->accel->cflags;
memcpy(new_env, env, sizeof(CPUArchState));
#if defined(TARGET_I386) || defined(TARGET_X86_64)
new_env->gdt.base = target_mmap(0, sizeof(uint64_t) * TARGET_GDT_ENTRIES,
--
2.41.0
- Re: [PATCH 18/24] accel/tcg: Move @cflags_next_tb from CPUState to TCG AccelCPUState, (continued)
- [PATCH 20/24] accel/tcg: Move @tb_jmp_cache from CPUState to TCG AccelCPUState, Philippe Mathieu-Daudé, 2024/04/28
- [PATCH 21/24] accel/tcg: Remove NULL check in tcg_flush_jmp_cache(), Philippe Mathieu-Daudé, 2024/04/28
- [PATCH 19/24] accel/tcg: Move @iommu_notifiers from CPUState to TCG AccelCPUState, Philippe Mathieu-Daudé, 2024/04/28
- [PATCH 24/24] accel/tcg: Move icount fields from CPUState to TCG AccelCPUState, Philippe Mathieu-Daudé, 2024/04/28
- [PATCH 23/24] accel/tcg: Restrict icount to system emulation, Philippe Mathieu-Daudé, 2024/04/28
- [PATCH 22/24] accel/tcg: Move @tcg_cflags from CPUState to TCG AccelCPUState,
Philippe Mathieu-Daudé <=
- Re: [PATCH 00/24] exec: Rework around CPUState user fields (part 2), Philippe Mathieu-Daudé, 2024/04/28
- Re: [PATCH 00/24] exec: Rework around CPUState user fields (part 2), Philippe Mathieu-Daudé, 2024/04/29