On Sat, 20 Sep 2008, Atsushi Nemoto wrote: > @@ -229,6 +239,9 @@ LEAF(csum_partial) > > /* Still a full word to go */ > ulw t1, (src) > +#ifdef USE_DOUBLE > + add t1, zero /* clear upper 32bit */ > +#endif > PTR_ADDIU src, 4 > ADDC(sum, t1) > Unfortunately you can't zero-extend with a single instruction (you can use a single sll(v) to sign-extend), unless the R2 ISA provides some suitable oddity (which I haven't checked). You want something like: dsll32 t1, t1, 0 dsrl32 t1, t1, 0 instead. Maciej