issues on gcc202

Torbjörn Granlund tg at
Tue Aug 29 14:53:12 UTC 2017

  I find several issues on
  1) gmp-6.1.2 configured with --disable-shared and gcc 7.2.0: libgmp.a
     contains an undefined symbol __gmpn_addlsh1_n_ip1:
     zimmerma at gcc202:/tmp/gmp-6.1.2$ cat e.c
     #include "gmp.h"
     int main()
       mpz_t x;
       mpz_init_set_str (x, "1234567890", 10);
       mpz_sqrt (x, x);
     zimmerma at gcc202:/tmp/gmp-6.1.2$ gcc -I/tmp/include e.c /tmp/lib/libgmp.a
     /tmp/lib/libgmp.a(lt86-sqrtrem.o): In function `mpn_dc_sqrtrem':
     sqrtrem.c:(.text+0x4b8): undefined reference to `__gmpn_addlsh1_n_ip1'
     /tmp/lib/libgmp.a(lt86-sqrtrem.o): In function `mpn_dc_sqrt':
     sqrtrem.c:(.text+0xa1c): undefined reference to `__gmpn_addlsh1_n_ip1'
     collect2: error: ld returned 1 exit status
That was fixed in the head some weeks ago.  This was a real GMP bug.

  2) still with the same configuration, t-constants fails:
     zimmerma at gcc202:/tmp/gmp-6.1.2$ tests/t-constants 
     PP_INVERTED == 21cfe6cfc938b36b, but pp_inverted_calc == 1dde20a605db167d

This is not yet isolated.  It looks like a compiler or perhaps more
likely a linker bug.  Last night I reverted another change which
benefited gcc202, so now there will be more errors.

I am not actively working on this issue, but I will probably isolate it
at some point.

Please encrypt, key id 0xC8601622

More information about the gmp-bugs mailing list