From: Peter Maydell Date: Wed, 18 Feb 2026 18:40:14 +0000 (+0000) Subject: target/arm/tcg: Drop unnecessary aa64_sve check from do_trans_pmull() X-Git-Tag: v11.0.0-rc0~60^2~23 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=e69bddfc75bdc01f23786a26836bd351702507d7;p=thirdparty%2Fqemu.git target/arm/tcg: Drop unnecessary aa64_sve check from do_trans_pmull() Part of the logic inside do_trans_pmull() applies the aa64_sve feature check for the non-128-bit-element versions of these insns (PMULLB and PMULLT). This is currently a redundant check because we only invoke this function via the macro invocation TRANS_FEAT(..., aa64_sve2, do_trans_pmull, ...) and it's actively wrong for an SME-only CPU, because these insns are also available via SME. Remove the unnecessary logic. Signed-off-by: Peter Maydell Reviewed-by: Richard Henderson Message-id: 20260202133353.2231685-10-peter.maydell@linaro.org --- diff --git a/target/arm/tcg/translate-sve.c b/target/arm/tcg/translate-sve.c index e853b4dd0a3..fe59126d2b4 100644 --- a/target/arm/tcg/translate-sve.c +++ b/target/arm/tcg/translate-sve.c @@ -6782,8 +6782,6 @@ static bool do_trans_pmull(DisasContext *s, arg_rrr_esz *a, bool sel) return false; } s->is_nonstreaming = true; - } else if (!dc_isar_feature(aa64_sve, s)) { - return false; } return gen_gvec_ool_arg_zzz(s, fns[a->esz], a, sel); }