t...@gmplib.org (Torbjörn Granlund) writes: > I think we should rewrite relevant parts and avoid these constructs.
The reason for the current organization is the multiple variants of the single-limb loop, and for the oldest one, the strip_u_maybe: label was less unconventional. It would help clarity if we could reduce number of variants. If we delete the unused USE_ZEROTAB code and the unused (?) GCD_1_METHOD == 1 versions, it would be easier to reorganize loop entry. Do any of the assembly versions use the same algorithm, potentially suffering from the same bug? I'd guess on most archs one would use the carry flag and cmov, instead of the vgtu = LIMB_HIGHBIT_TO_MASK (t); mask, and then there's no need to make the low one bits of u and v implicit. Regards, /Niels -- Niels Möller. PGP-encrypted email is preferred. Keyid 368C6677. Internet email is subject to wholesale government surveillance. _______________________________________________ gmp-bugs mailing list gmp-bugs@gmplib.org https://gmplib.org/mailman/listinfo/gmp-bugs