qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[PULL 00/33] Abstract ArchCPU


From: Philippe Mathieu-Daudé
Subject: [PULL 00/33] Abstract ArchCPU
Date: Sun, 6 Mar 2022 13:59:27 +0100

From: Philippe Mathieu-Daudé <f4bug@amsat.org>

The following changes since commit 9d662a6b22a0838a85c5432385f35db2488a33a5:

  Merge remote-tracking branch 'remotes/legoater/tags/pull-ppc-20220305' into 
staging (2022-03-05 18:03:15 +0000)

are available in the Git repository at:

  https://github.com/philmd/qemu.git tags/abstract-arch-cpu-20220306

for you to fetch changes up to 5bbf37aa89881751828d28e38608db0371874aef:

  accel/tcg: Remove pointless CPUArchState casts (2022-03-06 13:15:42 +0100)

----------------------------------------------------------------
- Re-org accel/ and softmmu/ to have more target-agnostic objects.

- Use CPUArchState as an abstract type, defined by each target
  (CPUState is our interface with generic code, CPUArchState is
   our interface with target-specific code).

----------------------------------------------------------------

Philippe Mathieu-Daudé (32):
  accel: Restrict sysemu stubs to system emulation
  accel/meson: Only build hw virtualization with system emulation
  exec: Declare vaddr as a generic target-agnostic type
  exec: Make cpu_memory_rw_debug() target agnostic
  sysemu/memory_mapping: Become target-agnostic
  sysemu/kvm: Make kvm_on_sigbus() / kvm_on_sigbus_vcpu() target
    agnostic
  accel/kvm: Simplify user-mode #ifdef'ry
  accel/hax: Introduce CONFIG_HAX_IS_POSSIBLE
  softmmu/cpus: Code movement
  accel: Introduce AccelOpsClass::cpu_thread_is_idle()
  accel: Introduce AccelOpsClass::cpus_are_resettable()
  softmmu/globals: Remove unused 'hw/i386/*' headers
  softmmu/physmem: Remove unnecessary include
  softmmu/cpu-timers: Remove unused 'exec/exec-all.h' header
  misc: Remove unnecessary "sysemu/cpu-timers.h" include
  misc: Add missing "sysemu/cpu-timers.h" include
  exec/gdbstub: Make gdb_exit() / gdb_set_stop_cpu() target agnostic
  exec/cpu: Make address_space_init/reloading_memory_map target agnostic
  softmmu: Add qemu_init_arch_modules()
  softmmu: Build target-agnostic objects once
  meson: Display libfdt as disabled when system emulation is disabled
  exec/cpu_ldst: Include 'cpu.h' to get target_ulong definition
  cpu: Add missing 'exec/exec-all.h' and 'qemu/accel.h' headers
  target/i386/tcg/sysemu: Include missing 'exec/exec-all.h' header
  target: Include missing 'cpu.h'
  target/hexagon: Add missing 'hw/core/cpu.h' include
  target: Use forward declared type instead of structure type
  target: Use CPUArchState as interface to target-specific CPU state
  target: Introduce and use OBJECT_DECLARE_CPU_TYPE() macro
  target: Use ArchCPU as interface to target CPU
  target/i386: Remove pointless CPUArchState casts
  accel/tcg: Remove pointless CPUArchState casts

Taylor Simpson (1):
  Hexagon (target/hexagon) convert to OBJECT_DECLARE_TYPE

 meson.build                          |  4 ++-
 include/exec/cpu-all.h               |  4 ---
 include/exec/cpu-common.h            | 39 ++++++++++++++++++++++++++++
 include/exec/cpu_ldst.h              |  1 +
 include/exec/exec-all.h              | 26 -------------------
 include/exec/gdbstub.h               | 25 +++++++++---------
 include/exec/poison.h                |  2 --
 include/hw/core/cpu.h                | 33 +++++++++++++----------
 include/qemu/typedefs.h              |  2 ++
 include/sysemu/accel-ops.h           |  3 +++
 include/sysemu/arch_init.h           |  2 ++
 include/sysemu/hax.h                 | 18 ++++++++-----
 include/sysemu/hw_accel.h            |  5 ----
 include/sysemu/kvm.h                 |  6 ++---
 include/sysemu/memory_mapping.h      |  5 ++--
 target/alpha/cpu-qom.h               |  3 +--
 target/alpha/cpu.h                   | 11 +++-----
 target/arm/cpu-qom.h                 |  3 +--
 target/arm/cpu.h                     |  7 ++---
 target/arm/hvf_arm.h                 |  2 +-
 target/avr/cpu-qom.h                 |  3 +--
 target/avr/cpu.h                     | 13 +++-------
 target/cris/cpu-qom.h                |  3 +--
 target/cris/cpu.h                    |  7 ++---
 target/hexagon/cpu.h                 | 23 ++++++----------
 target/hppa/cpu-qom.h                |  3 +--
 target/hppa/cpu.h                    | 12 +++------
 target/i386/cpu-qom.h                |  3 +--
 target/i386/cpu.h                    |  7 ++---
 target/m68k/cpu-qom.h                |  3 +--
 target/m68k/cpu.h                    |  7 ++---
 target/microblaze/cpu-qom.h          |  3 +--
 target/microblaze/cpu.h              |  9 +++----
 target/microblaze/mmu.h              |  2 ++
 target/mips/cpu-qom.h                |  3 +--
 target/mips/cpu.h                    | 10 +++----
 target/mips/internal.h               | 15 ++++++-----
 target/nios2/cpu.h                   |  9 +++----
 target/nios2/mmu.h                   |  2 ++
 target/openrisc/cpu.h                | 17 ++++--------
 target/ppc/cpu-qom.h                 |  5 ++--
 target/ppc/cpu.h                     |  7 ++---
 target/riscv/cpu.h                   | 11 +++-----
 target/riscv/pmp.h                   |  2 ++
 target/rx/cpu-qom.h                  |  5 +---
 target/rx/cpu.h                      |  6 ++---
 target/s390x/cpu-qom.h               |  7 +++--
 target/s390x/cpu.h                   |  7 ++---
 target/sh4/cpu-qom.h                 |  3 +--
 target/sh4/cpu.h                     |  7 ++---
 target/sparc/cpu-qom.h               |  3 +--
 target/sparc/cpu.h                   |  9 +++----
 target/tricore/cpu-qom.h             |  3 +--
 target/tricore/cpu.h                 | 10 +++----
 target/xtensa/cpu-qom.h              |  3 +--
 target/xtensa/cpu.h                  | 13 ++++------
 accel/kvm/kvm-accel-ops.c            | 12 +++++++++
 accel/qtest/qtest.c                  |  1 -
 accel/stubs/hax-stub.c               |  2 ++
 accel/stubs/kvm-stub.c               |  5 ----
 accel/tcg/cpu-exec.c                 |  4 +--
 accel/tcg/tcg-accel-ops-icount.c     |  1 +
 accel/tcg/tcg-accel-ops-mttcg.c      |  1 +
 accel/tcg/tcg-accel-ops-rr.c         |  1 +
 accel/tcg/tcg-accel-ops.c            |  1 +
 cpu.c                                |  8 +++---
 softmmu/arch_init.c                  |  9 +++++++
 softmmu/cpu-timers.c                 |  1 -
 softmmu/cpus.c                       | 23 +++++++++-------
 softmmu/globals.c                    |  2 --
 softmmu/memory_mapping.c             |  1 +
 softmmu/physmem.c                    |  7 +++--
 softmmu/vl.c                         |  5 +---
 target/alpha/translate.c             |  1 -
 target/i386/hax/hax-all.c            | 11 +++-----
 target/i386/nvmm/nvmm-all.c          | 14 +++++-----
 target/i386/tcg/sysemu/excp_helper.c |  1 +
 target/i386/tcg/sysemu/misc_helper.c |  1 +
 target/i386/whpx/whpx-accel-ops.c    |  6 +++++
 target/i386/whpx/whpx-all.c          | 18 ++++++-------
 target/riscv/csr.c                   |  1 +
 tests/unit/ptimer-test-stubs.c       |  1 -
 accel/meson.build                    | 12 +++++----
 accel/stubs/meson.build              | 11 +++++---
 softmmu/meson.build                  | 24 ++++++++---------
 85 files changed, 305 insertions(+), 336 deletions(-)

-- 
2.35.1




reply via email to

[Prev in Thread] Current Thread [Next in Thread]