From: Richard Henderson Date: Wed, 20 Feb 2013 07:52:07 +0000 (-0800) Subject: target-arm: Use add2 in gen_add_CC X-Git-Url: http://git.maquefel.me/?a=commitdiff_plain;h=e3482cb8063575f9fe0f39b701a4b6dc5a55c9cd;p=qemu.git target-arm: Use add2 in gen_add_CC Cc: Peter Maydell Signed-off-by: Richard Henderson Signed-off-by: Blue Swirl --- diff --git a/target-arm/translate.c b/target-arm/translate.c index efe76d04cb..ca6f0af874 100644 --- a/target-arm/translate.c +++ b/target-arm/translate.c @@ -410,12 +410,11 @@ static void gen_sub_carry(TCGv dest, TCGv t0, TCGv t1) /* dest = T0 + T1. Compute C, N, V and Z flags */ static void gen_add_CC(TCGv dest, TCGv t0, TCGv t1) { - TCGv tmp; - tcg_gen_add_i32(cpu_NF, t0, t1); + TCGv tmp = tcg_temp_new_i32(); + tcg_gen_movi_i32(tmp, 0); + tcg_gen_add2_i32(cpu_NF, cpu_CF, t0, tmp, t1, tmp); tcg_gen_mov_i32(cpu_ZF, cpu_NF); - tcg_gen_setcond_i32(TCG_COND_LTU, cpu_CF, cpu_NF, t0); tcg_gen_xor_i32(cpu_VF, cpu_NF, t0); - tmp = tcg_temp_new_i32(); tcg_gen_xor_i32(tmp, t0, t1); tcg_gen_andc_i32(cpu_VF, cpu_VF, tmp); tcg_temp_free_i32(tmp);