Based-on: 20240424230224.941028-1-richard.hender...@linaro.org ("[PATCH v3 00/20] Rewrite plugin code generation")
Rebase only. Reviews required for: 04-accel-tcg-Reorg-translator_ld.patch 06-accel-tcg-Record-mmio-bytes-during-translation.patch 07-accel-tcg-Record-when-translator_fake_ldb-is-used.patch 08-accel-tcg-Record-DisasContextBase-in-tcg_ctx-for-.patch 09-plugins-Copy-memory-in-qemu_plugin_insn_data.patch 10-accel-tcg-Implement-translator_st.patch 11-plugins-Use-translator_st-for-qemu_plugin_insn_da.patch 12-plugins-Read-mem_only-directly-from-TB-cflags.patch 13-plugins-Use-DisasContextBase-for-qemu_plugin_insn.patch 15-plugins-Merge-alloc_tcg_plugin_context-into-plugi.patch 18-disas-Split-disas.c.patch 19-disas-Use-translator_st-to-get-disassembly-data.patch 21-target-s390x-Fix-translator_fake_ld-length.patch 22-target-s390x-Disassemble-EXECUTEd-instructions.patch 23-target-hexagon-Use-translator_ldl-in-pkt_crosses_.patch 29-target-riscv-Use-translator_ld-for-everything.patch 32-target-s390x-Use-translator_lduw-in-get_next_pc.patch r~ Philippe Mathieu-Daudé (1): accel/tcg: Remove cpu_ldsb_code / cpu_ldsw_code Richard Henderson (32): accel/tcg: Use vaddr in translator_ld* accel/tcg: Hide in_same_page outside of a target-specific context accel/tcg: Pass DisasContextBase to translator_fake_ldb accel/tcg: Reorg translator_ld* accel/tcg: Cap the translation block when we encounter mmio accel/tcg: Record mmio bytes during translation accel/tcg: Record when translator_fake_ldb is used accel/tcg: Record DisasContextBase in tcg_ctx for plugins plugins: Copy memory in qemu_plugin_insn_data accel/tcg: Implement translator_st plugins: Use translator_st for qemu_plugin_insn_data plugins: Read mem_only directly from TB cflags plugins: Use DisasContextBase for qemu_plugin_insn_haddr plugins: Use DisasContextBase for qemu_plugin_tb_vaddr plugins: Merge alloc_tcg_plugin_context into plugin_gen_tb_start accel/tcg: Provide default implementation of disas_log accel/tcg: Return bool from TranslatorOps.disas_log disas: Split disas.c disas: Use translator_st to get disassembly data accel/tcg: Introduce translator_fake_ld target/s390x: Fix translator_fake_ld length target/s390x: Disassemble EXECUTEd instructions target/hexagon: Use translator_ldl in pkt_crosses_page target/microblaze: Use translator_ldl target/i386: Use translator_ldub for everything target/avr: Use translator_lduw target/cris: Use translator_ld* in cris_fetch target/cris: Use cris_fetch in translate_v10.c.inc target/riscv: Use translator_ld* for everything target/rx: Use translator_ld* target/xtensa: Use translator_ldub in xtensa_insn_len target/s390x: Use translator_lduw in get_next_pc disas/disas-internal.h | 4 + include/disas/disas.h | 9 +- include/exec/cpu_ldst.h | 10 - include/exec/plugin-gen.h | 7 +- include/exec/translator.h | 71 +++++-- include/qemu/plugin.h | 22 +- include/qemu/qemu-plugin.h | 15 +- include/qemu/typedefs.h | 1 + include/tcg/tcg.h | 1 + accel/tcg/plugin-gen.c | 63 +++--- accel/tcg/translator.c | 331 +++++++++++++++++++----------- contrib/plugins/execlog.c | 5 +- contrib/plugins/howvec.c | 4 +- disas/disas-common.c | 103 ++++++++++ disas/disas-host.c | 129 ++++++++++++ disas/disas-mon.c | 15 ++ disas/disas-target.c | 99 +++++++++ disas/disas.c | 337 ------------------------------- disas/objdump.c | 37 ++++ plugins/api.c | 57 ++++-- target/alpha/translate.c | 9 - target/arm/tcg/translate-a64.c | 11 - target/arm/tcg/translate.c | 12 -- target/avr/translate.c | 11 +- target/cris/translate.c | 37 +--- target/hexagon/translate.c | 11 +- target/hppa/translate.c | 21 +- target/i386/tcg/translate.c | 19 +- target/loongarch/tcg/translate.c | 8 - target/m68k/translate.c | 9 - target/microblaze/translate.c | 11 +- target/mips/tcg/translate.c | 9 - target/openrisc/translate.c | 11 - target/ppc/translate.c | 9 - target/riscv/translate.c | 24 +-- target/rx/translate.c | 35 ++-- target/s390x/tcg/translate.c | 26 ++- target/sh4/translate.c | 9 - target/sparc/translate.c | 9 - target/tricore/translate.c | 9 - target/xtensa/translate.c | 12 +- tcg/tcg.c | 12 -- target/cris/translate_v10.c.inc | 30 +-- disas/meson.build | 8 +- 44 files changed, 818 insertions(+), 864 deletions(-) create mode 100644 disas/disas-common.c create mode 100644 disas/disas-host.c create mode 100644 disas/disas-target.c delete mode 100644 disas/disas.c create mode 100644 disas/objdump.c -- 2.34.1