On Sat, Mar 30, 2013 at 08:54:03AM -0700, Richard Henderson wrote:
> 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.

I'll do that in the next version, thanks for the review.

> That said, the code looks correct.
> 
> Reviewed-by: Richard Henderson <r...@twiddle.net>
> 
> 
> r~
> 
> 
> 
> 

-- 
Aurelien Jarno                          GPG: 1024D/F1BCDB73
aurel...@aurel32.net                 http://www.aurel32.net

Reply via email to