From: "Philippe Mathieu-Daudé" <philmd@linaro.org>
To: Richard Henderson <richard.henderson@linaro.org>, qemu-devel@nongnu.org
Cc: pierrick.bouvier@linaro.org
Subject: Re: [PATCH v2 47/81] tcg: Remove TCG_TARGET_HAS_{s}extract_{i32,i64}
Date: Wed, 15 Jan 2025 21:16:30 +0100 [thread overview]
Message-ID: <68565122-d62e-47e7-87f9-c51c44273d4f@linaro.org> (raw)
In-Reply-To: <20250107080112.1175095-48-richard.henderson@linaro.org>
On 7/1/25 09:00, Richard Henderson wrote:
> Make extract and sextract "unconditional" in the sense
> that the opcodes are always present. Rely instead on
> TCG_TARGET_HAS_{s}extract_valid, now always defined.
>
> Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
> ---
> tcg/aarch64/tcg-target-has.h | 4 ----
> tcg/arm/tcg-target-has.h | 2 --
> tcg/i386/tcg-target-has.h | 4 ----
> tcg/loongarch64/tcg-target-has.h | 4 ----
> tcg/mips/tcg-target-has.h | 4 ----
> tcg/ppc/tcg-target-has.h | 4 ----
> tcg/riscv/tcg-target-has.h | 4 ----
> tcg/s390x/tcg-target-has.h | 4 ----
> tcg/sparc64/tcg-target-has.h | 4 ----
> tcg/tcg-has.h | 12 ------------
> tcg/tci/tcg-target-has.h | 4 ----
> tcg/optimize.c | 8 ++++----
> tcg/tcg.c | 12 ++++--------
> tcg/tci.c | 8 --------
> 14 files changed, 8 insertions(+), 70 deletions(-)
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
next prev parent reply other threads:[~2025-01-15 20:16 UTC|newest]
Thread overview: 164+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-01-07 7:59 [RFC PATCH v2 00/81] tcg: Merge *_i32 and *_i64 opcodes Richard Henderson
2025-01-07 7:59 ` [PATCH v2 01/81] tcg: Move call abi parameters from tcg-target.h to tcg-target.c.inc Richard Henderson
2025-01-17 21:26 ` Alex Bennée
2025-01-07 7:59 ` [PATCH v2 02/81] tcg: Replace TCGOP_VECL with TCGOP_TYPE Richard Henderson
2025-01-08 17:39 ` Philippe Mathieu-Daudé
2025-01-08 21:23 ` Richard Henderson
2025-01-15 20:00 ` Philippe Mathieu-Daudé
2025-01-07 7:59 ` [PATCH v2 03/81] tcg: Move tcg_op_insert_{after, before} decls to tcg-internal.h Richard Henderson
2025-01-07 8:55 ` Philippe Mathieu-Daudé
2025-01-17 21:29 ` Alex Bennée
2025-01-07 7:59 ` [PATCH v2 04/81] tcg: Copy TCGOP_TYPE in tcg_op_insert_{after, before} Richard Henderson
2025-01-08 17:39 ` [PATCH v2 04/81] tcg: Copy TCGOP_TYPE in tcg_op_insert_{after,before} Philippe Mathieu-Daudé
2025-01-07 7:59 ` [PATCH v2 05/81] tcg: Add TCGOP_FLAGS Richard Henderson
2025-01-15 21:16 ` Philippe Mathieu-Daudé
2025-01-15 23:40 ` Richard Henderson
2025-01-07 7:59 ` [PATCH v2 06/81] tcg: Add type and flags arguments to tcg_op_supported Richard Henderson
2025-01-14 16:59 ` Philippe Mathieu-Daudé
2025-01-07 7:59 ` [PATCH v2 07/81] target/arm: Do not test TCG_TARGET_HAS_bitsel_vec Richard Henderson
2025-01-08 17:46 ` Philippe Mathieu-Daudé
2025-01-08 21:38 ` Richard Henderson
2025-01-08 22:14 ` Philippe Mathieu-Daudé
2025-01-08 22:30 ` Richard Henderson
2025-01-09 11:32 ` Philippe Mathieu-Daudé
2025-01-07 7:59 ` [PATCH v2 08/81] target/arm: Use tcg_op_supported Richard Henderson
2025-01-07 8:00 ` [PATCH v2 09/81] target/tricore: " Richard Henderson
2025-01-07 8:00 ` [PATCH v2 10/81] tcg: Add tcg_op_deposit_valid Richard Henderson
2025-01-07 8:00 ` [PATCH v2 11/81] target/i386: Remove TCG_TARGET_extract_tl_valid Richard Henderson
2025-01-07 8:00 ` [PATCH v2 12/81] target/i386: Use tcg_op_deposit_valid Richard Henderson
2025-01-07 8:00 ` [PATCH v2 13/81] target/i386: Use tcg_op_supported Richard Henderson
2025-01-07 8:00 ` [PATCH v2 14/81] tcg: Remove TCG_TARGET_NEED_LDST_LABELS and TCG_TARGET_NEED_POOL_LABELS Richard Henderson
2025-01-15 19:57 ` Philippe Mathieu-Daudé
2025-01-07 8:00 ` [PATCH v2 15/81] tcg: Rename tcg-target.opc.h to tcg-target-opc.h.inc Richard Henderson
2025-01-07 8:00 ` [PATCH v2 16/81] tcg/tci: Move TCI specific opcodes " Richard Henderson
2025-01-07 8:00 ` [PATCH v2 17/81] tcg: Move fallback tcg_can_emit_vec_op out of line Richard Henderson
2025-01-07 8:00 ` [PATCH v2 18/81] tcg: Split out tcg-target-has.h and tcg-has.h Richard Henderson
2025-01-08 21:51 ` [PATCH v3 00/14] " Philippe Mathieu-Daudé
2025-01-08 21:51 ` [PATCH v3 01/14] tcg/ppc: Remove TCGPowerISA enum Philippe Mathieu-Daudé
2025-01-08 21:51 ` [PATCH v3 02/14] tcg: Extract default TCG_TARGET_HAS_foo definitions to 'tcg-has.h' Philippe Mathieu-Daudé
2025-01-08 21:51 ` [PATCH v3 03/14] tcg/aarch64: Extract TCG_TARGET_HAS_foo defs to 'tcg-target-has.h' Philippe Mathieu-Daudé
2025-01-08 21:51 ` [PATCH v3 04/14] tcg/arm: " Philippe Mathieu-Daudé
2025-01-08 21:51 ` [PATCH v3 05/14] tcg/i386: " Philippe Mathieu-Daudé
2025-01-08 21:51 ` [PATCH v3 06/14] tcg/loongarch64: " Philippe Mathieu-Daudé
2025-01-08 21:51 ` [PATCH v3 07/14] tcg/mips: " Philippe Mathieu-Daudé
2025-01-08 21:51 ` [PATCH v3 08/14] tcg/ppc: " Philippe Mathieu-Daudé
2025-01-08 21:51 ` [PATCH v3 09/14] tcg/riscv: " Philippe Mathieu-Daudé
2025-01-08 21:51 ` [PATCH v3 10/14] tcg/s390x: " Philippe Mathieu-Daudé
2025-01-08 21:51 ` [PATCH v3 11/14] tcg/sparc64: " Philippe Mathieu-Daudé
2025-01-08 21:51 ` [PATCH v3 12/14] tcg/tci: " Philippe Mathieu-Daudé
2025-01-08 21:51 ` [PATCH v3 13/14] tcg: Include 'tcg-target-has.h' once in 'tcg-has.h' Philippe Mathieu-Daudé
2025-01-08 21:51 ` [PATCH v3 14/14] tcg: Only include 'tcg-has.h' when necessary Philippe Mathieu-Daudé
2025-01-07 8:00 ` [PATCH v2 19/81] tcg: Split out tcg-target-mo.h Richard Henderson
2025-01-07 8:00 ` [PATCH v2 20/81] tcg: Use C_NotImplemented in tcg_target_op_def Richard Henderson
2025-01-07 8:00 ` [PATCH v2 21/81] tcg: Change have_vec to has_type in tcg_op_supported Richard Henderson
2025-01-07 8:00 ` [PATCH v2 22/81] tcg: Reorg process_op_defs Richard Henderson
2025-01-14 17:48 ` Philippe Mathieu-Daudé
2025-01-07 8:00 ` [PATCH v2 23/81] tcg: Remove args_ct from TCGOpDef Richard Henderson
2025-01-14 16:57 ` Philippe Mathieu-Daudé
2025-01-07 8:00 ` [PATCH v2 24/81] tcg: Constify tcg_op_defs Richard Henderson
2025-01-14 16:57 ` Philippe Mathieu-Daudé
2025-01-07 8:00 ` [PATCH v2 25/81] tcg: Validate op supported in opcode_args_ct Richard Henderson
2025-01-14 16:57 ` Philippe Mathieu-Daudé
2025-01-07 8:00 ` [PATCH v2 26/81] tcg: Add TCG_OPF_NOT_PRESENT to opcodes without inputs or outputs Richard Henderson
2025-01-08 21:58 ` Philippe Mathieu-Daudé
2025-01-07 8:00 ` [PATCH v2 27/81] tcg: Pass type and flags to tcg_target_op_def Richard Henderson
2025-01-14 16:58 ` Philippe Mathieu-Daudé
2025-01-07 8:00 ` [PATCH v2 28/81] tcg: Add TCGType argument to tcg_out_op Richard Henderson
2025-01-08 22:05 ` Philippe Mathieu-Daudé
2025-01-07 8:00 ` [PATCH v2 29/81] tcg: Remove TCG_OPF_64BIT Richard Henderson
2025-01-08 22:06 ` Philippe Mathieu-Daudé
2025-01-07 8:00 ` [PATCH v2 30/81] tcg: Drop implementation checks from tcg-opc.h Richard Henderson
2025-01-14 17:00 ` Philippe Mathieu-Daudé
2025-01-07 8:00 ` [PATCH v2 31/81] tcg: Replace IMPLVEC with TCG_OPF_VECTOR Richard Henderson
2025-01-15 19:59 ` Philippe Mathieu-Daudé
2025-01-07 8:00 ` [PATCH v2 32/81] tcg/mips: Expand bswap unconditionally Richard Henderson
2025-01-15 22:02 ` Philippe Mathieu-Daudé
2025-01-07 8:00 ` [PATCH v2 33/81] tcg/i386: Handle all 8-bit extensions for i686 Richard Henderson
2025-01-15 20:13 ` Philippe Mathieu-Daudé
2025-01-07 8:00 ` [PATCH v2 34/81] tcg/i386: Fold the ext{8, 16, 32}[us] cases into {s}extract Richard Henderson
2025-01-15 21:56 ` [PATCH v2 34/81] tcg/i386: Fold the ext{8,16,32}[us] " Philippe Mathieu-Daudé
2025-01-07 8:00 ` [PATCH v2 35/81] tcg/aarch64: Provide TCG_TARGET_{s}extract_valid Richard Henderson
2025-01-09 23:03 ` Philippe Mathieu-Daudé
2025-01-07 8:00 ` [PATCH v2 36/81] tcg/aarch64: Expand extract with offset 0 with andi Richard Henderson
2025-01-09 23:33 ` Philippe Mathieu-Daudé
2025-01-07 8:00 ` [PATCH v2 37/81] tcg/arm: Add full [US]XT[BH] into {s}extract Richard Henderson
2025-01-09 22:57 ` Philippe Mathieu-Daudé
2025-01-15 20:06 ` Philippe Mathieu-Daudé
2025-01-07 8:00 ` [PATCH v2 38/81] tcg/loongarch64: Fold the ext{8, 16, 32}[us] cases " Richard Henderson
2025-01-09 23:40 ` Philippe Mathieu-Daudé
2025-01-07 8:00 ` [PATCH v2 39/81] tcg/mips: " Richard Henderson
2025-01-09 22:43 ` [PATCH v2 39/81] tcg/mips: Fold the ext{8,16,32}[us] " Philippe Mathieu-Daudé
2025-01-07 8:00 ` [PATCH v2 40/81] tcg/ppc: Fold the ext{8, 16, 32}[us] " Richard Henderson
2025-01-09 22:52 ` [PATCH v2 40/81] tcg/ppc: Fold the ext{8,16,32}[us] " Philippe Mathieu-Daudé
2025-01-07 8:00 ` [PATCH v2 41/81] tcg/riscv64: Fold the ext{8, 16, 32}[us] " Richard Henderson
2025-01-09 23:36 ` [PATCH v2 41/81] tcg/riscv64: Fold the ext{8,16,32}[us] " Philippe Mathieu-Daudé
2025-01-07 8:00 ` [PATCH v2 42/81] tcg/riscv: Use SRAIW, SRLIW for {s}extract_i64 Richard Henderson
2025-01-15 20:09 ` Philippe Mathieu-Daudé
2025-01-07 8:00 ` [PATCH v2 43/81] tcg/s390x: Fold the ext{8, 16, 32}[us] cases into {s}extract Richard Henderson
2025-01-09 22:54 ` Philippe Mathieu-Daudé
2025-01-07 8:00 ` [PATCH v2 44/81] tcg/sparc64: Use SRA, SRL for {s}extract_i64 Richard Henderson
2025-01-09 23:00 ` Philippe Mathieu-Daudé
2025-01-09 23:44 ` Philippe Mathieu-Daudé
2025-01-09 23:45 ` Philippe Mathieu-Daudé
2025-01-07 8:00 ` [PATCH v2 45/81] tcg/tci: Provide TCG_TARGET_{s}extract_valid Richard Henderson
2025-01-09 23:03 ` Philippe Mathieu-Daudé
2025-01-07 8:00 ` [PATCH v2 46/81] tcg/tci: Remove assertions for deposit and extract Richard Henderson
2025-01-15 20:15 ` Philippe Mathieu-Daudé
2025-01-07 8:00 ` [PATCH v2 47/81] tcg: Remove TCG_TARGET_HAS_{s}extract_{i32,i64} Richard Henderson
2025-01-15 20:16 ` Philippe Mathieu-Daudé [this message]
2025-01-07 8:00 ` [PATCH v2 48/81] tcg: Remove TCG_TARGET_HAS_deposit_{i32,i64} Richard Henderson
2025-01-15 20:19 ` Philippe Mathieu-Daudé
2025-01-07 8:00 ` [PATCH v2 49/81] tcg: Remove INDEX_op_ext{8,16,32}* Richard Henderson
2025-01-07 8:00 ` [PATCH v2 50/81] tcg: Add all_outop[] Richard Henderson
2025-01-09 23:21 ` Philippe Mathieu-Daudé
2025-01-10 14:51 ` Richard Henderson
2025-01-07 8:00 ` [PATCH v2 51/81] tcg: Merge INDEX_op_mov_{i32,i64} Richard Henderson
2025-01-07 8:00 ` [PATCH v2 52/81] tcg: Convert add to TCGOutOpBinary Richard Henderson
2025-01-07 8:00 ` [PATCH v2 53/81] tcg: Merge INDEX_op_add_{i32,i64} Richard Henderson
2025-01-08 17:50 ` Philippe Mathieu-Daudé
2025-01-07 8:00 ` [PATCH v2 54/81] tcg: Convert and to TCGOutOpBinary Richard Henderson
2025-01-07 8:00 ` [PATCH v2 55/81] tcg: Merge INDEX_op_and_{i32,i64} Richard Henderson
2025-01-08 17:53 ` Philippe Mathieu-Daudé
2025-01-08 21:40 ` Richard Henderson
2025-01-07 8:00 ` [PATCH v2 56/81] tcg/optimize: Fold andc with immediate to and Richard Henderson
2025-01-09 23:28 ` Philippe Mathieu-Daudé
2025-01-07 8:00 ` [PATCH v2 57/81] tcg/optimize: Emit add r, r, -1 in fold_setcond_tst_pow2 Richard Henderson
2025-01-09 22:32 ` [PATCH v2 57/81] tcg/optimize: Emit add r,r,-1 " Philippe Mathieu-Daudé
2025-01-07 8:00 ` [PATCH v2 58/81] tcg: Convert andc to TCGOutOpBinary Richard Henderson
2025-01-07 8:00 ` [PATCH v2 59/81] tcg: Merge INDEX_op_andc_{i32,i64} Richard Henderson
2025-01-08 20:58 ` Philippe Mathieu-Daudé
2025-01-07 8:00 ` [PATCH v2 60/81] tcg: Convert or to TCGOutOpBinary Richard Henderson
2025-01-07 8:00 ` [PATCH v2 61/81] tcg: Merge INDEX_op_or_{i32,i64} Richard Henderson
2025-01-08 20:58 ` Philippe Mathieu-Daudé
2025-01-07 8:00 ` [PATCH v2 62/81] tcg/optimize: Fold orc with immediate to or Richard Henderson
2025-01-09 23:25 ` Philippe Mathieu-Daudé
2025-01-07 8:00 ` [PATCH v2 63/81] tcg: Convert orc to TCGOutOpBinary Richard Henderson
2025-01-07 8:00 ` [PATCH v2 64/81] tcg: Merge INDEX_op_orc_{i32,i64} Richard Henderson
2025-01-08 20:59 ` Philippe Mathieu-Daudé
2025-01-07 8:00 ` [PATCH v2 65/81] tcg: Convert xor to TCGOutOpBinary Richard Henderson
2025-01-07 8:00 ` [PATCH v2 66/81] tcg: Merge INDEX_op_xor_{i32,i64} Richard Henderson
2025-01-08 21:00 ` Philippe Mathieu-Daudé
2025-01-07 8:00 ` [PATCH v2 67/81] tcg/optimize: Fold eqv with immediate to xor Richard Henderson
2025-01-09 23:27 ` Philippe Mathieu-Daudé
2025-01-07 8:00 ` [PATCH v2 68/81] tcg: Convert eqv to TCGOutOpBinary Richard Henderson
2025-01-07 8:01 ` [PATCH v2 69/81] tcg: Merge INDEX_op_eqv_{i32,i64} Richard Henderson
2025-01-08 21:01 ` Philippe Mathieu-Daudé
2025-01-07 8:01 ` [PATCH v2 70/81] tcg: Convert nand to TCGOutOpBinary Richard Henderson
2025-01-07 8:01 ` [PATCH v2 71/81] tcg: Merge INDEX_op_nand_{i32,i64} Richard Henderson
2025-01-08 21:01 ` Philippe Mathieu-Daudé
2025-01-07 8:01 ` [PATCH v2 72/81] tcg/loongarch64: Do not accept constant argument to nor Richard Henderson
2025-01-15 20:22 ` Philippe Mathieu-Daudé
2025-01-07 8:01 ` [PATCH v2 73/81] tcg: Convert nor to TCGOutOpBinary Richard Henderson
2025-01-07 8:01 ` [PATCH v2 74/81] tcg: Merge INDEX_op_nor_{i32,i64} Richard Henderson
2025-01-08 21:01 ` Philippe Mathieu-Daudé
2025-01-07 8:01 ` [PATCH v2 75/81] tcg/arm: Fix constraints for sub Richard Henderson
2025-01-07 8:01 ` [PATCH v2 76/81] tcg: Convert sub to TCGOutOpSubtract Richard Henderson
2025-01-07 8:01 ` [PATCH v2 77/81] tcg: Merge INDEX_op_sub_{i32,i64} Richard Henderson
2025-01-08 21:02 ` Philippe Mathieu-Daudé
2025-01-07 8:01 ` [PATCH v2 78/81] tcg: Convert neg to TCGOutOpUnary Richard Henderson
2025-01-07 8:01 ` [PATCH v2 79/81] tcg: Merge INDEX_op_neg_{i32,i64} Richard Henderson
2025-01-08 22:17 ` Philippe Mathieu-Daudé
2025-01-07 8:01 ` [PATCH v2 80/81] tcg: Convert not to TCGOutOpUnary Richard Henderson
2025-01-07 8:01 ` [PATCH v2 81/81] tcg: Merge INDEX_op_not_{i32,i64} Richard Henderson
2025-01-08 21:04 ` Philippe Mathieu-Daudé
2025-01-14 17:55 ` [RFC PATCH v2 00/81] tcg: Merge *_i32 and *_i64 opcodes Philippe Mathieu-Daudé
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=68565122-d62e-47e7-87f9-c51c44273d4f@linaro.org \
--to=philmd@linaro.org \
--cc=pierrick.bouvier@linaro.org \
--cc=qemu-devel@nongnu.org \
--cc=richard.henderson@linaro.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).