From 44696296d5c2ffccef9d43d37d4f525bba7d9f5c Mon Sep 17 00:00:00 2001 From: edgar_igl Date: Tue, 28 Oct 2008 00:13:15 +0000 Subject: CRIS: Plug more temp leaks. Signed-off-by: Edgar E. Iglesias git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5560 c046a42c-6fe2-441c-8c8c-71466251a162 --- target-cris/translate.c | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) (limited to 'target-cris/translate.c') diff --git a/target-cris/translate.c b/target-cris/translate.c index 6f71e19..4934309 100644 --- a/target-cris/translate.c +++ b/target-cris/translate.c @@ -231,10 +231,9 @@ static void t_gen_lsl(TCGv d, TCGv a, TCGv b) TCGv t0, t_31; t0 = tcg_temp_new(TCG_TYPE_TL); - t_31 = tcg_temp_new(TCG_TYPE_TL); + t_31 = tcg_const_tl(31); tcg_gen_shl_tl(d, a, b); - tcg_gen_movi_tl(t_31, 31); tcg_gen_sub_tl(t0, t_31, b); tcg_gen_sar_tl(t0, t0, t_31); tcg_gen_and_tl(t0, t0, d); @@ -929,15 +928,16 @@ static void cris_alu(DisasContext *dc, int op, if (op == CC_OP_BOUND || op == CC_OP_BTST) tmp = tcg_temp_local_new(TCG_TYPE_TL); - else - tmp = tcg_temp_new(TCG_TYPE_TL); if (op == CC_OP_CMP) { + tmp = tcg_temp_new(TCG_TYPE_TL); writeback = 0; } else if (size == 4) { tmp = d; writeback = 0; - } + } else + tmp = tcg_temp_new(TCG_TYPE_TL); + cris_pre_alu_update_cc(dc, op, op_a, op_b, size); cris_alu_op_exec(dc, op, tmp, op_a, op_b, size); -- cgit v1.1