mbox series

[00/11] Reduce usage of CPUArchState in cputlb.c

Message ID 20230912153428.17816-1-anjo@rev.ng (mailing list archive)
Headers show
Series Reduce usage of CPUArchState in cputlb.c | expand

Message

Anton Johansson Sept. 12, 2023, 3:34 p.m. UTC
This patchset reduces the dependence of cputlb.c on the full
CPUArchState, instead replacing it with the generic CPUState. Target-
facing functions such as probe_access(), cpu_ld*(), etc. are not
modified in this patchset, the idea is to try and isolate all usage of
CPUArchState into smaller wrapper functions that can eventually be
compiled and linked into the target, whilst keeping accel/tcg/
target-independent.

Anton Johansson (11):
  target/arm: Replace TARGET_PAGE_ENTRY_EXTRA
  include: Introduce tlb_ptr field to CPUState
  accel/tcg: Modify tlb_*() to use CPUState
  accel/tcg: Modify probe_access_internal() to use CPUState
  accel/tcg: Modifies memory access functions to use CPUState
  accel/tcg: Modify atomic_mmu_lookup() to use CPUState
  accel/tcg: Use CPUState in atomicity helpers
  include/exec: Remove env_tlb()
  tcg: Update env_tlb() comments
  accel/tcg: Unify user and softmmu do_[st|ld]*_mmu()
  accel/tcg: move ld/st helpers to ldst_common.c.inc

 accel/tcg/atomic_template.h    |  20 +-
 include/exec/cpu-all.h         |  11 +-
 include/exec/cpu-defs.h        |  18 +-
 include/exec/cpu_ldst.h        |   8 +-
 include/hw/core/cpu.h          |   6 +
 target/arm/cpu-param.h         |  12 -
 accel/tcg/cputlb.c             | 756 ++++++++++++---------------------
 accel/tcg/user-exec.c          | 276 +++---------
 target/arm/ptw.c               |   4 +-
 target/arm/tcg/mte_helper.c    |   2 +-
 target/arm/tcg/sve_helper.c    |   2 +-
 target/arm/tcg/tlb_helper.c    |   4 +-
 target/arm/tcg/translate-a64.c |   2 +-
 accel/tcg/ldst_atomicity.c.inc |  88 ++--
 accel/tcg/ldst_common.c.inc    | 225 ++++++++++
 tcg/aarch64/tcg-target.c.inc   |   2 +-
 tcg/arm/tcg-target.c.inc       |   2 +-
 17 files changed, 644 insertions(+), 794 deletions(-)

--
2.41.0