gcd_22
Torbjörn Granlund
tg at gmplib.org
Sun Aug 18 10:46:35 UTC 2019
Your gcd_22.c triggered a lingering bug in longlong.h:
ARM target which default to Thumb code cannot to the rsc instruction
(reverse subtract with carry). We will need to write separate
sub_ddmmss for Thumb.
The problem statement is sub_ddmmss (vgtu, d0, 0, u0, 0, v0) which just
is there to generate a mask.
(We may want to add specific support for that idiom in many sub_ddmmss;
subtract-with-borrow rx,rx,rx would work for any platform. We could do
that for the ARM sub_ddmmss as a stop-gap fix, hiding this bug. But I
think I prefer a proper fix. C seems to definevarious __thumb symbobls
for our needs.)
--
Torbjörn
Please encrypt, key id 0xC8601622
More information about the gmp-devel
mailing list