Hello, This series starts with unifying the various structs for -cpu ? implementation.
I'm guessing the second patch will be necessary for CPU-as-a-device, but it breaks the paradigm of having only typedefs in qemu-types.h. Based on that, by demand from David, here's a quick and dirty introduction of CPU subclasses as proposed some time ago. It's been redone, so no change log. My proposal is to leave ppc_def_t in place for now, adding a pointer to it in the CPU class for instance_init and for David. Plus, it seems that my "POWER5+ (gs)" CPU is #ifdef TODO'ed out, so lacking an immediate fix how to fall back to another CPU model I'm proposing an error. The series is based on the current qom-cpu queue and will need to be slightly rebased when I apply the KVM CPUState series. Regards, Andreas Cc: Eduardo Habkost <ehabk...@redhat.com> Cc: Igor Mammedov <imamm...@redhat.com> Cc: Richard Henderson <r...@twiddle.net> Cc: Peter Maydell <peter.mayd...@linaro.org> Cc: Alexander Graf <ag...@suse.de> Cc: qemu-ppc <qemu-...@nongnu.org> Cc: David Gibson <da...@gibson.dropbear.id.au> Andreas Färber (4): cpu: Introduce CPUListState struct qemu-common.h: Move fprintf_function to qemu-types.h target-ppc: Slim conversion of model definitions to QOM subclasses target-ppc: Error out for -cpu host on unknown PVR include/qemu/cpu.h | 12 ++ qemu-common.h | 5 - qemu-types.h | 6 + target-alpha/cpu.c | 9 +- target-arm/helper.c | 9 +- target-m68k/helper.c | 9 +- target-ppc/Makefile.objs | 3 +- target-ppc/cpu-qom.h | 5 + target-ppc/cpu.h | 4 - target-ppc/helper.c | 50 ------- target-ppc/kvm.c | 44 +++++- target-ppc/kvm_ppc.h | 8 +- target-ppc/translate_init.c | 344 +++++++++++++++++++++++++++++-------------- 13 Dateien geändert, 306 Zeilen hinzugefügt(+), 202 Zeilen entfernt(-) delete mode 100644 target-ppc/helper.c -- 1.7.10.4