All of lore.kernel.org
 help / color / mirror / Atom feed
* [PULL 00/34] tcg patch queue
@ 2021-06-11 23:41 Richard Henderson
  2021-06-11 23:41 ` [PULL 01/34] meson: Split out tcg/meson.build Richard Henderson
                   ` (34 more replies)
  0 siblings, 35 replies; 44+ messages in thread
From: Richard Henderson @ 2021-06-11 23:41 UTC (permalink / raw)
  To: qemu-devel

This is mostly my code_gen_buffer cleanup, plus a few other random
changes thrown in.  Including a fix for a recent float32_exp2 bug.


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-20210611

for you to fetch changes up to 60afaddc208d34f6dc86dd974f6e02724fba6eb6:

  docs/devel: Explain in more detail the TB chaining mechanisms (2021-06-11 09:41:25 -0700)

----------------------------------------------------------------
Clean up code_gen_buffer allocation.
Add tcg_remove_ops_after.
Fix tcg_constant_* documentation.
Improve TB chaining documentation.
Fix float32_exp2.

----------------------------------------------------------------
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


^ permalink raw reply	[flat|nested] 44+ messages in thread
* [PULL 00/34] tcg patch queue
@ 2022-02-11  1:30 Richard Henderson
  2022-02-14 19:53 ` Peter Maydell
  0 siblings, 1 reply; 44+ messages in thread
From: Richard Henderson @ 2022-02-11  1:30 UTC (permalink / raw)
  To: qemu-devel; +Cc: peter.maydell

The following changes since commit 0a301624c2f4ced3331ffd5bce85b4274fe132af:

  Merge remote-tracking branch 'remotes/pmaydell/tags/pull-target-arm-20220208' into staging (2022-02-08 11:40:08 +0000)

are available in the Git repository at:

  https://gitlab.com/rth7680/qemu.git tags/pull-tcg-20220211

for you to fetch changes up to 5c1a101ef6b85537a4ade93c39ea81cadd5c246e:

  tests/tcg/multiarch: Add sigbus.c (2022-02-09 09:00:01 +1100)

----------------------------------------------------------------
Fix safe_syscall_base for sparc64.
Fix host signal handling for sparc64-linux.
Speedups for jump cache and work list probing.
Fix for exception replays.
Raise guest SIGBUS for user-only misaligned accesses.

----------------------------------------------------------------
Idan Horowitz (2):
      accel/tcg: Optimize jump cache flush during tlb range flush
      softmmu/cpus: Check if the cpu work list is empty atomically

Pavel Dovgalyuk (1):
      replay: use CF_NOIRQ for special exception-replaying TB

Richard Henderson (29):
      common-user/host/sparc64: Fix safe_syscall_base
      linux-user: Introduce host_signal_mask
      linux-user: Introduce host_sigcontext
      linux-user: Move sparc/host-signal.h to sparc64/host-signal.h
      linux-user/include/host/sparc64: Fix host_sigcontext
      tcg/i386: Support raising sigbus for user-only
      tcg/aarch64: Support raising sigbus for user-only
      tcg/ppc: Support raising sigbus for user-only
      tcg/riscv: Support raising sigbus for user-only
      tcg/s390x: Support raising sigbus for user-only
      tcg/tci: Support raising sigbus for user-only
      tcg/arm: Drop support for armv4 and armv5 hosts
      tcg/arm: Remove use_armv5t_instructions
      tcg/arm: Remove use_armv6_instructions
      tcg/arm: Check alignment for ldrd and strd
      tcg/arm: Support unaligned access for softmmu
      tcg/arm: Reserve a register for guest_base
      tcg/arm: Support raising sigbus for user-only
      tcg/mips: Support unaligned access for user-only
      tcg/mips: Support unaligned access for softmmu
      tcg/sparc: Use tcg_out_movi_imm13 in tcg_out_addsub2_i64
      tcg/sparc: Split out tcg_out_movi_imm32
      tcg/sparc: Add scratch argument to tcg_out_movi_int
      tcg/sparc: Improve code gen for shifted 32-bit constants
      tcg/sparc: Convert patch_reloc to return bool
      tcg/sparc: Use the constant pool for 64-bit constants
      tcg/sparc: Add tcg_out_jmpl_const for better tail calls
      tcg/sparc: Support unaligned access for user-only
      tests/tcg/multiarch: Add sigbus.c

WANG Xuerui (2):
      tcg/loongarch64: Fix fallout from recent MO_Q renaming
      tcg/loongarch64: Support raising sigbus for user-only

 linux-user/include/host/aarch64/host-signal.h     |  16 +-
 linux-user/include/host/alpha/host-signal.h       |  14 +-
 linux-user/include/host/arm/host-signal.h         |  14 +-
 linux-user/include/host/i386/host-signal.h        |  14 +-
 linux-user/include/host/loongarch64/host-signal.h |  14 +-
 linux-user/include/host/mips/host-signal.h        |  14 +-
 linux-user/include/host/ppc/host-signal.h         |  14 +-
 linux-user/include/host/riscv/host-signal.h       |  14 +-
 linux-user/include/host/s390/host-signal.h        |  14 +-
 linux-user/include/host/sparc/host-signal.h       |  63 ----
 linux-user/include/host/sparc64/host-signal.h     |  65 +++-
 linux-user/include/host/x86_64/host-signal.h      |  14 +-
 tcg/aarch64/tcg-target.h                          |   2 -
 tcg/arm/tcg-target.h                              |   6 +-
 tcg/i386/tcg-target.h                             |   2 -
 tcg/loongarch64/tcg-target.h                      |   2 -
 tcg/mips/tcg-target.h                             |   2 -
 tcg/ppc/tcg-target.h                              |   2 -
 tcg/riscv/tcg-target.h                            |   2 -
 tcg/s390x/tcg-target.h                            |   2 -
 accel/tcg/cpu-exec.c                              |   3 +-
 accel/tcg/cputlb.c                                |   9 +
 linux-user/signal.c                               |  22 +-
 softmmu/cpus.c                                    |   7 +-
 tcg/tci.c                                         |  20 +-
 tests/tcg/multiarch/sigbus.c                      |  68 ++++
 tcg/aarch64/tcg-target.c.inc                      |  91 ++++-
 tcg/arm/tcg-target.c.inc                          | 410 +++++++++-------------
 tcg/i386/tcg-target.c.inc                         | 103 +++++-
 tcg/loongarch64/tcg-target.c.inc                  |  73 +++-
 tcg/mips/tcg-target.c.inc                         | 387 ++++++++++++++++++--
 tcg/ppc/tcg-target.c.inc                          |  98 +++++-
 tcg/riscv/tcg-target.c.inc                        |  63 +++-
 tcg/s390x/tcg-target.c.inc                        |  59 +++-
 tcg/sparc/tcg-target.c.inc                        | 348 +++++++++++++++---
 common-user/host/sparc64/safe-syscall.inc.S       |   5 +-
 36 files changed, 1561 insertions(+), 495 deletions(-)
 delete mode 100644 linux-user/include/host/sparc/host-signal.h
 create mode 100644 tests/tcg/multiarch/sigbus.c


^ permalink raw reply	[flat|nested] 44+ messages in thread

end of thread, other threads:[~2022-02-14 19:54 UTC | newest]

Thread overview: 44+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-06-11 23:41 [PULL 00/34] tcg patch queue Richard Henderson
2021-06-11 23:41 ` [PULL 01/34] meson: Split out tcg/meson.build Richard Henderson
2021-06-11 23:41 ` [PULL 02/34] meson: Split out fpu/meson.build Richard Henderson
2021-06-11 23:41 ` [PULL 03/34] tcg: Re-order tcg_region_init vs tcg_prologue_init Richard Henderson
2021-06-14 14:36   ` Christian Borntraeger
2021-06-11 23:41 ` [PULL 04/34] tcg: Remove error return from tcg_region_initial_alloc__locked Richard Henderson
2021-06-11 23:41 ` [PULL 05/34] tcg: Split out tcg_region_initial_alloc Richard Henderson
2021-06-11 23:41 ` [PULL 06/34] tcg: Split out tcg_region_prologue_set Richard Henderson
2021-06-11 23:41 ` [PULL 07/34] tcg: Split out region.c Richard Henderson
2021-06-11 23:41 ` [PULL 08/34] accel/tcg: Inline cpu_gen_init Richard Henderson
2021-06-11 23:41 ` [PULL 09/34] accel/tcg: Move alloc_code_gen_buffer to tcg/region.c Richard Henderson
2021-06-11 23:41 ` [PULL 10/34] accel/tcg: Rename tcg_init to tcg_init_machine Richard Henderson
2021-06-11 23:41 ` [PULL 11/34] tcg: Create tcg_init Richard Henderson
2021-06-11 23:41 ` [PULL 12/34] accel/tcg: Merge tcg_exec_init into tcg_init_machine Richard Henderson
2021-06-11 23:41 ` [PULL 13/34] accel/tcg: Use MiB in tcg_init_machine Richard Henderson
2021-06-11 23:41 ` [PULL 14/34] accel/tcg: Pass down max_cpus to tcg_init Richard Henderson
2021-06-11 23:41 ` [PULL 15/34] tcg: Introduce tcg_max_ctxs Richard Henderson
2021-06-11 23:41 ` [PULL 16/34] tcg: Move MAX_CODE_GEN_BUFFER_SIZE to tcg-target.h Richard Henderson
2021-06-11 23:41 ` [PULL 17/34] tcg: Replace region.end with region.total_size Richard Henderson
2021-06-11 23:41 ` [PULL 18/34] tcg: Rename region.start to region.after_prologue Richard Henderson
2021-06-11 23:41 ` [PULL 19/34] tcg: Tidy tcg_n_regions Richard Henderson
2021-06-11 23:41 ` [PULL 20/34] tcg: Tidy split_cross_256mb Richard Henderson
2021-06-11 23:41 ` [PULL 21/34] tcg: Move in_code_gen_buffer and tests to region.c Richard Henderson
2021-06-11 23:41 ` [PULL 22/34] tcg: Allocate code_gen_buffer into struct tcg_region_state Richard Henderson
2021-06-11 23:41 ` [PULL 23/34] tcg: Return the map protection from alloc_code_gen_buffer Richard Henderson
2021-06-11 23:41 ` [PULL 24/34] tcg: Sink qemu_madvise call to common code Richard Henderson
2021-06-11 23:41 ` [PULL 25/34] util/osdep: Add qemu_mprotect_rw Richard Henderson
2021-06-11 23:41 ` [PULL 26/34] tcg: Round the tb_size default from qemu_get_host_physmem Richard Henderson
2021-06-11 23:41 ` [PULL 27/34] tcg: Merge buffer protection and guard page protection Richard Henderson
2021-06-11 23:41 ` [PULL 28/34] tcg: When allocating for !splitwx, begin with PROT_NONE Richard Henderson
2021-06-11 23:41 ` [PULL 29/34] tcg: Move tcg_init_ctx and tcg_ctx from accel/tcg/ Richard Henderson
2021-06-11 23:41 ` [PULL 30/34] tcg: Introduce tcg_remove_ops_after Richard Henderson
2021-06-11 23:41 ` [PULL 31/34] tcg: Fix documentation for tcg_constant_* vs tcg_temp_free_* Richard Henderson
2021-06-11 23:41 ` [PULL 32/34] tcg/arm: Fix tcg_out_op function signature Richard Henderson
2021-06-11 23:41 ` [PULL 33/34] softfloat: Fix tp init in float32_exp2 Richard Henderson
2021-06-11 23:41 ` [PULL 34/34] docs/devel: Explain in more detail the TB chaining mechanisms Richard Henderson
2021-06-13 15:13 ` [PULL 00/34] tcg patch queue Peter Maydell
2021-06-13 17:10   ` Peter Maydell
2021-06-14  1:37     ` Richard Henderson
2021-06-14  9:28       ` Peter Maydell
2021-06-14  9:35       ` Alex Bennée
2021-06-14 15:00         ` Philippe Mathieu-Daudé
2022-02-11  1:30 Richard Henderson
2022-02-14 19:53 ` Peter Maydell

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.