[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH v22 16/17] i386: gdbstub: only write CR0/CR2/CR3/EFER for SOFTMMU
From: |
Claudio Fontana |
Subject: |
[PATCH v22 16/17] i386: gdbstub: only write CR0/CR2/CR3/EFER for SOFTMMU |
Date: |
Wed, 24 Feb 2021 14:34:27 +0100 |
Signed-off-by: Claudio Fontana <cfontana@suse.de>
Cc: Paolo Bonzini <pbonzini@redhat.com>
---
target/i386/gdbstub.c | 16 ++++++++++++++++
1 file changed, 16 insertions(+)
diff --git a/target/i386/gdbstub.c b/target/i386/gdbstub.c
index 41e265fc67..9f505d6ee3 100644
--- a/target/i386/gdbstub.c
+++ b/target/i386/gdbstub.c
@@ -383,26 +383,38 @@ int x86_cpu_gdb_write_register(CPUState *cs, uint8_t
*mem_buf, int n)
case IDX_CTL_CR0_REG:
if (env->hflags & HF_CS64_MASK) {
+#ifdef CONFIG_SOFTMMU
cpu_x86_update_cr0(env, ldq_p(mem_buf));
+#endif
return 8;
}
+#ifdef CONFIG_SOFTMMU
cpu_x86_update_cr0(env, ldl_p(mem_buf));
+#endif
return 4;
case IDX_CTL_CR2_REG:
if (env->hflags & HF_CS64_MASK) {
+#ifdef CONFIG_SOFTMMU
env->cr[2] = ldq_p(mem_buf);
+#endif
return 8;
}
+#ifdef CONFIG_SOFTMMU
env->cr[2] = ldl_p(mem_buf);
+#endif
return 4;
case IDX_CTL_CR3_REG:
if (env->hflags & HF_CS64_MASK) {
+#ifdef CONFIG_SOFTMMU
cpu_x86_update_cr3(env, ldq_p(mem_buf));
+#endif
return 8;
}
+#ifdef CONFIG_SOFTMMU
cpu_x86_update_cr3(env, ldl_p(mem_buf));
+#endif
return 4;
case IDX_CTL_CR4_REG:
@@ -427,10 +439,14 @@ int x86_cpu_gdb_write_register(CPUState *cs, uint8_t
*mem_buf, int n)
case IDX_CTL_EFER_REG:
if (env->hflags & HF_CS64_MASK) {
+#ifdef CONFIG_SOFTMMU
cpu_load_efer(env, ldq_p(mem_buf));
+#endif
return 8;
}
+#ifdef CONFIG_SOFTMMU
cpu_load_efer(env, ldl_p(mem_buf));
+#endif
return 4;
}
--
2.26.2
- Re: [PATCH v22 13/17] i386: split svm_helper into sysemu and stub-only user, (continued)
[PATCH v22 15/17] i386: split off sysemu part of cpu.c, Claudio Fontana, 2021/02/24
Re: [PATCH v22 00/17] i386 cleanup PART 2, no-reply, 2021/02/24
Re: [PATCH v22 00/17] i386 cleanup PART 2, Philippe Mathieu-Daudé, 2021/02/24