Division interfaces

Torbjorn Granlund tg at gmplib.org
Tue Mar 15 18:31:20 CET 2011

I think I understand; the least significant limb from the partial
remainder which from which we took bits for an udiv_qr_3by2 will need to
be treated by submul_1 since the low bits of that word need to be taken
into account.

We can either, as you mention, zero them out from the limb in memory, or
just keep the entrire original limb in a scalar variable, and add the
offending bit to our next 3-limb chunk before applying udiv_qr_3by2

One important aspect of SB division is keeping the number of live
variables (limbs, pointers-to-limbs, sizes) as low as possible.  Its
performance will depend quite much on that.

I fear udiv_qr_4by3 will need one or two more limb variables live.


More information about the gmp-devel mailing list