From: "Alex Bennée" <alex.bennee@linaro.org>
To: Richard Henderson <richard.henderson@linaro.org>
Cc: qemu-devel@nongnu.org
Subject: Re: [PATCH v2 065/101] target/arm: Implement SME2 FCLAMP, SCLAMP, UCLAMP
Date: Mon, 23 Jun 2025 11:32:22 +0100 [thread overview]
Message-ID: <874iw63g09.fsf@draig.linaro.org> (raw)
In-Reply-To: <629c93ff-5849-4937-9b52-3d2116f90035@linaro.org> (Richard Henderson's message of "Sun, 22 Jun 2025 13:54:04 -0700")
Richard Henderson <richard.henderson@linaro.org> writes:
> On 6/21/25 16:50, Richard Henderson wrote:
>> +static bool trans_FCLAMP(DisasContext *s, arg_zzz_en *a)
>> +{
>> + static gen_helper_gvec_3_ptr * const fn[] = {
>> + gen_helper_sme2_bfclamp,
>> + gen_helper_sme2_fclamp_h,
>> + gen_helper_sme2_fclamp_s,
>> + gen_helper_sme2_fclamp_d,
>> + };
>> + TCGv_ptr fpst;
>> + int vl;
>> +
>> + /* This insn uses MO_8 to encode BFloat16. */
>> + if (a->esz == MO_8
>> + ? dc_isar_feature(aa64_sme2_b16b16, s)
>> + : dc_isar_feature(aa64_sme2, s)) {
>
> Missing !'s.
It gets a lot further into the run but we then fail on:
Program received signal SIGILL, Illegal instruction.
0x00007ffff65d6690 in kai_kernel_imatmul_clamp_f32_f32p2vlx1_f32p2vlx1b_2vlx2vl_sme2_mopa ()
(gdb) x/5i $pc
=> 0x7ffff65d6690 <kai_kernel_imatmul_clamp_f32_f32p2vlx1_f32p2vlx1b_2vlx2vl_sme2_mopa+496>: fclamp {z0.s-z3.s}, z26.s, z24.s
0x7ffff65d6694 <kai_kernel_imatmul_clamp_f32_f32p2vlx1_f32p2vlx1b_2vlx2vl_sme2_mopa+500>: fclamp {z8.s-z11.s}, z26.s, z24.s
0x7ffff65d6698 <kai_kernel_imatmul_clamp_f32_f32p2vlx1_f32p2vlx1b_2vlx2vl_sme2_mopa+504>: st1w {z0.s, z8.s}, pn8, [x26]
0x7ffff65d669c <kai_kernel_imatmul_clamp_f32_f32p2vlx1_f32p2vlx1b_2vlx2vl_sme2_mopa+508>: add x26, x26, x23
0x7ffff65d66a0 <kai_kernel_imatmul_clamp_f32_f32p2vlx1_f32p2vlx1b_2vlx2vl_sme2_mopa+512>:
b.eq 0x7ffff65d66bc <kai_kernel_imatmul_clamp_f32_f32p2vlx1_f32p2vlx1b_2vlx2vl_sme2_mopa+540> // b.none
(gdb) x/1w $pc
0x7ffff65d6690 <kai_kernel_imatmul_clamp_f32_f32p2vlx1_f32p2vlx1b_2vlx2vl_sme2_mopa+496>: 0xc1b8cb40
(gdb)
>
>
> r~
--
Alex Bennée
Virtualisation Tech Lead @ Linaro
next prev parent reply other threads:[~2025-06-23 10:32 UTC|newest]
Thread overview: 170+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-06-21 23:48 [PATCH v2 000/101] target/arm: Implement FEAT_SME2p1 Richard Henderson
2025-06-21 23:48 ` [PATCH v2 001/101] tcg: Add dbase argument to do_dup_store Richard Henderson
2025-06-23 9:59 ` Peter Maydell
2025-06-21 23:48 ` [PATCH v2 002/101] tcg: Add dbase argument to do_dup Richard Henderson
2025-06-23 10:01 ` Peter Maydell
2025-06-21 23:48 ` [PATCH v2 003/101] tcg: Add dbase argument to expand_clr Richard Henderson
2025-06-23 10:02 ` Peter Maydell
2025-06-21 23:49 ` [PATCH v2 004/101] tcg: Add base arguments to check_overlap_[234] Richard Henderson
2025-06-23 10:06 ` Peter Maydell
2025-06-23 16:22 ` Richard Henderson
2025-06-21 23:49 ` [PATCH v2 005/101] tcg: Split out tcg_gen_gvec_2_var Richard Henderson
2025-06-23 10:12 ` Peter Maydell
2025-06-21 23:49 ` [PATCH v2 006/101] tcg: Split out tcg_gen_gvec_3_var Richard Henderson
2025-06-23 10:15 ` Peter Maydell
2025-06-21 23:49 ` [PATCH v2 007/101] tcg: Split out tcg_gen_gvec_mov_var Richard Henderson
2025-06-23 10:16 ` Peter Maydell
2025-06-21 23:49 ` [PATCH v2 008/101] tcg: Split out tcg_gen_gvec_{add,sub}_var Richard Henderson
2025-06-23 10:18 ` Peter Maydell
2025-06-21 23:49 ` [PATCH v2 009/101] tcg: Split out tcg_gen_gvec_dup_imm_var Richard Henderson
2025-06-23 10:20 ` Peter Maydell
2025-06-21 23:49 ` [PATCH v2 010/101] linux-user/aarch64: Update hwcap bits from 6.14 Richard Henderson
2025-06-23 10:25 ` Peter Maydell
2025-06-21 23:49 ` [PATCH v2 011/101] target/arm: Remove CPUARMState.vfp.scratch Richard Henderson
2025-06-23 10:26 ` Peter Maydell
2025-06-21 23:49 ` [PATCH v2 012/101] target/arm: Introduce FPST_ZA, FPST_ZA_F16 Richard Henderson
2025-06-23 10:30 ` Peter Maydell
2025-06-21 23:49 ` [PATCH v2 013/101] target/arm: Use FPST_ZA for sme_fmopa_[hsd] Richard Henderson
2025-06-23 10:33 ` Peter Maydell
2025-06-21 23:49 ` [PATCH v2 014/101] target/arm: Rename zarray to za_state.za Richard Henderson
2025-06-23 10:35 ` Peter Maydell
2025-06-21 23:49 ` [PATCH v2 015/101] target/arm: Add isar feature tests for SME2, SVE2p1 Richard Henderson
2025-06-23 10:44 ` Peter Maydell
2025-06-23 16:57 ` Richard Henderson
2025-06-21 23:49 ` [PATCH v2 016/101] target/arm: Add ZT0 Richard Henderson
2025-06-23 11:50 ` Peter Maydell
2025-06-21 23:49 ` [PATCH v2 017/101] target/arm: Add zt0_excp_el to DisasContext Richard Henderson
2025-06-22 20:21 ` Richard Henderson
2025-06-21 23:49 ` [PATCH v2 018/101] target/arm: Implement SME2 ZERO ZT0 Richard Henderson
2025-06-23 12:02 ` Peter Maydell
2025-06-21 23:49 ` [PATCH v2 019/101] target/arm: Implement SME2 LDR/STR ZT0 Richard Henderson
2025-06-23 12:21 ` Peter Maydell
2025-06-23 15:34 ` Richard Henderson
2025-06-21 23:49 ` [PATCH v2 020/101] target/arm: Implement SME2 MOVT Richard Henderson
2025-06-23 12:25 ` Peter Maydell
2025-06-21 23:49 ` [PATCH v2 021/101] target/arm: Split get_tile_rowcol argument tile_index Richard Henderson
2025-06-23 12:35 ` Peter Maydell
2025-06-21 23:49 ` [PATCH v2 022/101] target/arm: Rename MOVA for translate Richard Henderson
2025-06-23 12:36 ` Peter Maydell
2025-06-21 23:49 ` [PATCH v2 023/101] target/arm: Implement SME2 MOVA to/from tile, multiple registers Richard Henderson
2025-06-23 14:20 ` Peter Maydell
2025-06-23 15:42 ` Richard Henderson
2025-06-24 14:45 ` Peter Maydell
2025-06-21 23:49 ` [PATCH v2 024/101] target/arm: Split out get_zarray Richard Henderson
2025-06-23 14:32 ` Peter Maydell
2025-06-21 23:49 ` [PATCH v2 025/101] target/arm: Implement SME2 MOVA to/from array, multiple registers Richard Henderson
2025-06-23 14:40 ` Peter Maydell
2025-06-21 23:49 ` [PATCH v2 026/101] target/arm: Implement SME2 BMOPA Richard Henderson
2025-06-23 14:47 ` Peter Maydell
2025-06-21 23:49 ` [PATCH v2 027/101] target/arm: Implement SME2 SMOPS, UMOPS (2-way) Richard Henderson
2025-06-23 14:52 ` Peter Maydell
2025-06-21 23:49 ` [PATCH v2 028/101] target/arm: Introduce gen_gvec_sve2_sqdmulh Richard Henderson
2025-06-23 14:56 ` Peter Maydell
2025-06-21 23:49 ` [PATCH v2 029/101] target/arm: Implement SME2 Multiple and Single SVE Destructive Richard Henderson
2025-06-23 15:18 ` Peter Maydell
2025-06-21 23:49 ` [PATCH v2 030/101] target/arm: Implement SME2 Multiple Vectors " Richard Henderson
2025-06-23 15:25 ` Peter Maydell
2025-06-23 15:46 ` Richard Henderson
2025-06-23 16:01 ` Peter Maydell
2025-06-21 23:49 ` [PATCH v2 031/101] target/arm: Implement SME2 ADD/SUB (array results, multiple and single vector) Richard Henderson
2025-06-23 16:15 ` Peter Maydell
2025-06-21 23:49 ` [PATCH v2 032/101] target/arm: Implement SME2 ADD/SUB (array results, multiple vectors) Richard Henderson
2025-06-23 16:18 ` Peter Maydell
2025-06-21 23:49 ` [PATCH v2 033/101] target/arm: Pass ZA to helper_sve2_fmlal_zz[zx]w_s Richard Henderson
2025-06-23 16:21 ` Peter Maydell
2025-06-21 23:49 ` [PATCH v2 034/101] target/arm: Implement SME2 FMLAL, BFMLAL Richard Henderson
2025-06-23 16:31 ` Peter Maydell
2025-06-24 14:28 ` Peter Maydell
2025-06-24 14:45 ` Richard Henderson
2025-06-21 23:49 ` [PATCH v2 035/101] target/arm: Implement SME2 FDOT Richard Henderson
2025-06-23 16:38 ` Peter Maydell
2025-06-23 17:58 ` Richard Henderson
2025-06-21 23:49 ` [PATCH v2 036/101] target/arm: Implement SME2 BFDOT Richard Henderson
2025-06-23 16:39 ` Peter Maydell
2025-06-21 23:49 ` [PATCH v2 037/101] target/arm: Implement SME2 FVDOT, BFVDOT Richard Henderson
2025-06-23 16:53 ` Peter Maydell
2025-06-21 23:49 ` [PATCH v2 038/101] target/arm: Rename helper_gvec_*dot_[bh] to *_4[bh] Richard Henderson
2025-06-23 16:54 ` Peter Maydell
2025-06-21 23:49 ` [PATCH v2 039/101] target/arm: Remove helper_gvec_sudot_idx_4b Richard Henderson
2025-06-23 17:00 ` Peter Maydell
2025-06-23 18:01 ` Richard Henderson
2025-06-21 23:49 ` [PATCH v2 040/101] target/arm: Implemement SME2 SDOT, UDOT, USDOT, SUDOT Richard Henderson
2025-06-24 10:02 ` Peter Maydell
2025-06-24 14:55 ` Richard Henderson
2025-06-21 23:49 ` [PATCH v2 041/101] target/arm: Rename SVE SDOT and UDOT patterns Richard Henderson
2025-06-24 10:03 ` Peter Maydell
2025-06-21 23:49 ` [PATCH v2 042/101] target/arm: Tighten USDOT (vectors) decode Richard Henderson
2025-06-24 10:13 ` Peter Maydell
2025-06-24 13:56 ` Richard Henderson
2025-06-21 23:49 ` [PATCH v2 043/101] target/arm: Implement SDOT, UDOT (2-way) for SME2/SVE2p1 Richard Henderson
2025-06-24 10:15 ` Peter Maydell
2025-06-21 23:49 ` [PATCH v2 044/101] target/arm: Implement SME2 SVDOT, UVDOT, SUVDOT, USVDOT Richard Henderson
2025-06-24 10:36 ` Peter Maydell
2025-06-21 23:49 ` [PATCH v2 045/101] target/arm: Implement SME2 SMLAL, SMLSL, UMLAL, UMLSL Richard Henderson
2025-06-21 23:49 ` [PATCH v2 046/101] target/arm: Implement SME2 SMLALL, SMLSLL, UMLALL, UMLSLL Richard Henderson
2025-06-24 13:51 ` Richard Henderson
2025-06-24 17:41 ` Peter Maydell
2025-06-25 3:12 ` Richard Henderson
2025-06-21 23:49 ` [PATCH v2 047/101] target/arm: Rename gvec_fml[as]_[hs] with _nf_ infix Richard Henderson
2025-06-21 23:49 ` [PATCH v2 048/101] target/arm: Implement SME2 FMLA, FMLS Richard Henderson
2025-06-21 23:49 ` [PATCH v2 049/101] target/arm: Implement SME2 BFMLA, BFMLS Richard Henderson
2025-06-21 23:49 ` [PATCH v2 050/101] target/arm: Implement SME2 FADD, FSUB, BFADD, BFSUB Richard Henderson
2025-06-21 23:49 ` [PATCH v2 051/101] target/arm: Implement SME2 BFCVT, BFCVTN, FCVT, FCVTN Richard Henderson
2025-06-21 23:49 ` [PATCH v2 052/101] target/arm: Implement SME2 FCVT (widening), FCVTL Richard Henderson
2025-06-21 23:49 ` [PATCH v2 053/101] target/arm: Implement SME2 FCVTZS, FCVTZU Richard Henderson
2025-06-21 23:49 ` [PATCH v2 054/101] target/arm: Implement SME2 SCVTF, UCVTF Richard Henderson
2025-06-21 23:49 ` [PATCH v2 055/101] target/arm: Implement SME2 FRINTN, FRINTP, FRINTM, FRINTA Richard Henderson
2025-06-21 23:49 ` [PATCH v2 056/101] target/arm: Introduce do_[us]sat_[bhs] macros Richard Henderson
2025-06-21 23:49 ` [PATCH v2 057/101] target/arm: Use do_[us]sat_[bhs] in sve_helper.c Richard Henderson
2025-06-21 23:49 ` [PATCH v2 058/101] target/arm: Implement SME2 SQCVT, UQCVT, SQCVTU Richard Henderson
2025-06-21 23:49 ` [PATCH v2 059/101] target/arm: Implement SQCVTN, UQCVTN, SQCVTUN for SME2/SVE2p1 Richard Henderson
2025-06-21 23:49 ` [PATCH v2 060/101] target/arm: Implement SME2 SUNPK, UUNPK Richard Henderson
2025-06-21 23:49 ` [PATCH v2 061/101] target/arm: Implement SME2 ZIP, UZP (four registers) Richard Henderson
2025-06-21 23:49 ` [PATCH v2 062/101] target/arm: Move do_urshr, do_srshr to vec_internal.h Richard Henderson
2025-06-21 23:49 ` [PATCH v2 063/101] target/arm: Implement SME2 SQRSHR, UQRSHR, SQRSHRN Richard Henderson
2025-06-21 23:50 ` [PATCH v2 064/101] target/arm: Implement SME2 ZIP, UZP (two registers) Richard Henderson
2025-06-21 23:50 ` [PATCH v2 065/101] target/arm: Implement SME2 FCLAMP, SCLAMP, UCLAMP Richard Henderson
2025-06-22 20:54 ` Richard Henderson
2025-06-23 10:32 ` Alex Bennée [this message]
2025-06-21 23:50 ` [PATCH v2 066/101] target/arm: Enable SCLAMP, UCLAMP for SVE2p1 Richard Henderson
2025-06-21 23:50 ` [PATCH v2 067/101] target/arm: Implement FCLAMP for SME2, SVE2p1 Richard Henderson
2025-06-22 17:22 ` Richard Henderson
2025-06-23 9:24 ` Alex Bennée
2025-06-21 23:50 ` [PATCH v2 068/101] target/arm: Implement SME2 SEL Richard Henderson
2025-06-23 21:24 ` Richard Henderson
2025-06-21 23:50 ` [PATCH v2 069/101] target/arm: Implement SME2p1 Multiple Zero Richard Henderson
2025-06-21 23:50 ` [PATCH v2 070/101] target/arm: Introduce pred_count_test Richard Henderson
2025-06-21 23:50 ` [PATCH v2 071/101] target/arm: Fold predtest_ones into helper_sve_brkns Richard Henderson
2025-06-21 23:50 ` [PATCH v2 072/101] target/arm: Split out do_whilel from helper_sve_whilel Richard Henderson
2025-06-21 23:50 ` [PATCH v2 073/101] target/arm: Split out do_whileg from helper_sve_whileg Richard Henderson
2025-06-21 23:50 ` [PATCH v2 074/101] target/arm: Move scale by esz into helper_sve_while* Richard Henderson
2025-06-21 23:50 ` [PATCH v2 075/101] target/arm: Split trans_WHILE to lt and gt Richard Henderson
2025-06-21 23:50 ` [PATCH v2 076/101] target/arm: Implement SVE2p1 WHILE (predicate pair) Richard Henderson
2025-06-21 23:50 ` [PATCH v2 077/101] target/arm: Implement SVE2p1 WHILE (predicate as counter) Richard Henderson
2025-06-21 23:50 ` [PATCH v2 078/101] target/arm: Implement SVE2p1 PTRUE " Richard Henderson
2025-06-21 23:50 ` [PATCH v2 079/101] target/arm: Enable PSEL for SVE2p1 Richard Henderson
2025-06-21 23:50 ` [PATCH v2 080/101] target/arm: Implement {ADD, SMIN, SMAX, UMIN, UMAX}QV " Richard Henderson
2025-06-21 23:50 ` [PATCH v2 081/101] target/arm: Implement SVE2p1 PEXT Richard Henderson
2025-06-21 23:50 ` [PATCH v2 082/101] target/arm: Implement ANDQV, ORQV, EORQV for SVE2p1 Richard Henderson
2025-06-21 23:50 ` [PATCH v2 083/101] target/arm: Implement FADDQV, F{MIN, MAX}{NM}QV " Richard Henderson
2025-06-21 23:50 ` [PATCH v2 084/101] target/arm: Implement BFMLSLB{L, T} for SME2/SVE2p1 Richard Henderson
2025-06-21 23:50 ` [PATCH v2 085/101] target/arm: Implement CNTP (predicate as counter) " Richard Henderson
2025-06-22 21:39 ` Richard Henderson
2025-06-21 23:50 ` [PATCH v2 086/101] target/arm: Implement DUPQ for SME2p1/SVE2p1 Richard Henderson
2025-06-21 23:50 ` [PATCH v2 087/101] target/arm: Implement EXTQ " Richard Henderson
2025-06-21 23:50 ` [PATCH v2 088/101] target/arm: Implement PMOV " Richard Henderson
2025-06-21 23:50 ` [PATCH v2 089/101] target/arm: Implement ZIPQ, UZPQ " Richard Henderson
2025-06-21 23:50 ` [PATCH v2 090/101] target/arm: Implement TBLQ, TBXQ " Richard Henderson
2025-06-21 23:50 ` [PATCH v2 091/101] target/arm: Implement SME2 counted predicate register load/store Richard Henderson
2025-06-24 14:21 ` Peter Maydell
2025-06-24 19:38 ` Richard Henderson
2025-06-21 23:50 ` [PATCH v2 092/101] target/arm: Split the ST_zpri and ST_zprr patterns Richard Henderson
2025-06-21 23:50 ` [PATCH v2 093/101] target/arm: Implement {LD1, ST1}{W, D} (128-bit element) for SVE2p1 Richard Henderson
2025-06-21 23:50 ` [PATCH v2 094/101] target/arm: Move ld1qq and st1qq primitives to sve_ldst_internal.h Richard Henderson
2025-06-21 23:50 ` [PATCH v2 095/101] target/arm: Implement {LD, ST}[234]Q for SME2p1/SVE2p1 Richard Henderson
2025-06-21 23:50 ` [PATCH v2 096/101] target/arm: Implement LD1Q, ST1Q for SVE2p1 Richard Henderson
2025-06-21 23:50 ` [PATCH v2 097/101] target/arm: Implement LUTI2, LUTI4 for SME2/SME2p1 Richard Henderson
2025-06-21 23:50 ` [PATCH v2 098/101] target/arm: Implement MOVAZ for SME2p1 Richard Henderson
2025-06-21 23:50 ` [PATCH v2 099/101] linux-user/aarch64: Set hwcap bits for SME2p1/SVE2p1 Richard Henderson
2025-06-21 23:50 ` [PATCH v2 100/101] target/arm: Enable FEAT_SME2p1 on -cpu max Richard Henderson
2025-06-21 23:50 ` [PATCH v2 101/101] tests/tcg/aarch64: Add sme2-matmul test case Richard Henderson
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=874iw63g09.fsf@draig.linaro.org \
--to=alex.bennee@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 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.