[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH] target/arm: Free TCG temps in trans_VMOV_64_sp(
From: |
Aleksandar Markovic |
Subject: |
Re: [Qemu-devel] [PATCH] target/arm: Free TCG temps in trans_VMOV_64_sp() |
Date: |
Thu, 29 Aug 2019 20:54:52 +0200 |
27.08.2019. 14.20, "Peter Maydell" <address@hidden> је написао/ла:
>
> 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: address@hidden
> Signed-off-by: Peter Maydell <address@hidden>
> ---
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
>
>