mbox series

[00/24] include/exec: Rework (part 2)

Message ID 20240418192525.97451-1-philmd@linaro.org
Headers show
Series include/exec: Rework (part 2) | expand

Message

Philippe Mathieu-Daudé April 18, 2024, 7:24 p.m. UTC
Reordering exec/, second round. Mostly splitting:
- TCG LDST API (to "exec/cpu_ldst.h")
- CPU TLB APIs (to "exec/cputlb.h")
from "exec/cpu-all.h" and "exec/exec-all.h", and
reducing inclusions of "hw/core/cpu.h".

Based-on: <20240417182806.69446-1-philmd@linaro.org>
or https://gitlab.com/philmd/qemu/-/commits/exec-next

Philippe Mathieu-Daudé (24):
  exec: Declare MMUAccessType type in 'mmu-access-type.h' header
  exec: Declare CPUBreakpoint/CPUWatchpoint type in 'breakpoint.h'
    header
  hw/core: Avoid including the full 'hw/core/cpu.h' in 'tcg-cpu-ops.h'
  exec: Restrict TCG specific declarations of 'cputlb.h'
  exec: Restrict 'cpu_ldst.h' to TCG accelerator
  exec: Have guest_addr_valid() methods take abi_ptr/size_t arguments
  exec: Un-inline tlb_vaddr_to_host() and declare it in 'exec/cputlb.h'
  physmem: Move TCG CPU IOTLB methods around
  physmem: Restrict TCG CPU IOTLB code to TCG accel
  exec: Reduce tlb_set_dirty() declaration scope
  exec: Move tlb_reset_dirty*() declarations to 'exec/cputlb.h'
  exec: Move CPUTLBEntry helpers to cputlb.c
  target/sparc: Replace abi_ulong by uint32_t for TARGET_ABI32
  exec: Rename 'exec/user/guest-base.h' as 'user/guest-base.h'
  exec: Restrict inclusion of 'user/guest-base.h'
  exec: Move GUEST_ADDR_MAX definition to 'cpu_ldst.h'
  exec: Include missing 'qemu/log-for-trace.h' header in 'exec/log.h'
  plugins: Include missing 'qemu/bitmap.h' header
  gdbstub: Avoid including 'cpu.h' in 'gdbstub/helpers.h'
  hw/xtensa: Include missing 'exec/cpu-common.h' in 'bootparam.h'
  plugins: Un-inline qemu_plugin_disable_mem_helpers()
  exec: Remove 'exec/tswap.h' from 'exec/cpu-all.h'
  exec: Remove 'disas/disas.h' from 'exec/log.h'
  exec: Remove unnecessary inclusions of 'hw/core/cpu.h'

 hw/xtensa/bootparam.h            |   3 +
 include/exec/breakpoint.h        |  23 ++++++
 include/exec/cpu-all.h           |  39 +---------
 include/exec/cpu-defs.h          |   1 -
 include/exec/cpu_ldst.h          | 122 ++++++++++---------------------
 include/exec/cputlb.h            |  58 ++++++++++++++-
 include/exec/exec-all.h          |  26 +------
 include/exec/log.h               |   2 +-
 include/exec/mmu-access-type.h   |  18 +++++
 include/exec/ram_addr.h          |   1 +
 include/exec/user/guest-base.h   |  12 ---
 include/gdbstub/helpers.h        |   3 +-
 include/hw/boards.h              |   1 -
 include/hw/core/cpu.h            |  24 +-----
 include/hw/core/tcg-cpu-ops.h    |   6 +-
 include/hw/ppc/openpic.h         |   1 -
 include/qemu/plugin.h            |   7 +-
 include/sysemu/hw_accel.h        |   1 -
 include/user/guest-base.h        |  18 +++++
 target/arm/internals.h           |   1 +
 target/ppc/internal.h            |   1 +
 target/riscv/debug.h             |   2 +
 accel/stubs/tcg-stub.c           |   4 -
 accel/tcg/cpu-exec.c             |   1 -
 accel/tcg/cputlb.c               |  53 +++++++++++++-
 accel/tcg/translator.c           |   1 +
 accel/tcg/user-exec.c            |   7 ++
 bsd-user/main.c                  |   1 +
 hw/arm/boot.c                    |   1 +
 hw/arm/npcm7xx.c                 |   1 +
 hw/mips/fuloong2e.c              |   1 +
 hw/mips/malta.c                  |   1 +
 hw/ppc/sam460ex.c                |   1 +
 hw/ppc/spapr.c                   |   1 +
 hw/ppc/virtex_ml507.c            |   1 +
 hw/sh4/r2d.c                     |   1 +
 linux-user/elfload.c             |   1 +
 linux-user/main.c                |   1 +
 plugins/core.c                   |   5 ++
 system/physmem.c                 |  58 ++++++++-------
 target/arm/gdbstub.c             |   1 +
 target/arm/tcg/helper-a64.c      |   1 +
 target/avr/gdbstub.c             |   1 +
 target/avr/translate.c           |   1 +
 target/hexagon/translate.c       |   1 +
 target/loongarch/tcg/translate.c |   1 +
 target/riscv/vector_helper.c     |   1 +
 target/rx/translate.c            |   1 +
 target/sparc/gdbstub.c           |   2 +-
 target/sparc/mmu_helper.c        |   1 +
 target/tricore/gdbstub.c         |   1 +
 target/xtensa/xtensa-semi.c      |   1 +
 tcg/tcg.c                        |   3 +-
 53 files changed, 300 insertions(+), 226 deletions(-)
 create mode 100644 include/exec/breakpoint.h
 create mode 100644 include/exec/mmu-access-type.h
 delete mode 100644 include/exec/user/guest-base.h
 create mode 100644 include/user/guest-base.h

Comments

Philippe Mathieu-Daudé April 18, 2024, 7:35 p.m. UTC | #1
On 18/4/24 21:24, Philippe Mathieu-Daudé wrote:
> Reordering exec/, second round. Mostly splitting:
> - TCG LDST API (to "exec/cpu_ldst.h")
> - CPU TLB APIs (to "exec/cputlb.h")
> from "exec/cpu-all.h" and "exec/exec-all.h", and
> reducing inclusions of "hw/core/cpu.h".
> 
> Based-on: <20240417182806.69446-1-philmd@linaro.org>
> or https://gitlab.com/philmd/qemu/-/commits/exec-next

And this series is available as
https://gitlab.com/philmd/qemu/-/commits/exec-rework-part2/

> Philippe Mathieu-Daudé (24):
>    exec: Declare MMUAccessType type in 'mmu-access-type.h' header
>    exec: Declare CPUBreakpoint/CPUWatchpoint type in 'breakpoint.h'
>      header
>    hw/core: Avoid including the full 'hw/core/cpu.h' in 'tcg-cpu-ops.h'
>    exec: Restrict TCG specific declarations of 'cputlb.h'
>    exec: Restrict 'cpu_ldst.h' to TCG accelerator
>    exec: Have guest_addr_valid() methods take abi_ptr/size_t arguments
>    exec: Un-inline tlb_vaddr_to_host() and declare it in 'exec/cputlb.h'
>    physmem: Move TCG CPU IOTLB methods around
>    physmem: Restrict TCG CPU IOTLB code to TCG accel
>    exec: Reduce tlb_set_dirty() declaration scope
>    exec: Move tlb_reset_dirty*() declarations to 'exec/cputlb.h'
>    exec: Move CPUTLBEntry helpers to cputlb.c
>    target/sparc: Replace abi_ulong by uint32_t for TARGET_ABI32
>    exec: Rename 'exec/user/guest-base.h' as 'user/guest-base.h'
>    exec: Restrict inclusion of 'user/guest-base.h'
>    exec: Move GUEST_ADDR_MAX definition to 'cpu_ldst.h'
>    exec: Include missing 'qemu/log-for-trace.h' header in 'exec/log.h'
>    plugins: Include missing 'qemu/bitmap.h' header
>    gdbstub: Avoid including 'cpu.h' in 'gdbstub/helpers.h'
>    hw/xtensa: Include missing 'exec/cpu-common.h' in 'bootparam.h'
>    plugins: Un-inline qemu_plugin_disable_mem_helpers()
>    exec: Remove 'exec/tswap.h' from 'exec/cpu-all.h'
>    exec: Remove 'disas/disas.h' from 'exec/log.h'
>    exec: Remove unnecessary inclusions of 'hw/core/cpu.h'