On 2/10/26 12:15 PM, Pierrick Bouvier wrote:
This series continues cleaning target/arm, especially tcg folder.For now, it contains some cleanups in headers, and it splits helpers per category, thus removing several usage of TARGET_AARCH64. First version was simply splitting 32 vs 64-bit helpers, and Richard asked to split per sub category. v3 -- - translate.h: missing vaddr replacement - move tcg_use_softmmu to tcg/tcg-internal.h to avoid duplicating compilation units between system and user builds. - eradicate TARGET_INSN_START_EXTRA_WORDS by calling tcg_gen_insn_start with additional 0 parameters if needed. v2 -- - add missing kvm_enabled() in arm-qmp-cmds.c - didn't extract arm_wfi for tcg/psci.c. If that's a hard requirement, I can do it in next version. - restricted scope of series to helper headers, so we can validate things one step at a time. Series will keep on growing once all patches are reviewed. - translate.h: use vaddr where appropriate, as asked by Richard. Pierrick Bouvier (12): target/arm: extract helper-mve.h from helper.h target/arm: extract helper-a64.h from helper.h target/arm: extract helper-sve.h from helper.h target/arm: extract helper-sme.h from helper.h tcg: move tcg_use_softmmu to tcg/tcg-internal.h target/arm: move exec/helper-* plumbery to helper.h target/arm/tcg/psci.c: make compilation unit common target/arm/tcg/cpu-v7m.c: make compilation unit common target/arm/tcg/vec_helper.c: make compilation unit common target/arm/tcg/translate.h: replace target_ulong with vaddr target/arm/tcg/translate.h: replace target_long with int64_t include/tcg/tcg-op.h: eradicate TARGET_INSN_START_EXTRA_WORDS include/tcg/tcg-op-common.h | 8 + include/tcg/tcg-op.h | 29 --- include/tcg/tcg.h | 6 - target/alpha/cpu-param.h | 2 - target/arm/cpu-param.h | 7 - target/arm/helper-a64.h | 14 ++ target/arm/helper-mve.h | 14 ++ target/arm/helper-sme.h | 14 ++ target/arm/helper-sve.h | 14 ++ target/arm/helper.h | 17 +- .../tcg/{helper-a64.h => helper-a64-defs.h} | 0 target/arm/tcg/{helper.h => helper-defs.h} | 0 .../tcg/{helper-mve.h => helper-mve-defs.h} | 0 .../tcg/{helper-sme.h => helper-sme-defs.h} | 0 .../tcg/{helper-sve.h => helper-sve-defs.h} | 0 target/arm/tcg/translate-a32.h | 2 +- target/arm/tcg/translate.h | 22 +- target/arm/tcg/vec_internal.h | 49 ++++ target/avr/cpu-param.h | 2 - target/hexagon/cpu-param.h | 2 - target/hppa/cpu-param.h | 2 - target/i386/cpu-param.h | 2 - target/loongarch/cpu-param.h | 2 - target/m68k/cpu-param.h | 2 - target/microblaze/cpu-param.h | 2 - target/mips/cpu-param.h | 2 - target/or1k/cpu-param.h | 2 - target/ppc/cpu-param.h | 2 - target/riscv/cpu-param.h | 7 - target/rx/cpu-param.h | 2 - target/s390x/cpu-param.h | 2 - target/sh4/cpu-param.h | 2 - target/sparc/cpu-param.h | 2 - target/tricore/cpu-param.h | 2 - target/xtensa/cpu-param.h | 2 - tcg/tcg-internal.h | 6 + target/alpha/translate.c | 4 +- target/arm/debug_helper.c | 4 +- target/arm/helper.c | 5 +- target/arm/tcg/arith_helper.c | 4 +- target/arm/tcg/crypto_helper.c | 4 +- target/arm/tcg/gengvec64.c | 3 +- target/arm/tcg/helper-a64.c | 6 +- target/arm/tcg/hflags.c | 4 +- target/arm/tcg/m_helper.c | 2 +- target/arm/tcg/mte_helper.c | 3 +- target/arm/tcg/mve_helper.c | 6 +- target/arm/tcg/neon_helper.c | 4 +- target/arm/tcg/op_helper.c | 2 +- target/arm/tcg/pauth_helper.c | 3 +- target/arm/tcg/psci.c | 4 +- target/arm/tcg/sme_helper.c | 5 +- target/arm/tcg/sve_helper.c | 6 +- target/arm/tcg/tlb_helper.c | 4 +- target/arm/tcg/translate-a64.c | 3 + target/arm/tcg/translate-mve.c | 1 + target/arm/tcg/translate-sme.c | 3 + target/arm/tcg/translate-sve.c | 3 + target/arm/tcg/translate.c | 25 +- target/arm/tcg/vec_helper.c | 224 ++---------------- target/arm/tcg/vec_helper64.c | 142 +++++++++++ target/arm/tcg/vfp_helper.c | 4 +- target/avr/translate.c | 2 +- target/hexagon/translate.c | 2 +- target/i386/tcg/translate.c | 2 +- target/loongarch/tcg/translate.c | 2 +- target/m68k/translate.c | 2 +- target/microblaze/translate.c | 2 +- target/or1k/translate.c | 2 +- target/ppc/translate.c | 2 +- target/rx/translate.c | 2 +- target/sh4/translate.c | 4 +- target/sparc/translate.c | 2 +- target/tricore/translate.c | 2 +- target/xtensa/translate.c | 2 +- tcg/tcg.c | 4 - target/arm/tcg/meson.build | 11 +- 77 files changed, 383 insertions(+), 381 deletions(-) create mode 100644 target/arm/helper-a64.h create mode 100644 target/arm/helper-mve.h create mode 100644 target/arm/helper-sme.h create mode 100644 target/arm/helper-sve.h rename target/arm/tcg/{helper-a64.h => helper-a64-defs.h} (100%) rename target/arm/tcg/{helper.h => helper-defs.h} (100%) rename target/arm/tcg/{helper-mve.h => helper-mve-defs.h} (100%) rename target/arm/tcg/{helper-sme.h => helper-sme-defs.h} (100%) rename target/arm/tcg/{helper-sve.h => helper-sve-defs.h} (100%) create mode 100644 target/arm/tcg/vec_helper64.c
Patches 1-11 are reviewed and ready to be pulled. Regards, Pierrick
