target-arm: fix incorrect temporary variable freeing
authorJuha Riihimäki <juha.riihimaki@nokia.com>
Mon, 26 Oct 2009 11:02:37 +0000 (13:02 +0200)
committerAurelien Jarno <aurelien@aurel32.net>
Mon, 26 Oct 2009 19:36:47 +0000 (20:36 +0100)
tmp4 and tmp5 temporary variables are allocated using tcg_const_i32
but incorrectly released using dead_tmp which will cause resource
leak tracking to report false leaks.

Signed-off-by: Juha Riihimäki <juha.riihimaki@nokia.com>
Acked-by: Laurent Desnogues <laurent.desnogues@gmail.com>
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
target-arm/translate.c

index 9d13d42..1988cc6 100644 (file)
@@ -5535,8 +5535,8 @@ static int disas_neon_data_insn(CPUState * env, DisasContext *s, uint32_t insn)
                 }
                 tmp3 = neon_load_reg(rm, 1);
                 gen_helper_neon_tbl(tmp3, tmp3, tmp, tmp4, tmp5);
-                dead_tmp(tmp5);
-                dead_tmp(tmp4);
+                tcg_temp_free_i32(tmp5);
+                tcg_temp_free_i32(tmp4);
                 neon_store_reg(rd, 0, tmp2);
                 neon_store_reg(rd, 1, tmp3);
                 dead_tmp(tmp);