mbox

[PULL,00/47] tcg patch queue

Message ID 20221230000221.2764875-1-richard.henderson@linaro.org
State New
Headers show

Pull-request

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

Message

Richard Henderson Dec. 30, 2022, 12:01 a.m. UTC
The following changes since commit 222059a0fccf4af3be776fe35a5ea2d6a68f9a0b:

  Merge tag 'pull-ppc-20221221' of https://gitlab.com/danielhb/qemu into staging (2022-12-21 18:08:09 +0000)

are available in the Git repository at:

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

for you to fetch changes up to b05e35533782a71a9fda472afd08442f50622a3e:

  tests/tcg/multiarch: add vma-pthread.c (2022-12-29 12:39:45 -0800)

----------------------------------------------------------------
Fix race conditions in new user-only vma tracking.
Add tcg backend paired register allocation.
Cleanup tcg backend function call abi.

----------------------------------------------------------------
Ilya Leoshkevich (1):
      tests/tcg/multiarch: add vma-pthread.c

Mark Cave-Ayland (1):
      tcg: convert tcg/README to rst

Philippe Mathieu-Daudé (5):
      tcg/s390x: Fix coding style
      tcg: Massage process_op_defs()
      tcg: Pass number of arguments to tcg_emit_op() / tcg_op_insert_*()
      tcg: Convert typecode_to_ffi from array to function
      tcg: Factor init_ffi_layouts() out of tcg_context_init()

Richard Henderson (40):
      meson: Move CONFIG_TCG_INTERPRETER to config_host
      tcg: Cleanup trailing whitespace
      qemu/main-loop: Introduce QEMU_IOTHREAD_LOCK_GUARD
      hw/mips: Use QEMU_IOTHREAD_LOCK_GUARD in cpu_mips_irq_request
      target/ppc: Use QEMU_IOTHREAD_LOCK_GUARD in ppc_maybe_interrupt
      target/ppc: Use QEMU_IOTHREAD_LOCK_GUARD in cpu_interrupt_exittb
      target/riscv: Use QEMU_IOTHREAD_LOCK_GUARD in riscv_cpu_update_mip
      hw/ppc: Use QEMU_IOTHREAD_LOCK_GUARD in ppc_set_irq
      accel/tcg: Use QEMU_IOTHREAD_LOCK_GUARD in io_readx/io_writex
      tcg: Tidy tcg_reg_alloc_op
      tcg: Remove TCG_TARGET_STACK_GROWSUP
      tci: MAX_OPC_PARAM_IARGS is no longer used
      tcg: Fix tcg_reg_alloc_dup*
      tcg: Centralize updates to reg_to_temp
      tcg: Remove check_regs
      tcg: Introduce paired register allocation
      accel/tcg: Set cflags_next_tb in cpu_common_initfn
      target/sparc: Avoid TCGV_{LOW,HIGH}
      tcg: Move TCG_{LOW,HIGH} to tcg-internal.h
      tcg: Add temp_subindex to TCGTemp
      tcg: Simplify calls to temp_sync vs mem_coherent
      tcg: Allocate TCGTemp pairs in host memory order
      tcg: Move TCG_TYPE_COUNT outside enum
      tcg: Introduce tcg_type_size
      tcg: Introduce TCGCallReturnKind and TCGCallArgumentKind
      tcg: Replace TCG_TARGET_CALL_ALIGN_ARGS with TCG_TARGET_CALL_ARG_I64
      tcg: Replace TCG_TARGET_EXTEND_ARGS with TCG_TARGET_CALL_ARG_I32
      tcg: Use TCG_CALL_ARG_EVEN for TCI special case
      accel/tcg/plugin: Don't search for the function pointer index
      accel/tcg/plugin: Avoid duplicate copy in copy_call
      accel/tcg/plugin: Use copy_op in append_{udata,mem}_cb
      tcg: Vary the allocation size for TCGOp
      tcg: Use output_pref wrapper function
      tcg: Reorg function calls
      tcg: Move ffi_cif pointer into TCGHelperInfo
      tcg/aarch64: Merge tcg_out_callr into tcg_out_call
      tcg: Add TCGHelperInfo argument to tcg_out_call
      accel/tcg: Fix tb_invalidate_phys_page_unwind
      accel/tcg: Use g_free_rcu for user-exec interval trees
      accel/tcg: Handle false negative lookup in page_check_range

 docs/devel/atomics.rst               |    2 +
 docs/devel/index-tcg.rst             |    1 +
 docs/devel/tcg-ops.rst               |  941 +++++++++++++++++++
 docs/devel/tcg.rst                   |    2 +-
 meson.build                          |    4 +-
 include/exec/helper-head.h           |    2 +-
 include/qemu/main-loop.h             |   29 +
 include/tcg/tcg-op.h                 |   35 +-
 include/tcg/tcg.h                    |   96 +-
 tcg/aarch64/tcg-target.h             |    4 +-
 tcg/arm/tcg-target.h                 |    4 +-
 tcg/i386/tcg-target.h                |    2 +
 tcg/loongarch64/tcg-target.h         |    3 +-
 tcg/mips/tcg-target.h                |    4 +-
 tcg/riscv/tcg-target.h               |    7 +-
 tcg/s390x/tcg-target.h               |    3 +-
 tcg/sparc64/tcg-target.h             |    3 +-
 tcg/tcg-internal.h                   |   58 +-
 tcg/tci/tcg-target.h                 |    7 +
 tests/tcg/multiarch/nop_func.h       |   25 +
 accel/tcg/cputlb.c                   |   25 +-
 accel/tcg/plugin-gen.c               |   54 +-
 accel/tcg/tb-maint.c                 |   78 +-
 accel/tcg/user-exec.c                |   59 +-
 hw/core/cpu-common.c                 |    1 +
 hw/mips/mips_int.c                   |   11 +-
 hw/ppc/ppc.c                         |   10 +-
 target/ppc/excp_helper.c             |   11 +-
 target/ppc/helper_regs.c             |   14 +-
 target/riscv/cpu_helper.c            |   10 +-
 target/sparc/translate.c             |   21 +-
 tcg/optimize.c                       |   10 +-
 tcg/tcg-op-vec.c                     |   10 +-
 tcg/tcg-op.c                         |   49 +-
 tcg/tcg.c                            | 1658 +++++++++++++++++++++-------------
 tcg/tci.c                            |    1 -
 tests/tcg/multiarch/munmap-pthread.c |   16 +-
 tests/tcg/multiarch/vma-pthread.c    |  207 +++++
 tcg/aarch64/tcg-target.c.inc         |   19 +-
 tcg/arm/tcg-target.c.inc             |   10 +-
 tcg/i386/tcg-target.c.inc            |    5 +-
 tcg/loongarch64/tcg-target.c.inc     |    7 +-
 tcg/mips/tcg-target.c.inc            |    3 +-
 tcg/ppc/tcg-target.c.inc             |   36 +-
 tcg/riscv/tcg-target.c.inc           |    7 +-
 tcg/s390x/tcg-target.c.inc           |   32 +-
 tcg/sparc64/tcg-target.c.inc         |    3 +-
 tcg/tci/tcg-target.c.inc             |    7 +-
 tcg/README                           |  784 ----------------
 tests/tcg/multiarch/Makefile.target  |    3 +
 50 files changed, 2630 insertions(+), 1763 deletions(-)
 create mode 100644 docs/devel/tcg-ops.rst
 create mode 100644 tests/tcg/multiarch/nop_func.h
 create mode 100644 tests/tcg/multiarch/vma-pthread.c
 delete mode 100644 tcg/README

Comments

Peter Maydell Jan. 5, 2023, 2:04 p.m. UTC | #1
On Fri, 30 Dec 2022 at 00:21, Richard Henderson
<richard.henderson@linaro.org> wrote:
>
> The following changes since commit 222059a0fccf4af3be776fe35a5ea2d6a68f9a0b:
>
>   Merge tag 'pull-ppc-20221221' of https://gitlab.com/danielhb/qemu into staging (2022-12-21 18:08:09 +0000)
>
> are available in the Git repository at:
>
>   https://gitlab.com/rth7680/qemu.git tags/pull-tcg-20221229
>
> for you to fetch changes up to b05e35533782a71a9fda472afd08442f50622a3e:
>
>   tests/tcg/multiarch: add vma-pthread.c (2022-12-29 12:39:45 -0800)
>
> ----------------------------------------------------------------
> Fix race conditions in new user-only vma tracking.
> Add tcg backend paired register allocation.
> Cleanup tcg backend function call abi.
>
> ----------------------------------------------------------------

This seems to consistently fail on the sparc64 boot-serial-test and
prom-env-test qtests on the cross-i386-system job:
https://gitlab.com/qemu-project/qemu/-/jobs/3556359194
https://gitlab.com/qemu-project/qemu/-/jobs/3558798430

A couple of the sparc avocado tests also now timeout and fail
with the INTERRUPTED state:
https://gitlab.com/qemu-project/qemu/-/jobs/3556359335
https://gitlab.com/qemu-project/qemu/-/jobs/3558798558

So it looks like there's a problem for sparc guests here somewhere.

thanks
-- PMM