From patchwork Thu May 27 20:46:11 2010 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: [29/62] tcg-s390: Use LOAD COMPLIMENT for negate. Date: Thu, 27 May 2010 10:46:11 -0000 From: Richard Henderson X-Patchwork-Id: 53816 Message-Id: <1274993204-30766-30-git-send-email-rth@twiddle.net> To: qemu-devel@nongnu.org Cc: agraf@suse.de, aurelien@aurel32.net Signed-off-by: Richard Henderson --- tcg/s390/tcg-target.c | 10 ++-------- 1 files changed, 2 insertions(+), 8 deletions(-) diff --git a/tcg/s390/tcg-target.c b/tcg/s390/tcg-target.c index f85063e..97ac66d 100644 --- a/tcg/s390/tcg-target.c +++ b/tcg/s390/tcg-target.c @@ -1028,16 +1028,10 @@ static inline void tcg_out_op(TCGContext *s, TCGOpcode opc, break; case INDEX_op_neg_i32: - /* FIXME: optimize args[0] != args[1] case */ - tcg_out_insn(s, RR, LR, 13, args[1]); - tcg_out_movi(s, TCG_TYPE_I32, args[0], 0); - tcg_out_insn(s, RR, SR, args[0], 13); + tcg_out_insn(s, RR, LCR, args[0], args[1]); break; case INDEX_op_neg_i64: - /* FIXME: optimize args[0] != args[1] case */ - tcg_out_mov(s, TCG_REG_R13, args[1]); - tcg_out_movi(s, TCG_TYPE_I64, args[0], 0); - tcg_out_insn(s, RRE, SGR, args[0], TCG_REG_R13); + tcg_out_insn(s, RRE, LCGR, args[0], args[1]); break; case INDEX_op_mul_i32: