27.08.2019. 14.20, "Peter Maydell" <peter.mayd...@linaro.org> је написао/ла: > > The function neon_store_reg32() doesn't free the TCG temp that it > is passed, so the caller must do that. We got this right in most > places but forgot to free the TCG temps in trans_VMOV_64_sp(). > > Cc: qemu-sta...@nongnu.org > Signed-off-by: Peter Maydell <peter.mayd...@linaro.org> > ---
Hello, Peter, I am just curious if you found this by manual code inspection, or perhaps using a tool? Yours, Aleksandar > target/arm/translate-vfp.inc.c | 2 ++ > 1 file changed, 2 insertions(+) > > diff --git a/target/arm/translate-vfp.inc.c b/target/arm/translate-vfp.inc.c > index 3e8ea80493b..9ae980bef63 100644 > --- a/target/arm/translate-vfp.inc.c > +++ b/target/arm/translate-vfp.inc.c > @@ -880,8 +880,10 @@ static bool trans_VMOV_64_sp(DisasContext *s, arg_VMOV_64_sp *a) > /* gpreg to fpreg */ > tmp = load_reg(s, a->rt); > neon_store_reg32(tmp, a->vm); > + tcg_temp_free_i32(tmp); > tmp = load_reg(s, a->rt2); > neon_store_reg32(tmp, a->vm + 1); > + tcg_temp_free_i32(tmp); > } > > return true; > -- > 2.20.1 > >