On 18.05.2016 18:36, Paolo Bonzini wrote: > This series removes usage of NEED_CPU_H from several central > include files in QEMU, most notably hw/hw.h and qemu-common.h. > Definitions conditional on NEED_CPU_H remain only in disas/disas.h, > exec/gdbstub.h, exec/helper-head.h and exec/log.h. > > The interesting patches are interspersed with other miscellaenous > cleanups that I won't really dwell on in the cover letter; the main > changes are: > > - make sure that target-independent code can access QOM objects > for the CPU through an opaque type.
There still seems to be some target-specific code in some of the cpu-qom.h headers: $ grep -r TARGET_ target-*/cpu-qom.h target-i386/cpu-qom.h:#ifdef TARGET_X86_64 target-mips/cpu-qom.h:#ifdef TARGET_MIPS64 target-ppc/cpu-qom.h:#ifdef TARGET_PPC64 target-ppc/cpu-qom.h:#elif defined(TARGET_PPCEMB) target-ppc/cpu-qom.h:#if defined(TARGET_PPC64) target-ppc/cpu-qom.h:#endif /* defined(TARGET_PPC64) */ target-sparc/cpu-qom.h:#ifdef TARGET_SPARC64 This will mainly affect the *_CPU_CLASS macros ... should these macros now also be moved to target-*/cpu.h instead? [...] > As before, I would appreciate people compile-testing it on PPC. It should > fix all the problems reported previously. The changes are available in > the git repository at git://github.com/bonzini/qemu.git, branch need-cpu-h I've just re-checked that branch, and now it compiles fine for me on PPC. Thomas
