summaryrefslogtreecommitdiffstats
path: root/include/qom
diff options
context:
space:
mode:
authorRichard Henderson2017-10-16 04:02:42 +0200
committerRichard Henderson2017-10-24 22:00:13 +0200
commit55c3ceef61fcf06fc98ddc752b7cce788ce7680b (patch)
tree39cb3c0c16d33de6491e3dc7fa5a71933463490f /include/qom
parenttcg: Remove TCGV_EQUAL* (diff)
downloadqemu-55c3ceef61fcf06fc98ddc752b7cce788ce7680b.tar.gz
qemu-55c3ceef61fcf06fc98ddc752b7cce788ce7680b.tar.xz
qemu-55c3ceef61fcf06fc98ddc752b7cce788ce7680b.zip
qom: Introduce CPUClass.tcg_initialize
Move target cpu tcg initialization to common code, called from cpu_exec_realizefn. Acked-by: Andreas Färber <afaerber@suse.de> Reviewed-by: Emilio G. Cota <cota@braap.org> Reviewed-by: Philippe Mathieu-Daudé <f4bug@amsat.org> Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
Diffstat (limited to 'include/qom')
-rw-r--r--include/qom/cpu.h8
1 files changed, 6 insertions, 2 deletions
diff --git a/include/qom/cpu.h b/include/qom/cpu.h
index 0efebdbcf4..df0ba86202 100644
--- a/include/qom/cpu.h
+++ b/include/qom/cpu.h
@@ -195,10 +195,8 @@ typedef struct CPUClass {
void *opaque);
const struct VMStateDescription *vmsd;
- int gdb_num_core_regs;
const char *gdb_core_xml_file;
gchar * (*gdb_arch_name)(CPUState *cpu);
- bool gdb_stop_before_watchpoint;
void (*cpu_exec_enter)(CPUState *cpu);
void (*cpu_exec_exit)(CPUState *cpu);
@@ -206,6 +204,12 @@ typedef struct CPUClass {
void (*disas_set_info)(CPUState *cpu, disassemble_info *info);
vaddr (*adjust_watchpoint_address)(CPUState *cpu, vaddr addr, int len);
+ void (*tcg_initialize)(void);
+
+ /* Keep non-pointer data at the end to minimize holes. */
+ int gdb_num_core_regs;
+ bool gdb_stop_before_watchpoint;
+ bool tcg_initialized;
} CPUClass;
#ifdef HOST_WORDS_BIGENDIAN