From 23d5acf3d40f8010275ae9a5a80daf652a97308f Mon Sep 17 00:00:00 2001 From: Wentao_Liang Date: Fri, 25 Feb 2022 12:01:42 +0800 Subject: [PATCH] target/arm: Fix early free of TCG temp in handle_simd_shift_fpint_conv() handle_simd_shift_fpint_conv() was accidentally freeing the TCG temporary tcg_fpstatus too early, before the last use of it. Move the free down to where it belongs. Signed-off-by: Wentao_Liang Reviewed-by: Richard Henderson [PMM: cleaned up commit message] Signed-off-by: Peter Maydell --- target/arm/translate-a64.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/target/arm/translate-a64.c b/target/arm/translate-a64.c index 5a1df25f91..d1a59fad9c 100644 --- a/target/arm/translate-a64.c +++ b/target/arm/translate-a64.c @@ -9045,9 +9045,9 @@ static void handle_simd_shift_fpint_conv(DisasContext *s, bool is_scalar, } } - tcg_temp_free_ptr(tcg_fpstatus); tcg_temp_free_i32(tcg_shift); gen_helper_set_rmode(tcg_rmode, tcg_rmode, tcg_fpstatus); + tcg_temp_free_ptr(tcg_fpstatus); tcg_temp_free_i32(tcg_rmode); }