[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH v5 00/57] TCI fixes and cleanups
From: |
Richard Henderson |
Subject: |
[PATCH v5 00/57] TCI fixes and cleanups |
Date: |
Thu, 11 Mar 2021 08:39:01 -0600 |
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
- [PATCH v5 00/57] TCI fixes and cleanups,
Richard Henderson <=
- [PATCH v5 01/57] tcg/tci: Remove ifdefs for TCG_TARGET_HAS_ext32[us]_i64, Richard Henderson, 2021/03/11
- [PATCH v5 02/57] tcg/tci: Rename tci_read_r to tci_read_rval, Richard Henderson, 2021/03/11
- [PATCH v5 03/57] tcg/tci: Split out tci_args_rrs, Richard Henderson, 2021/03/11
- [PATCH v5 05/57] tcg/tci: Split out tci_args_rrr, Richard Henderson, 2021/03/11
- [PATCH v5 06/57] tcg/tci: Split out tci_args_rrrc, Richard Henderson, 2021/03/11