Niels,

> From: ni...@lysator.liu.se (Niels Möller)
> Date: Sat, 28 Apr 2018 13:27:36 +0200
> [...]
> Inputs are a two limb normlized divisor, {d1, d0}, d1 >= B/2, and two
> numerator words, {n2, n1}, which must be less than {d1, d0}. [...]

if you use udiv_qr_3by2 to divide (say) a 6-limb number by a 3-limb number,
then in the schoolbook loop you might have {n2, n1} = {d1, d0}, in the case
where n0 is smaller than the next divisor limb d[-1].

If it is the responsibility of the caller to ensure {n2, n1} < {d1, d0},
then every caller of udiv_qr_3by2 must deal with that special case.

In my opinion, it would be simpler to allow {n2, n1} = {d1, d0}, and
return q=GMP_NUMB_MAX in that case.

Paul
_______________________________________________
gmp-devel mailing list
gmp-devel@gmplib.org
https://gmplib.org/mailman/listinfo/gmp-devel

Reply via email to