David Miller <da...@davemloft.net> writes:

  diff --git a/mpn/sparc64/ultrasparct3/mul_1.asm 
b/mpn/sparc64/ultrasparct3/mul_1.asm
  index df52647..6a3f193 100644
  --- a/mpn/sparc64/ultrasparct3/mul_1.asm
  +++ b/mpn/sparc64/ultrasparct3/mul_1.asm
  @@ -50,8 +50,7 @@ L(top):
        umulxhi %o4, v0, %o4
        addcc   %o5, %g3, %g3
        stx     %g3, [rp-16]
  -     addxc   %g0, %g2, %o5
  -     addcc   %o5, %g1, %g1
  +     addxccc %g2, %g1, %g1
        addxc   %g0, %o4, %o5
        brgz    n, L(top)
         stx    %g1, [rp-8]
  
You should keep carry alive around the loop.  Both "addxc g0" should be
removed.  Then you'll need to use addxccc after final_one.

-- 
Torbjörn
_______________________________________________
gmp-devel mailing list
gmp-devel@gmplib.org
http://gmplib.org/mailman/listinfo/gmp-devel

Reply via email to