[PATCH 0/3] Resubmit of Sparc T3/T4 patches.
Torbjorn Granlund
tg at gmplib.org
Tue Mar 5 23:43:00 CET 2013
David Miller <davem at davemloft.net> writes:
From: Torbjorn Granlund <tg at gmplib.org>
Date: Tue, 05 Mar 2013 23:27:45 +0100
> David Miller <davem at 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.
Yes, that's the next level of simpifying this, I'll play with that
after my commute home.
This should have the right instructions. Scheduling might be needed.
Obviously untested.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: mul_1.asm
Type: application/octet-stream
Size: 1682 bytes
Desc: not available
URL: <http://gmplib.org/list-archives/gmp-devel/attachments/20130305/f7f61773/attachment.obj>
-------------- next part --------------
--
Torbj?rn
More information about the gmp-devel
mailing list