gmp 5.1.1 Solaris 10 & 11 on x86 using Studio 12.3 ABI32 doesn't compile with --disable-assembly

Niels Möller nisse at
Wed May 15 14:01:44 CEST 2013

Mark Ashley <mark at> writes:

> If I set the ABI to 32 then the tests/.libs/libtests.a file has different
> symbols than if it is compiled with ABI 64.

In general, that's to be expected. There are plenty of optional
machine dependent functions.

> But the calls to x86call.asm for the x86_fldcw and x86_fstcw routines
> clashes with the -DNO_ASM directive........

That seems like a genuine bug. I can reproduce it with

  ~/hack/gmp/configure ABI=32 --disable-assembly

on a GNU/linux x86_64 system as well. Make check gets link errors,

  libtool: link: gcc -std=gnu99 -m32 -O2 -pedantic -fomit-frame-pointer -mtune=corei7 -march=corei7 -DNO_ASM -o .libs/t-bswap t-bswap.o ./.libs/libtests.a /home/nisse/build/gmp-32-noasm/.libs/ ../.libs/
  ./.libs/libtests.a(misc.o): In function `tests_hardware_setround':
  misc.c:(.text+0xcc6): undefined reference to `x86_fstcw'
  misc.c:(.text+0xcd6): undefined reference to `x86_fldcw'
  ./.libs/libtests.a(misc.o): In function `tests_hardware_getround':
  misc.c:(.text+0xd30): undefined reference to `x86_fstcw'
  collect2: ld returned 1 exit status
  make[4]: *** [t-bswap] Error 1


Niels Möller. PGP-encrypted email is preferred. Keyid C0B98E26.
Internet email is subject to wholesale government surveillance.

More information about the gmp-bugs mailing list