From: Richard Henderson <richard.henderson@linaro.org>
To: qemu-devel@nongnu.org
Cc: git@xen0n.name, gaosong@loongson.cn, philmd@linaro.org,
qemu-arm@nongnu.org, qemu-riscv@nongnu.org,
qemu-s390x@nongnu.org
Subject: [PATCH v5 00/30] tcg: Simplify calls to load/store helpers
Date: Sat, 6 May 2023 08:22:05 +0100 [thread overview]
Message-ID: <20230506072235.597467-1-richard.henderson@linaro.org> (raw)
There are several changes to the load/store helpers coming, and making
sure that those changes are properly reflected across all of the backends
was harrowing.
I have gone back and restarted by hoisting the code out of the backends
and into tcg.c. We already have all of the parameters for the host
function call abi for "normal" helpers, we simply need to apply that to
the load/store slow path.
Changes for v5:
* 24 patches upstreamed; 6 of the remaining 30 have reviews, but
could not be merged out of order.
r~
Richard Henderson (30):
tcg/i386: Introduce prepare_host_addr
tcg/i386: Use indexed addressing for softmmu fast path
tcg/aarch64: Introduce prepare_host_addr
tcg/arm: Introduce prepare_host_addr
tcg/loongarch64: Introduce prepare_host_addr
tcg/mips: Introduce prepare_host_addr
tcg/ppc: Introduce prepare_host_addr
tcg/riscv: Introduce prepare_host_addr
tcg/s390x: Introduce prepare_host_addr
tcg: Add routines for calling slow-path helpers
tcg/i386: Convert tcg_out_qemu_ld_slow_path
tcg/i386: Convert tcg_out_qemu_st_slow_path
tcg/aarch64: Convert tcg_out_qemu_{ld,st}_slow_path
tcg/arm: Convert tcg_out_qemu_{ld,st}_slow_path
tcg/loongarch64: Convert tcg_out_qemu_{ld,st}_slow_path
tcg/mips: Convert tcg_out_qemu_{ld,st}_slow_path
tcg/ppc: Convert tcg_out_qemu_{ld,st}_slow_path
tcg/riscv: Convert tcg_out_qemu_{ld,st}_slow_path
tcg/s390x: Convert tcg_out_qemu_{ld,st}_slow_path
tcg/loongarch64: Simplify constraints on qemu_ld/st
tcg/mips: Remove MO_BSWAP handling
tcg/mips: Reorg tlb load within prepare_host_addr
tcg/mips: Simplify constraints on qemu_ld/st
tcg/ppc: Reorg tcg_out_tlb_read
tcg/ppc: Adjust constraints on qemu_ld/st
tcg/ppc: Remove unused constraints A, B, C, D
tcg/ppc: Remove unused constraint J
tcg/riscv: Simplify constraints on qemu_ld/st
tcg/s390x: Use ALGFR in constructing softmmu host address
tcg/s390x: Simplify constraints on qemu_ld/st
tcg/loongarch64/tcg-target-con-set.h | 2 -
tcg/loongarch64/tcg-target-con-str.h | 1 -
tcg/mips/tcg-target-con-set.h | 13 +-
tcg/mips/tcg-target-con-str.h | 2 -
tcg/mips/tcg-target.h | 4 +-
tcg/ppc/tcg-target-con-set.h | 11 +-
tcg/ppc/tcg-target-con-str.h | 7 -
tcg/riscv/tcg-target-con-set.h | 2 -
tcg/riscv/tcg-target-con-str.h | 1 -
tcg/s390x/tcg-target-con-set.h | 2 -
tcg/s390x/tcg-target-con-str.h | 1 -
tcg/tcg.c | 456 +++++++++++++-
tcg/aarch64/tcg-target.c.inc | 347 +++++------
tcg/arm/tcg-target.c.inc | 455 +++++---------
tcg/i386/tcg-target.c.inc | 451 +++++---------
tcg/loongarch64/tcg-target.c.inc | 313 ++++------
tcg/mips/tcg-target.c.inc | 870 ++++++++-------------------
tcg/ppc/tcg-target.c.inc | 510 +++++++---------
tcg/riscv/tcg-target.c.inc | 304 ++++------
tcg/s390x/tcg-target.c.inc | 314 ++++------
20 files changed, 1766 insertions(+), 2300 deletions(-)
--
2.34.1
next reply other threads:[~2023-05-06 7:23 UTC|newest]
Thread overview: 62+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-05-06 7:22 Richard Henderson [this message]
2023-05-06 7:22 ` [PATCH v5 01/30] tcg/i386: Introduce prepare_host_addr Richard Henderson
2023-05-10 8:38 ` Alex Bennée
2023-05-06 7:22 ` [PATCH v5 02/30] tcg/i386: Use indexed addressing for softmmu fast path Richard Henderson
2023-05-10 8:44 ` Alex Bennée
2023-05-06 7:22 ` [PATCH v5 03/30] tcg/aarch64: Introduce prepare_host_addr Richard Henderson
2023-05-10 8:52 ` Alex Bennée
2023-05-06 7:22 ` [PATCH v5 04/30] tcg/arm: " Richard Henderson
2023-05-10 8:59 ` Alex Bennée
2023-05-06 7:22 ` [PATCH v5 05/30] tcg/loongarch64: " Richard Henderson
2023-05-10 9:05 ` Alex Bennée
2023-05-06 7:22 ` [PATCH v5 06/30] tcg/mips: " Richard Henderson
2023-05-10 9:09 ` Alex Bennée
2023-05-06 7:22 ` [PATCH v5 07/30] tcg/ppc: " Richard Henderson
2023-05-10 9:10 ` Alex Bennée
2023-05-06 7:22 ` [PATCH v5 08/30] tcg/riscv: " Richard Henderson
2023-05-10 9:11 ` Alex Bennée
2023-05-10 9:26 ` Alex Bennée
2023-05-06 7:22 ` [PATCH v5 09/30] tcg/s390x: " Richard Henderson
2023-05-10 9:27 ` Alex Bennée
2023-05-06 7:22 ` [PATCH v5 10/30] tcg: Add routines for calling slow-path helpers Richard Henderson
2023-05-10 12:27 ` Alex Bennée
2023-05-06 7:22 ` [PATCH v5 11/30] tcg/i386: Convert tcg_out_qemu_ld_slow_path Richard Henderson
2023-05-10 13:12 ` Alex Bennée
2023-05-06 7:22 ` [PATCH v5 12/30] tcg/i386: Convert tcg_out_qemu_st_slow_path Richard Henderson
2023-05-10 13:13 ` Alex Bennée
2023-05-06 7:22 ` [PATCH v5 13/30] tcg/aarch64: Convert tcg_out_qemu_{ld,st}_slow_path Richard Henderson
2023-05-10 13:14 ` Alex Bennée
2023-05-06 7:22 ` [PATCH v5 14/30] tcg/arm: " Richard Henderson
2023-05-10 13:17 ` Alex Bennée
2023-05-06 7:22 ` [PATCH v5 15/30] tcg/loongarch64: Convert tcg_out_qemu_{ld, st}_slow_path Richard Henderson
2023-05-10 13:17 ` Alex Bennée
2023-05-06 7:22 ` [PATCH v5 16/30] tcg/mips: Convert tcg_out_qemu_{ld,st}_slow_path Richard Henderson
2023-05-10 13:39 ` [PATCH v5 16/30] tcg/mips: Convert tcg_out_qemu_{ld, st}_slow_path Alex Bennée
2023-05-06 7:22 ` [PATCH v5 17/30] tcg/ppc: Convert tcg_out_qemu_{ld,st}_slow_path Richard Henderson
2023-05-10 13:40 ` Alex Bennée
2023-05-06 7:22 ` [PATCH v5 18/30] tcg/riscv: " Richard Henderson
2023-05-10 13:40 ` [PATCH v5 18/30] tcg/riscv: Convert tcg_out_qemu_{ld, st}_slow_path Alex Bennée
2023-05-06 7:22 ` [PATCH v5 19/30] tcg/s390x: Convert tcg_out_qemu_{ld,st}_slow_path Richard Henderson
2023-05-10 13:41 ` [PATCH v5 19/30] tcg/s390x: Convert tcg_out_qemu_{ld, st}_slow_path Alex Bennée
2023-05-06 7:22 ` [PATCH v5 20/30] tcg/loongarch64: Simplify constraints on qemu_ld/st Richard Henderson
2023-05-10 13:43 ` Alex Bennée
2023-05-06 7:22 ` [PATCH v5 21/30] tcg/mips: Remove MO_BSWAP handling Richard Henderson
2023-05-10 13:49 ` Alex Bennée
2023-05-06 7:22 ` [PATCH v5 22/30] tcg/mips: Reorg tlb load within prepare_host_addr Richard Henderson
2023-05-10 13:49 ` Alex Bennée
2023-05-06 7:22 ` [PATCH v5 23/30] tcg/mips: Simplify constraints on qemu_ld/st Richard Henderson
2023-05-10 13:50 ` Alex Bennée
2023-05-06 7:22 ` [PATCH v5 24/30] tcg/ppc: Reorg tcg_out_tlb_read Richard Henderson
2023-05-10 13:51 ` Alex Bennée
2023-05-06 7:22 ` [PATCH v5 25/30] tcg/ppc: Adjust constraints on qemu_ld/st Richard Henderson
2023-05-10 13:51 ` Alex Bennée
2023-05-06 7:22 ` [PATCH v5 26/30] tcg/ppc: Remove unused constraints A, B, C, D Richard Henderson
2023-05-10 13:52 ` Alex Bennée
2023-05-06 7:22 ` [PATCH v5 27/30] tcg/ppc: Remove unused constraint J Richard Henderson
2023-05-10 13:53 ` Alex Bennée
2023-05-06 7:22 ` [PATCH v5 28/30] tcg/riscv: Simplify constraints on qemu_ld/st Richard Henderson
2023-05-10 13:57 ` Alex Bennée
2023-05-06 7:22 ` [PATCH v5 29/30] tcg/s390x: Use ALGFR in constructing softmmu host address Richard Henderson
2023-05-10 13:59 ` Alex Bennée
2023-05-06 7:22 ` [PATCH v5 30/30] tcg/s390x: Simplify constraints on qemu_ld/st Richard Henderson
2023-05-10 14:02 ` Alex Bennée
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20230506072235.597467-1-richard.henderson@linaro.org \
--to=richard.henderson@linaro.org \
--cc=gaosong@loongson.cn \
--cc=git@xen0n.name \
--cc=philmd@linaro.org \
--cc=qemu-arm@nongnu.org \
--cc=qemu-devel@nongnu.org \
--cc=qemu-riscv@nongnu.org \
--cc=qemu-s390x@nongnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).