qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] [PATCH 2/2] tcg-ia64: implement add2_i32/i64 and sub2_i


From: Richard Henderson
Subject: Re: [Qemu-devel] [PATCH 2/2] tcg-ia64: implement add2_i32/i64 and sub2_i32/i64
Date: Sat, 30 Mar 2013 08:54:03 -0700
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:17.0) Gecko/20130311 Thunderbird/17.0.4

On 03/30/2013 08:33 AM, Aurelien Jarno wrote:
> +static inline void tcg_out_add2(TCGContext *s, TCGArg retl, TCGArg reth,
> +                                TCGArg arg1l, TCGArg arg1h,
> +                                TCGArg arg2l, TCGArg arg2h,
> +                                int cmp4)
> +{
> +    tcg_out_bundle(s, MmI,
> +                   tcg_opc_a1(TCG_REG_P0, OPC_ADD_A1, TCG_REG_R2, arg1l, 
> arg2l),
> +                   tcg_opc_m48(TCG_REG_P0, OPC_NOP_M48, 0),
> +                   tcg_opc_cmp_a(TCG_REG_P0, TCG_COND_LTU,
> +                                 TCG_REG_R2, arg1l, cmp4));

I seem to recall a 1-cycle cross-unit delay, going between M to I units?
Maybe that was just the itanic1, it's been so long...?

Anyway, in this case it's easy to avoid by putting the nop first and using
an mII bundle.

That said, the code looks correct.

Reviewed-by: Richard Henderson <address@hidden>


r~





reply via email to

[Prev in Thread] Current Thread [Next in Thread]