C implementation of mod_1_1
Marc Glisse
marc.glisse at inria.fr
Tue Mar 1 12:44:17 CET 2011
On Tue, 1 Mar 2011, Torbjorn Granlund wrote:
> I might try to write add_mssaaaa for sparc32 and sparc64 (sparc is the
> only "obscure" architecture which both I and GMP understand to some
> extent.
>
> sparc32 should be piece of cake, sparc64 lacks a carry-generating insn,
> making it somewhat hairy. The asm code uses two approaches, one makes
> use of a logical formula on the sign bits, the other (see
> mpn/sparc64/ultrasparct1/add_n.asm) does some tricks using 32-bit and
> 64-bit addition operations.
Before the sparc T3 was out (it has been available for a few months now),
they announced that it had a proper add with carry, mulhi, and the
multiplications were fully pipelined. I haven't had a chance to check that
in the doc since then (not sure they even published one...), I only saw it
there (page 7):
http://www.opensparc.net/pubs/preszo/09/hotChips_spracklen-final.pdf
Fujitsu's recent sparc64 are supposed to have an integer FMA that works on
FPU registers.
(just mentioning those)
--
Marc Glisse
More information about the gmp-devel
mailing list