[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH qom-cpu v2 00/40] QOM CPUState, part 13: Emptying CP
From: |
Andreas Färber |
Subject: |
[Qemu-devel] [PATCH qom-cpu v2 00/40] QOM CPUState, part 13: Emptying CPU_COMMON |
Date: |
Mon, 10 Mar 2014 01:15:09 +0100 |
Hello,
This series aggressively decimizes CPU_COMMON fields and then begins with some
follow-up cleanups in core CPU code.
Paolo has suggested we handle cputlb.c not as "common code" but as code
to be inlined into target code. I have therefore dropped some cputlb.c
changes that seemed mostly relevant for the file itself only.
Available for testing at:
git://github.com/afaerber/qemu-cpu.git qom-cpu-13.v2
https://github.com/afaerber/qemu-cpu/commits/qom-cpu-13.v2
Regards,
Andreas
v1 -> v2:
* Dropped cpu_mmu_index() and cpu_get_tb_cpu_state() changes (Paolo)
* Rebased on LM32 cpu_abort() and dc->env cleanups (Michael)
* cpu_copy() was already moved into linux-user and cpu_model_str dropped
* Rebased on CPU address spaces; added cleanups for ENV_GET_CPU() misuses
* Rebased on LM32 watchpoints and breakpoints
* Rebased on AArch64
* Fixed s/tlb_update_dirty/tlb_unprotect_code_phys/ in commit message
* Leave tlb_flush_{addr,mask} fields in CPU_COMMON_TLB for now
* Dropped tlb_add_large_page() argument change for now
>From qom-cpu-copy preview:
* Instead of moving cpu_copy() to a new linux-user/cpu.c, moved it to main.c,
allowing to drop cpu_model_str field completely
Cc: Anthony Liguori <address@hidden>
Cc: Blue Swirl <address@hidden>
Cc: Aurélien Jarno <address@hidden>
Cc: Richard Henderson <address@hidden> (TCG)
Cc: Xuebing Wang <address@hidden>
Cc: Michael Walle <address@hidden> (lm32)
Cc: Edgar E. Iglesias <address@hidden> (cris, microblaze)
Cc: Peter Crosthwaite <address@hidden> (microblaze)
Cc: Eduardo Habkost <address@hidden>
Cc: Igor Mammedov <address@hidden>
Cc: Riku Voipio <address@hidden> (linux-user)
Cc: Peter Maydell <address@hidden> (arm)
Andreas Färber (40):
target-alpha: Clean up ENV_GET_CPU() usage
target-arm: Clean up ENV_GET_CPU() usage
target-i386: Clean up ENV_GET_CPU() usage
target-ppc: Clean up ENV_GET_CPU() usage
target-s390x: Clean up ENV_GET_CPU() usage
target-sparc: Clean up ENV_GET_CPU() usage
target-unicore32: Clean up ENV_GET_CPU() usage
target-xtensa: Clean up ENV_GET_CPU() usage
cpu: Turn cpu_handle_mmu_fault() into a CPUClass hook
cpu: Move mem_io_{pc,vaddr} fields from CPU_COMMON to CPUState
cpu: Move can_do_io field from CPU_COMMON to CPUState
cpu: Move icount_extra field from CPU_COMMON to CPUState
cpu: Move icount_decr field from CPU_COMMON to CPUState
cpu: Move tb_jmp_cache field from CPU_COMMON to CPUState
cpu: Move jmp_env field from CPU_COMMON to CPUState
cpu: Move exception_index field from CPU_COMMON to CPUState
cpu: Move opaque field from CPU_COMMON to CPUState
cpu: Move watchpoint fields from CPU_COMMON to CPUState
cpu: Move breakpoints field from CPU_COMMON to CPUState
exec: Change tlb_fill() argument to CPUState
cpu-exec: Change cpu_loop_exit() argument to CPUState
translate-all: Change cpu_restore_state() argument to CPUState
translate-all: Change cpu_restore_state_from_tb() argument to CPUState
translate-all: Change tb_check_watchpoint() argument to CPUState
translate-all: Change cpu_io_recompile() argument to CPUState
translate-all: Change tb_gen_code() argument to CPUState
translate-all: Change tb_flush_jmp_cache() argument to CPUState
target-ppc: Use PowerPCCPU in PowerPCCPUClass::handle_mmu_fault hook
exec: Change cpu_watchpoint_{insert,remove{,_by_ref,_all}} argument
exec: Change cpu_breakpoint_{insert,remove{,_by_ref,_all}} argument
cpu-exec: Change cpu_resume_from_signal() argument to CPUState
cputlb: Change tlb_unprotect_code_phys() argument to CPUState
exec: Change memory_region_section_get_iotlb() argument to CPUState
exec: Change cpu_abort() argument to CPUState
target-cris: Replace DisasContext::env field with CRISCPU
target-microblaze: Replace DisasContext::env field with MicroBlazeCPU
cputlb: Change tlb_flush_page() argument to CPUState
cputlb: Change tlb_flush() argument to CPUState
cputlb: Change tlb_set_page() argument to CPUState
user-exec: Change exception_action() argument to CPUState
bsd-user/main.c | 2 +-
cpu-exec.c | 101 +++++++++---------
cpus.c | 23 ++--
cputlb.c | 24 ++---
exec.c | 118 ++++++++++-----------
gdbstub.c | 48 ++++-----
hw/i386/kvmvapic.c | 6 +-
hw/ppc/e500.c | 3 +-
hw/ppc/ppc405_uc.c | 2 +-
hw/ppc/ppce500_spin.c | 2 +-
hw/ppc/spapr_hcall.c | 8 +-
hw/s390x/s390-virtio.c | 8 +-
hw/sh4/sh7750.c | 2 +-
include/exec/cpu-all.h | 24 -----
include/exec/cpu-defs.h | 61 -----------
include/exec/cputlb.h | 6 +-
include/exec/exec-all.h | 43 ++++----
include/exec/gen-icount.h | 10 +-
include/exec/softmmu_template.h | 24 ++---
include/qom/cpu.h | 88 ++++++++++++++++
linux-user/elfload.c | 10 +-
linux-user/linuxload.c | 3 +-
linux-user/m68k-sim.c | 3 +-
linux-user/m68k/target_cpu.h | 4 +-
linux-user/main.c | 102 +++++++++---------
linux-user/signal.c | 24 +++--
linux-user/syscall.c | 30 +++---
linux-user/vm86.c | 27 +++--
qom/cpu.c | 6 ++
target-alpha/cpu.c | 6 +-
target-alpha/cpu.h | 5 +-
target-alpha/helper.c | 40 ++++---
target-alpha/mem_helper.c | 32 +++---
target-alpha/sys_helper.c | 4 +-
target-alpha/translate.c | 4 +-
target-arm/arm-semi.c | 9 +-
target-arm/cpu.c | 8 +-
target-arm/cpu.h | 5 +-
target-arm/helper.c | 136 ++++++++++++++++--------
target-arm/op_helper.c | 33 +++---
target-arm/translate-a64.c | 4 +-
target-arm/translate.c | 6 +-
target-cris/cpu.c | 8 +-
target-cris/cpu.h | 7 +-
target-cris/helper.c | 48 +++++----
target-cris/mmu.c | 3 +-
target-cris/op_helper.c | 28 +++--
target-cris/translate.c | 21 ++--
target-cris/translate_v10.c | 16 +--
target-i386/cpu.c | 12 ++-
target-i386/cpu.h | 8 +-
target-i386/excp_helper.c | 6 +-
target-i386/helper.c | 77 ++++++++------
target-i386/kvm.c | 8 +-
target-i386/machine.c | 7 +-
target-i386/mem_helper.c | 16 +--
target-i386/misc_helper.c | 20 ++--
target-i386/seg_helper.c | 20 ++--
target-i386/smm_helper.c | 2 +-
target-i386/svm_helper.c | 41 ++++----
target-i386/translate.c | 4 +-
target-lm32/cpu.c | 8 +-
target-lm32/cpu.h | 8 +-
target-lm32/helper.c | 51 +++++----
target-lm32/op_helper.c | 23 ++--
target-lm32/translate.c | 5 +-
target-m68k/cpu.c | 8 +-
target-m68k/cpu.h | 4 +-
target-m68k/helper.c | 23 ++--
target-m68k/m68k-semi.c | 5 +-
target-m68k/op_helper.c | 34 +++---
target-m68k/qregs.def | 1 -
target-m68k/translate.c | 13 ++-
target-microblaze/cpu.c | 8 +-
target-microblaze/cpu.h | 3 +-
target-microblaze/helper.c | 34 +++---
target-microblaze/mmu.c | 6 +-
target-microblaze/op_helper.c | 19 ++--
target-microblaze/translate.c | 102 +++++++++---------
target-mips/cpu.c | 8 +-
target-mips/cpu.h | 6 +-
target-mips/helper.c | 56 ++++++----
target-mips/machine.c | 3 +-
target-mips/op_helper.c | 34 ++++--
target-mips/translate.c | 8 +-
target-mips/translate_init.c | 4 +-
target-moxie/cpu.c | 8 +-
target-moxie/cpu.h | 2 +-
target-moxie/helper.c | 51 +++++----
target-moxie/translate.c | 4 +-
target-openrisc/cpu.c | 14 ++-
target-openrisc/cpu.h | 5 +-
target-openrisc/exception.c | 6 +-
target-openrisc/interrupt.c | 14 +--
target-openrisc/interrupt_helper.c | 2 +-
target-openrisc/mmu.c | 17 +--
target-openrisc/mmu_helper.c | 8 +-
target-openrisc/sys_helper.c | 6 +-
target-openrisc/translate.c | 5 +-
target-ppc/cpu-qom.h | 8 +-
target-ppc/cpu.h | 6 +-
target-ppc/excp_helper.c | 73 ++++++-------
target-ppc/fpu_helper.c | 26 +++--
target-ppc/helper_regs.h | 2 +-
target-ppc/misc_helper.c | 4 +-
target-ppc/mmu-hash32.c | 35 ++++---
target-ppc/mmu-hash32.h | 14 ++-
target-ppc/mmu-hash64.c | 30 +++---
target-ppc/mmu-hash64.h | 8 +-
target-ppc/mmu_helper.c | 208 +++++++++++++++++++++----------------
target-ppc/translate.c | 4 +-
target-ppc/translate_init.c | 13 ++-
target-ppc/user_only_helper.c | 8 +-
target-s390x/cc_helper.c | 5 +-
target-s390x/cpu.c | 12 ++-
target-s390x/cpu.h | 5 +-
target-s390x/fpu_helper.c | 4 +-
target-s390x/helper.c | 88 +++++++++-------
target-s390x/mem_helper.c | 58 ++++++-----
target-s390x/misc_helper.c | 33 +++---
target-s390x/translate.c | 4 +-
target-sh4/cpu.c | 8 +-
target-sh4/cpu.h | 6 +-
target-sh4/helper.c | 108 ++++++++++---------
target-sh4/op_helper.c | 20 ++--
target-sh4/translate.c | 4 +-
target-sparc/cpu.c | 8 +-
target-sparc/cpu.h | 4 +-
target-sparc/helper.c | 28 ++---
target-sparc/int32_helper.c | 10 +-
target-sparc/int64_helper.c | 8 +-
target-sparc/ldst_helper.c | 52 +++++-----
target-sparc/machine.c | 3 +-
target-sparc/mmu_helper.c | 42 ++++----
target-sparc/translate.c | 4 +-
target-unicore32/cpu.c | 6 +-
target-unicore32/cpu.h | 5 +-
target-unicore32/helper.c | 17 +--
target-unicore32/op_helper.c | 14 +--
target-unicore32/softmmu.c | 29 +++---
target-unicore32/translate.c | 32 +++++-
target-unicore32/ucf64_helper.c | 3 +-
target-xtensa/cpu.h | 6 +-
target-xtensa/helper.c | 32 +++---
target-xtensa/op_helper.c | 50 +++++----
target-xtensa/translate.c | 5 +-
translate-all.c | 98 ++++++++---------
translate-all.h | 2 +-
user-exec.c | 28 +++--
149 files changed, 1893 insertions(+), 1459 deletions(-)
--
1.8.4.5
- [Qemu-devel] [PATCH qom-cpu v2 00/40] QOM CPUState, part 13: Emptying CPU_COMMON,
Andreas Färber <=
- [Qemu-devel] [PATCH qom-cpu v2 01/40] target-alpha: Clean up ENV_GET_CPU() usage, Andreas Färber, 2014/03/09
- [Qemu-devel] [PATCH qom-cpu v2 03/40] target-i386: Clean up ENV_GET_CPU() usage, Andreas Färber, 2014/03/09
- [Qemu-devel] [PATCH qom-cpu v2 02/40] target-arm: Clean up ENV_GET_CPU() usage, Andreas Färber, 2014/03/09
- [Qemu-devel] [PATCH qom-cpu v2 05/40] target-s390x: Clean up ENV_GET_CPU() usage, Andreas Färber, 2014/03/09
- [Qemu-devel] [PATCH qom-cpu v2 07/40] target-unicore32: Clean up ENV_GET_CPU() usage, Andreas Färber, 2014/03/09
- [Qemu-devel] [PATCH qom-cpu v2 06/40] target-sparc: Clean up ENV_GET_CPU() usage, Andreas Färber, 2014/03/09
- [Qemu-devel] [PATCH qom-cpu v2 04/40] target-ppc: Clean up ENV_GET_CPU() usage, Andreas Färber, 2014/03/09
- [Qemu-devel] [PATCH qom-cpu v2 08/40] target-xtensa: Clean up ENV_GET_CPU() usage, Andreas Färber, 2014/03/09