On 6/9/20 6:02 PM, Peter Maydell wrote: > The widenfn() in do_vshll_2sh() does not free the input 32-bit > TCGv, so we need to do this in the calling code. > > Signed-off-by: Peter Maydell <peter.mayd...@linaro.org> > --- > target/arm/translate-neon.inc.c | 2 ++ > 1 file changed, 2 insertions(+) > > diff --git a/target/arm/translate-neon.inc.c b/target/arm/translate-neon.inc.c > index 664d3612607..299a61f067b 100644 > --- a/target/arm/translate-neon.inc.c > +++ b/target/arm/translate-neon.inc.c > @@ -1624,6 +1624,7 @@ static bool do_vshll_2sh(DisasContext *s, > arg_2reg_shift *a, > tmp = tcg_temp_new_i64(); > > widenfn(tmp, rm0); > + tcg_temp_free_i32(rm0); > if (a->shift != 0) { > tcg_gen_shli_i64(tmp, tmp, a->shift); > tcg_gen_andi_i64(tmp, tmp, ~widen_mask); > @@ -1631,6 +1632,7 @@ static bool do_vshll_2sh(DisasContext *s, > arg_2reg_shift *a, > neon_store_reg64(tmp, a->vd); > > widenfn(tmp, rm1); > + tcg_temp_free_i32(rm1); > if (a->shift != 0) { > tcg_gen_shli_i64(tmp, tmp, a->shift); > tcg_gen_andi_i64(tmp, tmp, ~widen_mask); >
Reviewed-by: Philippe Mathieu-Daudé <f4...@amsat.org>