[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH] ppc: Convert op_405_check_{sat,satu} to TCG
From: |
Paul Brook |
Subject: |
Re: [Qemu-devel] [PATCH] ppc: Convert op_405_check_{sat,satu} to TCG |
Date: |
Sat, 25 Oct 2008 21:09:17 +0100 |
User-agent: |
KMail/1.9.9 |
On Saturday 25 October 2008, Andreas Färber wrote:
> + tcg_gen_shri_tl(tmp, tmp, 31);
> + tcg_gen_brcondi_tl(TCG_COND_EQ, tmp, 0, endLabel);
Is this really right for ppc64?
You can easily test the high bit using TCG_COND_LT.
> + tcg_gen_shri_tl(tmp, cpu_T[2], 31);
> + tcg_gen_brcondi_tl(TCG_COND_EQ, tmp, 0, innerLabel);
> +
> + tcg_gen_movi_tl(cpu_T[0], INT32_MIN);
> + tcg_gen_br(endLabel);
> +
> + gen_set_label(innerLabel);
> + tcg_gen_movi_tl(cpu_T[0], INT32_MAX);
((signed)x >> 31) ^ 0x7fffffff)
is a much more efficient way of implementing this.
Paul