Message ID | 20210301215110.772346-1-f4bug@amsat.org |
---|---|
Headers | show |
Series | cpu: Introduce SysemuCPUOps structure | expand |
On 3/1/21 10:50 PM, Philippe Mathieu-Daudé wrote: > Hi, > > This series is inspired on Claudio TCG work. > > Instead of separate TCG from other accelerators, here we > separate sysemu operations (system VS user). > > Patches 1-6 are generic cleanups. > Patches 7-15 move from CPUClass to SysemuCPUOps > Patches 16-17 restrict SysemuCPUOps to sysemu > > Since v1: > - Name 'sysemu' (Claudio) > - change each field progressively (Richard) > > Regards, > > Phil. Very cool overall, and it all LGTM, with the exception of patch 16. Ciao, Claudio > > Supersedes: <20210226163227.4097950-1-f4bug@amsat.org> > > Philippe Mathieu-Daudé (17): > target: Set CPUClass::vmsd instead of DeviceClass::vmsd > cpu: Un-inline cpu_get_phys_page_debug and cpu_asidx_from_attrs > cpu: Introduce cpu_virtio_is_big_endian() > cpu: Directly use cpu_write_elf*() fallback handlers in place > cpu: Directly use get_paging_enabled() fallback handlers in place > cpu: Directly use get_memory_mapping() fallback handlers in place > cpu: Introduce SysemuCPUOps structure > cpu: Move CPUClass::vmsd to SysemuCPUOps > cpu: Move CPUClass::virtio_is_big_endian to SysemuCPUOps > cpu: Move CPUClass::get_crash_info to SysemuCPUOps > cpu: Move CPUClass::write_elf* to SysemuCPUOps > cpu: Move CPUClass::asidx_from_attrs to SysemuCPUOps > cpu: Move CPUClass::get_phys_page_debug to SysemuCPUOps > cpu: Move CPUClass::get_memory_mapping to SysemuCPUOps > cpu: Move CPUClass::get_paging_enabled to SysemuCPUOps > cpu: Restrict cpu_paging_enabled / cpu_get_memory_mapping to sysemu > cpu: Restrict "hw/core/sysemu-cpu-ops.h" to target/cpu.c > > include/hw/core/cpu.h | 91 ++++++------------------- > include/hw/core/sysemu-cpu-ops.h | 89 ++++++++++++++++++++++++ > cpu.c | 19 +++--- > hw/core/cpu.c | 113 +++++++++++++++++-------------- > hw/virtio/virtio.c | 4 +- > target/alpha/cpu.c | 11 ++- > target/arm/cpu.c | 19 ++++-- > target/avr/cpu.c | 9 ++- > target/cris/cpu.c | 11 ++- > target/hppa/cpu.c | 11 ++- > target/i386/cpu.c | 29 +++++--- > target/lm32/cpu.c | 10 ++- > target/m68k/cpu.c | 11 ++- > target/microblaze/cpu.c | 11 ++- > target/mips/cpu.c | 11 ++- > target/moxie/cpu.c | 11 +-- > target/nios2/cpu.c | 16 ++++- > target/openrisc/cpu.c | 11 ++- > target/riscv/cpu.c | 13 +++- > target/rx/cpu.c | 17 ++++- > target/s390x/cpu.c | 15 ++-- > target/sh4/cpu.c | 11 ++- > target/sparc/cpu.c | 11 ++- > target/tricore/cpu.c | 14 +++- > target/unicore32/cpu.c | 8 ++- > target/xtensa/cpu.c | 11 ++- > target/ppc/translate_init.c.inc | 21 +++--- > 27 files changed, 409 insertions(+), 199 deletions(-) > create mode 100644 include/hw/core/sysemu-cpu-ops.h >