diff options
author | Peter Crosthwaite <crosthwaitepeter@gmail.com> | 2015-06-23 20:57:33 -0700 |
---|---|---|
committer | Andreas Färber <afaerber@suse.de> | 2015-07-09 15:20:41 +0200 |
commit | 37b9de463bff4fc786bb5f0778829e68d2c97bd0 (patch) | |
tree | e58572ae930d787710ac933cea3838ee1de54641 /include/qom | |
parent | 2de295c544dda8680a82fe465c92d236d49c4d4f (diff) | |
download | qemu-37b9de463bff4fc786bb5f0778829e68d2c97bd0.zip qemu-37b9de463bff4fc786bb5f0778829e68d2c97bd0.tar.gz qemu-37b9de463bff4fc786bb5f0778829e68d2c97bd0.tar.bz2 |
disas: QOMify target specific setup
Add a QOM function hook for target-specific disassembly setup. This
allows removal of the #ifdeffery currently implementing target specific
disas setup from disas.c.
Reviewed-by: Richard Henderson <rth@twiddle.net>
Signed-off-by: Peter Crosthwaite <crosthwaite.peter@gmail.com>
Signed-off-by: Andreas Färber <afaerber@suse.de>
Diffstat (limited to 'include/qom')
-rw-r--r-- | include/qom/cpu.h | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/include/qom/cpu.h b/include/qom/cpu.h index b120574..20aabc9 100644 --- a/include/qom/cpu.h +++ b/include/qom/cpu.h @@ -23,6 +23,7 @@ #include <signal.h> #include <setjmp.h> #include "hw/qdev-core.h" +#include "disas/bfd.h" #include "exec/hwaddr.h" #include "exec/memattrs.h" #include "qemu/queue.h" @@ -117,6 +118,7 @@ struct TranslationBlock; * @cpu_exec_enter: Callback for cpu_exec preparation. * @cpu_exec_exit: Callback for cpu_exec cleanup. * @cpu_exec_interrupt: Callback for processing interrupts in cpu_exec. + * @disas_set_info: Setup architecture specific components of disassembly info * * Represents a CPU family or model. */ @@ -172,6 +174,8 @@ typedef struct CPUClass { void (*cpu_exec_enter)(CPUState *cpu); void (*cpu_exec_exit)(CPUState *cpu); bool (*cpu_exec_interrupt)(CPUState *cpu, int interrupt_request); + + void (*disas_set_info)(CPUState *cpu, disassemble_info *info); } CPUClass; #ifdef HOST_WORDS_BIGENDIAN |