On Sun, 1 Dec 2024 at 15:21, Richard Henderson <richard.hender...@linaro.org> wrote: > > Arm silliness with naming, the scalar insns described > as part of the vector instructions, as separate from > the "regular" scalar insns which output to general registers. > > Signed-off-by: Richard Henderson <richard.hender...@linaro.org> > --- > target/arm/tcg/translate-a64.c | 135 ++++++++++++++------------------- > target/arm/tcg/a64.decode | 30 ++++++++ > 2 files changed, 87 insertions(+), 78 deletions(-) > > diff --git a/target/arm/tcg/translate-a64.c b/target/arm/tcg/translate-a64.c > index 98a42feb7d..ad245f2c26 100644 > --- a/target/arm/tcg/translate-a64.c > +++ b/target/arm/tcg/translate-a64.c > @@ -8678,6 +8678,16 @@ static void do_fcvt_scalar(DisasContext *s, MemOp out, > MemOp esz, > tcg_shift, tcg_fpstatus); > tcg_gen_extu_i32_i64(tcg_out, tcg_single); > break; > + case MO_16 | MO_SIGN: > + gen_helper_vfp_toshh(tcg_single, tcg_single, > + tcg_shift, tcg_fpstatus); > + tcg_gen_extu_i32_i64(tcg_out, tcg_single); > + break; > + case MO_16: > + gen_helper_vfp_touhh(tcg_single, tcg_single, > + tcg_shift, tcg_fpstatus); > + tcg_gen_extu_i32_i64(tcg_out, tcg_single); > + break;
This hunk adds calls to the toshh and touhh helpers, but as far as I can see it doesn't remove any calls to those helpers that were in the old decode functions or any calls to the handle_simd_shift_fpint_conv() function which was the only one that did call them. Should this be in a different patch? (Conversely, we remove calls to gen_helper_advsimd_f16tosinth and gen_helper_advsimd_f16touinth but don't have those here.) thnaks -- PMM