Re: [PULL v2 00/34] tcg patch queue
On Mon, 14 Jun 2021 at 02:21, Richard Henderson wrote: > > V2 fixes an error in patch 22 wrt MacOS. > It's a shame we don't have public CI for that. > > > r~ > > > The following changes since commit 894fc4fd670aaf04a67dc7507739f914ff4bacf2: > > Merge remote-tracking branch 'remotes/jasowang/tags/net-pull-request' into > staging (2021-06-11 09:21:48 +0100) > > are available in the Git repository at: > > https://gitlab.com/rth7680/qemu.git tags/pull-tcg-20210613 > > for you to fetch changes up to a5a8b84772e13066c6c45f480cc5b5312bbde08e: > > docs/devel: Explain in more detail the TB chaining mechanisms (2021-06-13 > 17:42:40 -0700) > > > Clean up code_gen_buffer allocation. > Add tcg_remove_ops_after. > Fix tcg_constant_* documentation. > Improve TB chaining documentation. > Fix float32_exp2. > Fix arm tcg_out_op function signature. > > Applied, thanks. Please update the changelog at https://wiki.qemu.org/ChangeLog/6.1 for any user-visible changes. -- PMM
Re: [PULL v2 00/34] tcg patch queue
On 6/14/21 3:20 AM, Richard Henderson wrote: > V2 fixes an error in patch 22 wrt MacOS. > It's a shame we don't have public CI for that. We do: https://cirrus-ci.com/github/qemu/qemu Maybe it is not documented well enough? Apparently we could integrate it to gitlab pipeline: https://potyarkin.ml/posts/2020/cirrus-ci-integration-for-gitlab-projects/ > > > r~
[PULL v2 00/34] tcg patch queue
V2 fixes an error in patch 22 wrt MacOS. It's a shame we don't have public CI for that. r~ The following changes since commit 894fc4fd670aaf04a67dc7507739f914ff4bacf2: Merge remote-tracking branch 'remotes/jasowang/tags/net-pull-request' into staging (2021-06-11 09:21:48 +0100) are available in the Git repository at: https://gitlab.com/rth7680/qemu.git tags/pull-tcg-20210613 for you to fetch changes up to a5a8b84772e13066c6c45f480cc5b5312bbde08e: docs/devel: Explain in more detail the TB chaining mechanisms (2021-06-13 17:42:40 -0700) Clean up code_gen_buffer allocation. Add tcg_remove_ops_after. Fix tcg_constant_* documentation. Improve TB chaining documentation. Fix float32_exp2. Fix arm tcg_out_op function signature. Jose R. Ziviani (1): tcg/arm: Fix tcg_out_op function signature Luis Pires (1): docs/devel: Explain in more detail the TB chaining mechanisms Richard Henderson (32): 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: Use MiB in 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 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/ tcg: Introduce tcg_remove_ops_after tcg: Fix documentation for tcg_constant_* vs tcg_temp_free_* softfloat: Fix tp init in float32_exp2 docs/devel/tcg.rst| 101 - meson.build | 12 +- accel/tcg/internal.h | 2 + include/qemu/osdep.h | 1 + include/sysemu/tcg.h | 2 - include/tcg/tcg.h | 28 +- tcg/aarch64/tcg-target.h | 1 + tcg/arm/tcg-target.h | 1 + tcg/i386/tcg-target.h | 2 + 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/tcg-internal.h| 40 ++ tcg/tci/tcg-target.h | 1 + accel/tcg/tcg-all.c | 32 +- accel/tcg/translate-all.c | 439 +--- bsd-user/main.c | 3 +- fpu/softfloat.c | 2 +- linux-user/main.c | 1 - tcg/region.c | 999 ++ tcg/tcg.c | 649 +++--- util/osdep.c | 9 + tcg/arm/tcg-target.c.inc | 3 +- fpu/meson.build | 1 + tcg/meson.build | 14 + 27 files changed, 1266 insertions(+), 1090 deletions(-) create mode 100644 tcg/tcg-internal.h create mode 100644 tcg/region.c create mode 100644 fpu/meson.build create mode 100644 tcg/meson.build
Re: [PULL v2 00/34] tcg patch queue
On Thu, 16 Jan 2020 at 01:40, Richard Henderson wrote: > > For version 2, drop the -static and -pie changes, > i.e. patches 1-7 from version 1. > > I'll come back to those after the required linux-user changes are > upstream. In the meantime, it's still a large enough set of patches. > > > r~ > > > > The following changes since commit 3a63b24a1bbf166e6f455fe43a6bbd8dea413d92: > > Merge remote-tracking branch 'remotes/kraxel/tags/ui-20200114-pull-request' > into staging (2020-01-14 16:00:31 +) > > are available in the Git repository at: > > https://github.com/rth7680/qemu.git tags/pull-tcg-20200115 > > for you to fetch changes up to 3e5a01ef0268ee4c9d342a26dbf6624d6b5b20d6: > > MAINTAINERS: Replace Claudio Fontana for tcg/aarch64 (2020-01-15 15:13:10 > -1000) > > > Add cpu_{ld,st}*_mmuidx_ra > Remove MMU_MODE*_SUFFIX > Move tcg headers under include/ > Applied, thanks. Please update the changelog at https://wiki.qemu.org/ChangeLog/5.0 for any user-visible changes. -- PMM
[PULL v2 00/34] tcg patch queue
For version 2, drop the -static and -pie changes, i.e. patches 1-7 from version 1. I'll come back to those after the required linux-user changes are upstream. In the meantime, it's still a large enough set of patches. r~ The following changes since commit 3a63b24a1bbf166e6f455fe43a6bbd8dea413d92: Merge remote-tracking branch 'remotes/kraxel/tags/ui-20200114-pull-request' into staging (2020-01-14 16:00:31 +) are available in the Git repository at: https://github.com/rth7680/qemu.git tags/pull-tcg-20200115 for you to fetch changes up to 3e5a01ef0268ee4c9d342a26dbf6624d6b5b20d6: MAINTAINERS: Replace Claudio Fontana for tcg/aarch64 (2020-01-15 15:13:10 -1000) Add cpu_{ld,st}*_mmuidx_ra Remove MMU_MODE*_SUFFIX Move tcg headers under include/ Philippe Mathieu-Daudé (4): tcg: Search includes from the project root source directory tcg: Search includes in the parent source directory tcg: Move TCG headers to include/tcg/ configure: Remove tcg/ from the preprocessor include search list Richard Henderson (30): target/xtensa: Use probe_access for itlb_hit_test cputlb: Use trace_mem_get_info instead of trace_mem_build_info trace: Remove trace_mem_build_info_no_se_[bl]e target/s390x: Include tcg.h in mem_helper.c target/arm: Include tcg.h in sve_helper.c accel/tcg: Include tcg.h in tcg-runtime.c linux-user: Include tcg.h in syscall.c linux-user: Include trace-root.h in syscall-trace.h plugins: Include trace/mem.h in api.c cputlb: Move body of cpu_ldst_template.h out of line translator: Use cpu_ld*_code instead of open-coding cputlb: Rename helper_ret_ld*_cmmu to cpu_ld*_code cputlb: Provide cpu_(ld,st}*_mmuidx_ra for user-only target/i386: Use cpu_*_mmuidx_ra instead of templates cputlb: Expand cpu_ldst_useronly_template.h in user-exec.c target/nios2: Remove MMU_MODE{0,1}_SUFFIX target/alpha: Remove MMU_MODE{0,1}_SUFFIX target/cris: Remove MMU_MODE{0,1}_SUFFIX target/i386: Remove MMU_MODE{0,1,2}_SUFFIX target/microblaze: Remove MMU_MODE{0,1,2}_SUFFIX target/sh4: Remove MMU_MODE{0,1}_SUFFIX target/unicore32: Remove MMU_MODE{0,1}_SUFFIX target/xtensa: Remove MMU_MODE{0,1,2,3}_SUFFIX target/m68k: Use cpu_*_mmuidx_ra instead of MMU_MODE{0,1}_SUFFIX target/mips: Use cpu_*_mmuidx_ra instead of MMU_MODE*_SUFFIX target/s390x: Use cpu_*_mmuidx_ra instead of MMU_MODE*_SUFFIX target/ppc: Use cpu_*_mmuidx_ra instead of MMU_MODE*_SUFFIX cputlb: Remove support for MMU_MODE*_SUFFIX cputlb: Expand cpu_ldst_template.h in cputlb.c MAINTAINERS: Replace Claudio Fontana for tcg/aarch64 accel/tcg/atomic_template.h | 67 ++--- include/exec/cpu_ldst.h | 446 +- include/exec/cpu_ldst_template.h | 211 -- include/exec/cpu_ldst_useronly_template.h | 159 --- include/exec/translator.h | 48 +--- {tcg => include/tcg}/tcg-gvec-desc.h | 0 {tcg => include/tcg}/tcg-mo.h | 0 {tcg => include/tcg}/tcg-op-gvec.h| 0 {tcg => include/tcg}/tcg-op.h | 2 +- {tcg => include/tcg}/tcg-opc.h| 0 {tcg => include/tcg}/tcg.h| 33 +-- include/user/syscall-trace.h | 2 + target/alpha/cpu.h| 2 - target/cris/cpu.h | 2 - target/i386/cpu.h | 3 - target/m68k/cpu.h | 2 - target/microblaze/cpu.h | 3 - target/mips/cpu.h | 4 - target/nios2/cpu.h| 2 - target/ppc/cpu.h | 2 - target/s390x/cpu.h| 5 - target/sh4/cpu.h | 2 - target/unicore32/cpu.h| 2 - target/xtensa/cpu.h | 4 - tcg/i386/tcg-target.h | 2 +- trace/mem-internal.h | 17 -- accel/tcg/cpu-exec.c | 2 +- accel/tcg/cputlb.c| 315 - accel/tcg/tcg-runtime-gvec.c | 2 +- accel/tcg/tcg-runtime.c | 1 + accel/tcg/translate-all.c | 2 +- accel/tcg/user-exec.c | 238 +++- bsd-user/main.c | 2 +- cpus.c| 2 +- exec.c| 2 +- linux-user/main.c | 2 +- linux-user/syscall.c | 1 + plugins/api.c | 1 + target/alpha/translate.c | 2 +- target/arm/helper-a64.c | 2 +- t