Commit 702252a0db for qemu.org
commit 702252a0dbc3ad9a51e4092a986b2f98e8c6adcb
Author: Richard Henderson <richard.henderson@linaro.org>
Date: Fri Jul 31 11:24:27 2026 +0100
target/arm: Fix b16b16 feature test for SME2 BFCLAMP, BFMAX, BFMIN
These are controlled by FEAT_SVE_B16B16 not FEAT_SME_B16B16.
Cc: qemu-stable@nongnu.org
Fixes: bc65d2bd1cb ("target/arm: Implement SME2 Multiple and Single SVE Destructive")
Fixes: 930760eb753 ("target/arm: Implement SME2 Multiple Vectors SVE Destructive")
Fixes: 8b61eff8e72 ("target/arm: Implement SME2 FCLAMP, SCLAMP, UCLAMP")
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
diff --git a/target/arm/tcg/translate-sme.c b/target/arm/tcg/translate-sme.c
index dcc4690fba..0794794e3d 100644
--- a/target/arm/tcg/translate-sme.c
+++ b/target/arm/tcg/translate-sme.c
@@ -756,7 +756,7 @@ static bool do_z2z_n1_fpst(DisasContext *s, arg_z2z_en *a,
return false;
}
/* These insns use MO_8 to encode BFloat16. */
- if (esz == MO_8 && !dc_isar_feature(aa64_sme_b16b16, s)) {
+ if (esz == MO_8 && !dc_isar_feature(aa64_sve_b16b16, s)) {
return false;
}
if (!sme_sm_enabled_check(s)) {
@@ -793,7 +793,7 @@ static bool do_z2z_nn_fpst(DisasContext *s, arg_z2z_en *a,
if (fn == NULL) {
return false;
}
- if (esz == MO_8 && !dc_isar_feature(aa64_sme_b16b16, s)) {
+ if (esz == MO_8 && !dc_isar_feature(aa64_sve_b16b16, s)) {
return false;
}
if (!sme_sm_enabled_check(s)) {
@@ -1850,7 +1850,7 @@ static bool trans_FCLAMP(DisasContext *s, arg_zzz_en *a)
return false;
}
/* This insn uses MO_8 to encode BFloat16. */
- if (a->esz == MO_8 && !dc_isar_feature(aa64_sme_b16b16, s)) {
+ if (a->esz == MO_8 && !dc_isar_feature(aa64_sve_b16b16, s)) {
return false;
}
if (!sme_sm_enabled_check(s)) {