All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v5 00/57] TCI fixes and cleanups
@ 2021-03-11 14:39 Richard Henderson
  2021-03-11 14:39 ` [PATCH v5 01/57] tcg/tci: Remove ifdefs for TCG_TARGET_HAS_ext32[us]_i64 Richard Henderson
                   ` (59 more replies)
  0 siblings, 60 replies; 107+ messages in thread
From: Richard Henderson @ 2021-03-11 14:39 UTC (permalink / raw)
  To: qemu-devel; +Cc: sw, alex.bennee, f4bug

Changes since v4:
  * 19 more patches now upstream.

Changes since v3:
  * First patch fixes g2h() breakage.  This shows a hole in our CI,
    in that we only build softmmu with TCI, not linux-user.
  * Tidy-up for the magic qemu_ld/st macros.
  * Fix libffi return value case with ffi_arg.

Changes since v2:
  * 20-something patches are now upstream.
  * Increase testing timeout for tci.
  * Gitlab testing for tci w/ 32-bit host.


r~


Richard Henderson (57):
  tcg/tci: Remove ifdefs for TCG_TARGET_HAS_ext32[us]_i64
  tcg/tci: Rename tci_read_r to tci_read_rval
  tcg/tci: Split out tci_args_rrs
  tcg/tci: Split out tci_args_rr
  tcg/tci: Split out tci_args_rrr
  tcg/tci: Split out tci_args_rrrc
  tcg/tci: Split out tci_args_l
  tcg/tci: Split out tci_args_rrrrrc
  tcg/tci: Split out tci_args_rrcl and tci_args_rrrrcl
  tcg/tci: Split out tci_args_ri and tci_args_rI
  tcg/tci: Reuse tci_args_l for calls.
  tcg/tci: Reuse tci_args_l for exit_tb
  tcg/tci: Reuse tci_args_l for goto_tb
  tcg/tci: Split out tci_args_rrrrrr
  tcg/tci: Split out tci_args_rrrr
  tcg/tci: Clean up deposit operations
  tcg/tci: Reduce qemu_ld/st TCGMemOpIdx operand to 32-bits
  tcg/tci: Split out tci_args_{rrm,rrrm,rrrrm}
  tcg/tci: Hoist op_size checking into tci_args_*
  tcg/tci: Remove tci_disas
  tcg/tci: Implement the disassembler properly
  tcg: Build ffi data structures for helpers
  tcg/tci: Use ffi for calls
  tcg/tci: Improve tcg_target_call_clobber_regs
  tcg/tci: Move call-return regs to end of tcg_target_reg_alloc_order
  tcg/tci: Push opcode emit into each case
  tcg/tci: Split out tcg_out_op_rrs
  tcg/tci: Split out tcg_out_op_l
  tcg/tci: Split out tcg_out_op_p
  tcg/tci: Split out tcg_out_op_rr
  tcg/tci: Split out tcg_out_op_rrr
  tcg/tci: Split out tcg_out_op_rrrc
  tcg/tci: Split out tcg_out_op_rrrrrc
  tcg/tci: Split out tcg_out_op_rrrbb
  tcg/tci: Split out tcg_out_op_rrcl
  tcg/tci: Split out tcg_out_op_rrrrrr
  tcg/tci: Split out tcg_out_op_rrrr
  tcg/tci: Split out tcg_out_op_rrrrcl
  tcg/tci: Split out tcg_out_op_{rrm,rrrm,rrrrm}
  tcg/tci: Split out tcg_out_op_v
  tcg/tci: Split out tcg_out_op_np
  tcg/tci: Split out tcg_out_op_r[iI]
  tcg/tci: Reserve r13 for a temporary
  tcg/tci: Emit setcond before brcond
  tcg/tci: Remove tci_write_reg
  tcg/tci: Change encoding to uint32_t units
  tcg/tci: Implement goto_ptr
  tcg/tci: Implement movcond
  tcg/tci: Implement andc, orc, eqv, nand, nor
  tcg/tci: Implement extract, sextract
  tcg/tci: Implement clz, ctz, ctpop
  tcg/tci: Implement mulu2, muls2
  tcg/tci: Implement add2, sub2
  tcg/tci: Split out tci_qemu_ld, tci_qemu_st
  tests/tcg: Increase timeout for TCI
  gitlab: Rename ACCEL_CONFIGURE_OPTS to EXTRA_CONFIGURE_OPTS
  gitlab: Enable cross-i386 builds of TCI

 configure                                     |    3 +
 meson.build                                   |    9 +-
 include/exec/helper-ffi.h                     |  115 ++
 include/exec/helper-tcg.h                     |   24 +-
 include/tcg/tcg-opc.h                         |    6 +-
 include/tcg/tcg.h                             |    1 +
 target/hppa/helper.h                          |    2 +
 target/i386/ops_sse_header.h                  |    6 +
 target/m68k/helper.h                          |    1 +
 target/ppc/helper.h                           |    3 +
 tcg/tci/tcg-target-con-set.h                  |    2 +-
 tcg/tci/tcg-target.h                          |   81 +-
 disas/tci.c                                   |   61 -
 tcg/tcg.c                                     |   88 +-
 tcg/tci.c                                     | 1517 ++++++++++-------
 tcg/tci/tcg-target.c.inc                      |  704 +++++---
 .gitlab-ci.d/crossbuilds.yml                  |   21 +-
 tcg/tci/README                                |   20 +-
 .../dockerfiles/fedora-i386-cross.docker      |    1 +
 tests/docker/dockerfiles/fedora.docker        |    1 +
 tests/tcg/Makefile.target                     |    6 +-
 21 files changed, 1668 insertions(+), 1004 deletions(-)
 create mode 100644 include/exec/helper-ffi.h
 delete mode 100644 disas/tci.c

-- 
2.25.1



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

end of thread, other threads:[~2021-05-27 16:01 UTC | newest]

Thread overview: 107+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-03-11 14:39 [PATCH v5 00/57] TCI fixes and cleanups Richard Henderson
2021-03-11 14:39 ` [PATCH v5 01/57] tcg/tci: Remove ifdefs for TCG_TARGET_HAS_ext32[us]_i64 Richard Henderson
2021-03-11 16:05   ` Stefan Weil
2021-03-11 14:39 ` [PATCH v5 02/57] tcg/tci: Rename tci_read_r to tci_read_rval Richard Henderson
2021-03-16 22:46   ` Philippe Mathieu-Daudé
2021-03-11 14:39 ` [PATCH v5 03/57] tcg/tci: Split out tci_args_rrs Richard Henderson
2021-03-16 22:50   ` Philippe Mathieu-Daudé
2021-03-11 14:39 ` [PATCH v5 04/57] tcg/tci: Split out tci_args_rr Richard Henderson
2021-03-16 22:51   ` Philippe Mathieu-Daudé
2021-03-11 14:39 ` [PATCH v5 05/57] tcg/tci: Split out tci_args_rrr Richard Henderson
2021-03-16 22:53   ` Philippe Mathieu-Daudé
2021-03-17  3:38     ` Richard Henderson
2021-03-11 14:39 ` [PATCH v5 06/57] tcg/tci: Split out tci_args_rrrc Richard Henderson
2021-03-16 22:55   ` Philippe Mathieu-Daudé
2021-03-11 14:39 ` [PATCH v5 07/57] tcg/tci: Split out tci_args_l Richard Henderson
2021-03-16 22:56   ` Philippe Mathieu-Daudé
2021-03-11 14:39 ` [PATCH v5 08/57] tcg/tci: Split out tci_args_rrrrrc Richard Henderson
2021-03-16 22:58   ` Philippe Mathieu-Daudé
2021-03-11 14:39 ` [PATCH v5 09/57] tcg/tci: Split out tci_args_rrcl and tci_args_rrrrcl Richard Henderson
2021-03-16 23:00   ` Philippe Mathieu-Daudé
2021-03-11 14:39 ` [PATCH v5 10/57] tcg/tci: Split out tci_args_ri and tci_args_rI Richard Henderson
2021-03-16 23:52   ` Philippe Mathieu-Daudé
2021-03-11 14:39 ` [PATCH v5 11/57] tcg/tci: Reuse tci_args_l for calls Richard Henderson
2021-03-16 23:04   ` Philippe Mathieu-Daudé
2021-03-11 14:39 ` [PATCH v5 12/57] tcg/tci: Reuse tci_args_l for exit_tb Richard Henderson
2021-03-16 23:05   ` Philippe Mathieu-Daudé
2021-03-11 14:39 ` [PATCH v5 13/57] tcg/tci: Reuse tci_args_l for goto_tb Richard Henderson
2021-03-17  0:28   ` Philippe Mathieu-Daudé
2021-03-11 14:39 ` [PATCH v5 14/57] tcg/tci: Split out tci_args_rrrrrr Richard Henderson
2021-03-16 23:07   ` Philippe Mathieu-Daudé
2021-03-11 14:39 ` [PATCH v5 15/57] tcg/tci: Split out tci_args_rrrr Richard Henderson
2021-03-16 23:46   ` Philippe Mathieu-Daudé
2021-03-11 14:39 ` [PATCH v5 16/57] tcg/tci: Clean up deposit operations Richard Henderson
2021-03-17  0:32   ` Philippe Mathieu-Daudé
2021-03-11 14:39 ` [PATCH v5 17/57] tcg/tci: Reduce qemu_ld/st TCGMemOpIdx operand to 32-bits Richard Henderson
2021-03-16 23:10   ` Philippe Mathieu-Daudé
2021-03-11 14:39 ` [PATCH v5 18/57] tcg/tci: Split out tci_args_{rrm,rrrm,rrrrm} Richard Henderson
2021-03-16 23:14   ` Philippe Mathieu-Daudé
2021-03-11 14:39 ` [PATCH v5 19/57] tcg/tci: Hoist op_size checking into tci_args_* Richard Henderson
2021-03-16 22:23   ` Philippe Mathieu-Daudé
2021-03-11 14:39 ` [PATCH v5 20/57] tcg/tci: Remove tci_disas Richard Henderson
2021-03-16 22:24   ` Philippe Mathieu-Daudé
2021-03-11 14:39 ` [PATCH v5 21/57] tcg/tci: Implement the disassembler properly Richard Henderson
2021-03-17  0:38   ` Philippe Mathieu-Daudé
2021-03-11 14:39 ` [PATCH v5 22/57] tcg: Build ffi data structures for helpers Richard Henderson
2021-03-16 22:35   ` Philippe Mathieu-Daudé
2021-03-17  3:51     ` Richard Henderson
2021-03-11 14:39 ` [PATCH v5 23/57] tcg/tci: Use ffi for calls Richard Henderson
2021-03-11 14:39 ` [PATCH v5 24/57] tcg/tci: Improve tcg_target_call_clobber_regs Richard Henderson
2021-03-11 14:39 ` [PATCH v5 25/57] tcg/tci: Move call-return regs to end of tcg_target_reg_alloc_order Richard Henderson
2021-03-11 14:39 ` [PATCH v5 26/57] tcg/tci: Push opcode emit into each case Richard Henderson
2021-03-16 22:39   ` Philippe Mathieu-Daudé
2021-03-11 14:39 ` [PATCH v5 27/57] tcg/tci: Split out tcg_out_op_rrs Richard Henderson
2021-03-17 15:03   ` Philippe Mathieu-Daudé
2021-03-11 14:39 ` [PATCH v5 28/57] tcg/tci: Split out tcg_out_op_l Richard Henderson
2021-03-16 23:17   ` Philippe Mathieu-Daudé
2021-03-11 14:39 ` [PATCH v5 29/57] tcg/tci: Split out tcg_out_op_p Richard Henderson
2021-03-16 23:18   ` Philippe Mathieu-Daudé
2021-03-11 14:39 ` [PATCH v5 30/57] tcg/tci: Split out tcg_out_op_rr Richard Henderson
2021-03-16 23:45   ` Philippe Mathieu-Daudé
2021-03-11 14:39 ` [PATCH v5 31/57] tcg/tci: Split out tcg_out_op_rrr Richard Henderson
2021-03-16 23:27   ` Philippe Mathieu-Daudé
2021-03-11 14:39 ` [PATCH v5 32/57] tcg/tci: Split out tcg_out_op_rrrc Richard Henderson
2021-03-16 23:27   ` Philippe Mathieu-Daudé
2021-03-11 14:39 ` [PATCH v5 33/57] tcg/tci: Split out tcg_out_op_rrrrrc Richard Henderson
2021-03-16 23:28   ` Philippe Mathieu-Daudé
2021-03-11 14:39 ` [PATCH v5 34/57] tcg/tci: Split out tcg_out_op_rrrbb Richard Henderson
2021-03-16 23:29   ` Philippe Mathieu-Daudé
2021-03-11 14:39 ` [PATCH v5 35/57] tcg/tci: Split out tcg_out_op_rrcl Richard Henderson
2021-03-16 23:30   ` Philippe Mathieu-Daudé
2021-03-11 14:39 ` [PATCH v5 36/57] tcg/tci: Split out tcg_out_op_rrrrrr Richard Henderson
2021-03-16 23:30   ` Philippe Mathieu-Daudé
2021-03-11 14:39 ` [PATCH v5 37/57] tcg/tci: Split out tcg_out_op_rrrr Richard Henderson
2021-03-16 23:31   ` Philippe Mathieu-Daudé
2021-03-11 14:39 ` [PATCH v5 38/57] tcg/tci: Split out tcg_out_op_rrrrcl Richard Henderson
2021-03-16 23:31   ` Philippe Mathieu-Daudé
2021-03-11 14:39 ` [PATCH v5 39/57] tcg/tci: Split out tcg_out_op_{rrm,rrrm,rrrrm} Richard Henderson
2021-03-16 23:43   ` Philippe Mathieu-Daudé
2021-03-11 14:39 ` [PATCH v5 40/57] tcg/tci: Split out tcg_out_op_v Richard Henderson
2021-03-16 23:41   ` Philippe Mathieu-Daudé
2021-03-11 14:39 ` [PATCH v5 41/57] tcg/tci: Split out tcg_out_op_np Richard Henderson
2021-03-16 23:33   ` Philippe Mathieu-Daudé
2021-03-11 14:39 ` [PATCH v5 42/57] tcg/tci: Split out tcg_out_op_r[iI] Richard Henderson
2021-03-16 23:39   ` Philippe Mathieu-Daudé
2021-03-17  3:59     ` Richard Henderson
2021-03-17 17:15       ` Philippe Mathieu-Daudé
2021-03-11 14:39 ` [PATCH v5 43/57] tcg/tci: Reserve r13 for a temporary Richard Henderson
2021-03-11 14:39 ` [PATCH v5 44/57] tcg/tci: Emit setcond before brcond Richard Henderson
2021-03-11 14:39 ` [PATCH v5 45/57] tcg/tci: Remove tci_write_reg Richard Henderson
2021-03-11 14:39 ` [PATCH v5 46/57] tcg/tci: Change encoding to uint32_t units Richard Henderson
2021-03-11 14:39 ` [PATCH v5 47/57] tcg/tci: Implement goto_ptr Richard Henderson
2021-03-11 14:39 ` [PATCH v5 48/57] tcg/tci: Implement movcond Richard Henderson
2021-03-11 14:39 ` [PATCH v5 49/57] tcg/tci: Implement andc, orc, eqv, nand, nor Richard Henderson
2021-03-11 14:39 ` [PATCH v5 50/57] tcg/tci: Implement extract, sextract Richard Henderson
2021-03-11 14:39 ` [PATCH v5 51/57] tcg/tci: Implement clz, ctz, ctpop Richard Henderson
2021-03-11 14:39 ` [PATCH v5 52/57] tcg/tci: Implement mulu2, muls2 Richard Henderson
2021-03-16 22:44   ` Philippe Mathieu-Daudé
2021-03-11 14:39 ` [PATCH v5 53/57] tcg/tci: Implement add2, sub2 Richard Henderson
2021-03-11 14:39 ` [PATCH v5 54/57] tcg/tci: Split out tci_qemu_ld, tci_qemu_st Richard Henderson
2021-03-11 14:39 ` [PATCH v5 55/57] tests/tcg: Increase timeout for TCI Richard Henderson
2021-03-11 14:39 ` [PATCH v5 56/57] gitlab: Rename ACCEL_CONFIGURE_OPTS to EXTRA_CONFIGURE_OPTS Richard Henderson
2021-05-27 15:56   ` Philippe Mathieu-Daudé
2021-03-11 14:39 ` [PATCH v5 57/57] gitlab: Enable cross-i386 builds of TCI Richard Henderson
2021-05-27 15:57   ` Philippe Mathieu-Daudé
2021-03-11 15:28 ` [PATCH v5 00/57] TCI fixes and cleanups no-reply
2021-03-17  0:23 ` Philippe Mathieu-Daudé
2021-03-17  0:41 ` Philippe Mathieu-Daudé

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.