Hello Anthony, This is my current QOM CPU patch queue. Please pull. Note that this is a signed pull and not for qom-cpu branch as usual!
Thanks, Andreas Cc: Anthony Liguori <anth...@codemonkey.ws> Cc: Richard Henderson <r...@twiddle.net> Cc: Jia Liu <pro...@gmail.com> Cc: Peter Maydell <peter.mayd...@linaro.org> Cc: Alexander Graf <ag...@suse.de> Cc: Max Filippov <jcmvb...@gmail.com> Cc: Eduardo Habkost <ehabk...@redhat.com> Cc: Igor Mammedov <imamm...@redhat.com> Cc: Riku Voipio <riku.voi...@iki.fi> Cc: Mike Frysinger <vap...@gentoo.org> Cc: Stacey Son <s...@freebsd.org> Cc: Peter Crosthwaite <peter.crosthwa...@xilinx.com> The following changes since commit dc11549ec213f85f6a024c7df68d349464cd1688: Merge remote-tracking branch 'mst/tags/for_anthony' into staging (2013-07-08 08:00:23 -0500) are available in the git repository at: git://github.com/afaerber/qemu-cpu.git tags/qom-cpu-for-anthony for you to fetch changes up to 91b1df8cf9e1ecaa8679c9ea8713d1e25c28e6c4: cpu: Move reset logging to CPUState (2013-07-09 21:33:04 +0200) ---------------------------------------------------------------- QOM CPUState refactorings * Fix for OpenRISCCPU subclasses * Fix for gdbstub CPU selection * Move linux-user CPU functions into new header * CPUState part 10 refactoring: first_cpu, next_cpu, cpu_single_env et al. * Fix some targets to consistently inline TCG code generation * Centrally log CPU reset ---------------------------------------------------------------- Andreas Färber (41): Revert "gdbstub: Simplify find_cpu()" cpu: Drop unnecessary dynamic casts in *_env_get_cpu() kvm: Free current_cpu identifier cpu: Replace cpu_single_env with CPUState current_cpu kvm: Change kvm_remove_all_breakpoints() argument to CPUState linux-user: Clean up do_syscall() Coding Style for TARGET_NR_exit cpu: Make first_cpu and next_cpu CPUState linux-user: Change thread_env to CPUState bsd-user: Change thread_env to CPUState intc/arm_gic: Build arm_gic only once intc/openpic: Build openpic only once timer/arm_mptimer: Build arm_mptimer only once target-ppc: Don't overuse ENV_GET_CPU() target-s390x: Don't overuse ENV_GET_CPU() target-s390x: Change handle_{hypercall,diag}() argument to S390CPU target-i386: Don't overuse CPUArchState target-cris: gen_intermediate_code_internal() should be inlined target-lm32: gen_intermediate_code_internal() should be inlined target-microblaze: gen_intermediate_code_internal() should be inlined target-moxie: gen_intermediate_code_internal() should be inlined target-xtensa: gen_intermediate_code_internal() should be inlined target-alpha: Change gen_intermediate_code_internal() argument to AlphaCPU target-arm: Change gen_intermediate_code_internal() argument to ARMCPU target-cris: Change gen_intermediate_code_internal() argument to CRISCPU target-i386: Change gen_intermediate_code_internal() argument to X86CPU target-lm32: Change gen_intermediate_code_internal() argument to LM32CPU target-m68k: Change gen_intermediate_code_internal() argument to M68kCPU target-microblaze: Change gen_intermediate_code_internal() argument types target-mips: Change gen_intermediate_code_internal() argument to MIPSCPU target-ppc: Change gen_intermediate_code_internal() argument to PowerPCCPU target-s390x: Change gen_intermediate_code_internal() argument to S390CPU target-sh4: Change gen_intermediate_code_internal() argument to SuperHCPU target-sparc: Change gen_intermediate_code_internal() argument to SPARCCPU target-unicore32: Change gen_intermediate_code_internal() signature target-xtensa: Change gen_intermediate_code_internal() arg to XtensaCPU target-i386: Change do_interrupt_all() argument to X86CPU target-i386: Change do_smm_enter() argument to X86CPU log: Change log_cpu_state[_mask]() argument to CPUState target-i386: Change LOG_PCALL_STATE() argument to CPUState target-ppc: Change LOG_MMU_STATE() argument to CPUState cpu: Move reset logging to CPUState Dongxue Zhang (1): target-openrisc: Fix typename in openrisc_cpu_class_by_name() Peter Maydell (1): linux-user: Move cpu_clone_regs() and cpu_set_tls() into linux-user bsd-user/elfload.c | 6 +- bsd-user/main.c | 6 +- bsd-user/qemu.h | 2 +- cpu-exec.c | 21 ++--- cpus.c | 167 +++++++++++++++++++------------------ cputlb.c | 4 +- dump.c | 16 ++-- exec.c | 57 +++++++------ gdbstub.c | 45 ++++++---- hw/alpha/typhoon.c | 16 +--- hw/arm/boot.c | 10 +-- hw/arm/exynos4_boards.c | 4 +- hw/arm/highbank.c | 2 +- hw/arm/pxa2xx.c | 3 +- hw/arm/realview.c | 2 +- hw/arm/vexpress.c | 2 +- hw/arm/xilinx_zynq.c | 2 +- hw/i386/kvm/clock.c | 12 +-- hw/i386/kvmvapic.c | 19 +++-- hw/i386/pc.c | 28 ++++--- hw/i386/pc_piix.c | 3 +- hw/intc/Makefile.objs | 4 +- hw/intc/arm_gic.c | 4 +- hw/intc/armv7m_nvic.c | 11 ++- hw/intc/openpic.c | 9 +- hw/intc/sh_intc.c | 5 +- hw/isa/lpc_ich9.c | 2 +- hw/mips/mips_fulong2e.c | 6 +- hw/mips/mips_jazz.c | 6 +- hw/mips/mips_malta.c | 9 +- hw/misc/vmport.c | 26 +++--- hw/ppc/e500.c | 5 +- hw/ppc/mpc8544_guts.c | 3 +- hw/ppc/ppc.c | 12 +-- hw/ppc/prep.c | 12 +-- hw/ppc/spapr.c | 27 +++--- hw/sparc/sun4m.c | 5 +- hw/timer/Makefile.objs | 2 +- hw/timer/arm_mptimer.c | 9 +- include/exec/cpu-all.h | 4 - include/exec/cpu-defs.h | 1 - include/hw/ppc/ppc.h | 2 - include/hw/ppc/ppc_e500.h | 6 ++ include/qemu/log.h | 26 ++++-- include/qom/cpu.h | 10 +++ include/sysemu/kvm.h | 10 +-- kvm-all.c | 53 ++++++------ kvm-stub.c | 6 +- linux-user/alpha/target_cpu.h | 36 ++++++++ linux-user/arm/target_cpu.h | 35 ++++++++ linux-user/cris/target_cpu.h | 36 ++++++++ linux-user/elfload.c | 21 +++-- linux-user/i386/target_cpu.h | 33 ++++++++ linux-user/linuxload.c | 3 +- linux-user/m68k/target_cpu.h | 34 ++++++++ linux-user/main.c | 21 +++-- linux-user/microblaze/target_cpu.h | 35 ++++++++ linux-user/mips/target_cpu.h | 36 ++++++++ linux-user/mips64/target_cpu.h | 1 + linux-user/openrisc/target_cpu.h | 33 ++++++++ linux-user/ppc/target_cpu.h | 41 +++++++++ linux-user/qemu.h | 3 +- linux-user/s390x/target_cpu.h | 39 +++++++++ linux-user/sh4/target_cpu.h | 35 ++++++++ linux-user/signal.c | 12 +-- linux-user/sparc/target_cpu.h | 36 ++++++++ linux-user/sparc64/target_cpu.h | 1 + linux-user/syscall.c | 80 +++++++++--------- linux-user/unicore32/target_cpu.h | 27 ++++++ linux-user/x86_64/target_cpu.h | 1 + memory.c | 10 +-- memory_mapping.c | 16 ++-- monitor.c | 4 +- qom/cpu.c | 8 ++ target-alpha/cpu-qom.h | 2 +- target-alpha/cpu.h | 16 ---- target-alpha/translate.c | 9 +- target-arm/cpu-qom.h | 2 +- target-arm/cpu.c | 5 -- target-arm/cpu.h | 14 ---- target-arm/translate.c | 9 +- target-cris/cpu-qom.h | 2 +- target-cris/cpu.c | 5 -- target-cris/cpu.h | 14 ---- target-cris/translate.c | 11 +-- target-i386/arch_dump.c | 17 ++-- target-i386/cpu-qom.h | 2 +- target-i386/cpu.c | 6 +- target-i386/cpu.h | 11 +-- target-i386/helper.c | 15 ++-- target-i386/kvm.c | 8 +- target-i386/misc_helper.c | 2 +- target-i386/seg_helper.c | 20 +++-- target-i386/smm_helper.c | 10 ++- target-i386/translate.c | 9 +- target-lm32/cpu-qom.h | 2 +- target-lm32/cpu.c | 5 -- target-lm32/cpu.h | 14 ---- target-lm32/helper.c | 4 +- target-lm32/translate.c | 10 ++- target-m68k/cpu-qom.h | 2 +- target-m68k/cpu.c | 5 -- target-m68k/cpu.h | 9 -- target-m68k/translate.c | 9 +- target-microblaze/cpu-qom.h | 2 +- target-microblaze/cpu.c | 5 -- target-microblaze/cpu.h | 14 ---- target-microblaze/helper.c | 12 +-- target-microblaze/translate.c | 13 +-- target-mips/cpu-qom.h | 2 +- target-mips/cpu.c | 5 -- target-mips/cpu.h | 13 --- target-mips/helper.c | 2 +- target-mips/op_helper.c | 25 +++--- target-mips/translate.c | 9 +- target-moxie/cpu.c | 5 -- target-moxie/cpu.h | 2 +- target-moxie/translate.c | 2 +- target-openrisc/cpu.c | 9 +- target-openrisc/cpu.h | 12 +-- target-openrisc/translate.c | 2 +- target-ppc/cpu-qom.h | 2 +- target-ppc/cpu.h | 20 ----- target-ppc/excp_helper.c | 9 +- target-ppc/kvm.c | 2 +- target-ppc/mmu-hash32.c | 4 +- target-ppc/mmu-hash64.c | 4 +- target-ppc/mmu_helper.c | 8 +- target-ppc/translate.c | 9 +- target-ppc/translate_init.c | 5 -- target-s390x/cpu-qom.h | 2 +- target-s390x/cpu.c | 5 -- target-s390x/cpu.h | 16 ---- target-s390x/kvm.c | 14 ++-- target-s390x/translate.c | 9 +- target-sh4/cpu-qom.h | 2 +- target-sh4/cpu.c | 5 -- target-sh4/cpu.h | 14 ---- target-sh4/helper.c | 2 +- target-sh4/translate.c | 9 +- target-sparc/cpu-qom.h | 2 +- target-sparc/cpu.c | 5 -- target-sparc/cpu.h | 12 --- target-sparc/int32_helper.c | 2 +- target-sparc/int64_helper.c | 2 +- target-sparc/translate.c | 10 ++- target-unicore32/cpu-qom.h | 2 +- target-unicore32/cpu.h | 13 --- target-unicore32/translate.c | 9 +- target-xtensa/cpu-qom.h | 2 +- target-xtensa/translate.c | 10 ++- translate-all.c | 32 ++++--- user-exec.c | 9 +- 153 files changed, 1141 insertions(+), 832 deletions(-) create mode 100644 include/hw/ppc/ppc_e500.h create mode 100644 linux-user/alpha/target_cpu.h create mode 100644 linux-user/arm/target_cpu.h create mode 100644 linux-user/cris/target_cpu.h create mode 100644 linux-user/i386/target_cpu.h create mode 100644 linux-user/m68k/target_cpu.h create mode 100644 linux-user/microblaze/target_cpu.h create mode 100644 linux-user/mips/target_cpu.h create mode 100644 linux-user/mips64/target_cpu.h create mode 100644 linux-user/openrisc/target_cpu.h create mode 100644 linux-user/ppc/target_cpu.h create mode 100644 linux-user/s390x/target_cpu.h create mode 100644 linux-user/sh4/target_cpu.h create mode 100644 linux-user/sparc/target_cpu.h create mode 100644 linux-user/sparc64/target_cpu.h create mode 100644 linux-user/unicore32/target_cpu.h create mode 100644 linux-user/x86_64/target_cpu.h