Changes for v2: * Move tcg_init_ctx someplace more private (patch 29) * Round result of tb_size based on qemu_get_host_physmem (patch 26)
Blurb for v1: It took a few more patches than imagined to unify the two places in which we manipulate the tcg code_gen buffer, but the result is surely cleaner. There's a lot more that could be done to clean up this part of tcg too. I tried to not get too side-tracked, but didn't wholly succeed. r~ Richard Henderson (29): meson: Split out tcg/meson.build meson: Split out fpu/meson.build tcg: Re-order tcg_region_init vs tcg_prologue_init tcg: Remove error return from tcg_region_initial_alloc__locked tcg: Split out tcg_region_initial_alloc tcg: Split out tcg_region_prologue_set tcg: Split out region.c accel/tcg: Inline cpu_gen_init accel/tcg: Move alloc_code_gen_buffer to tcg/region.c accel/tcg: Rename tcg_init to tcg_init_machine tcg: Create tcg_init accel/tcg: Merge tcg_exec_init into tcg_init_machine accel/tcg: Pass down max_cpus to tcg_init tcg: Introduce tcg_max_ctxs tcg: Move MAX_CODE_GEN_BUFFER_SIZE to tcg-target.h tcg: Replace region.end with region.total_size tcg: Rename region.start to region.after_prologue tcg: Tidy tcg_n_regions tcg: Tidy split_cross_256mb tcg: Move in_code_gen_buffer and tests to region.c tcg: Allocate code_gen_buffer into struct tcg_region_state tcg: Return the map protection from alloc_code_gen_buffer tcg: Sink qemu_madvise call to common code tcg: Do not set guard pages in the rx buffer util/osdep: Add qemu_mprotect_rw tcg: Round the tb_size default from qemu_get_host_physmem tcg: Merge buffer protection and guard page protection tcg: When allocating for !splitwx, begin with PROT_NONE tcg: Move tcg_init_ctx and tcg_ctx from accel/tcg/ meson.build | 13 +- accel/tcg/internal.h | 2 + include/qemu/osdep.h | 1 + include/sysemu/tcg.h | 2 - include/tcg/tcg.h | 15 +- tcg/aarch64/tcg-target.h | 1 + tcg/arm/tcg-target.h | 1 + tcg/i386/tcg-target.h | 2 + tcg/internal.h | 40 ++ tcg/mips/tcg-target.h | 6 + tcg/ppc/tcg-target.h | 2 + tcg/riscv/tcg-target.h | 1 + tcg/s390/tcg-target.h | 3 + tcg/sparc/tcg-target.h | 1 + tcg/tci/tcg-target.h | 1 + accel/tcg/tcg-all.c | 33 +- accel/tcg/translate-all.c | 439 +---------------- bsd-user/main.c | 1 - linux-user/main.c | 1 - tcg/region.c | 991 ++++++++++++++++++++++++++++++++++++++ tcg/tcg.c | 634 ++---------------------- util/osdep.c | 9 + fpu/meson.build | 1 + tcg/meson.build | 14 + 24 files changed, 1139 insertions(+), 1075 deletions(-) create mode 100644 tcg/internal.h create mode 100644 tcg/region.c create mode 100644 fpu/meson.build create mode 100644 tcg/meson.build -- 2.25.1