Bug Report: gmp-4.2.2 - OpenSolaris - tests/mpz - mul_fft.c:971: GNU MP assertion failed: pl3 <= pl

rob1weld at aol.com rob1weld at aol.com
Thu Aug 7 21:36:54 CEST 2008


One of the two compilations I did was one with -m64 and the other 

was -m32. If I remember correctly it was the -m64 version that failed. 

 



Gmp did not seem to use "--enable-multilib" so I had to compile gmp 
twice 

and move the libraries manually to the correct directories. Here is

what it looks like after manually moving the libraries: 





# ls -l /opt/gnu/gmp-4.2.2/lib/ 

total 426 

lrwxrwxrwx   1 root     root           5 Aug  2 16:27 64 -> amd64 

drwxr-xr-x   2 root     root          10 Aug  2 16:28 amd64 

-rwxr-xr-x   1 root     root         785 Aug  2 17:15 libgmp.la 

lrwxrwxrwx   1 root     root          15 Aug  2 17:15 libgmp.so -> 
libgmp.so.3.4.2 

lrwxrwxrwx   1 root     root          15 Aug  2 17:15 libgmp.so.3 -> 
libgmp.so.3.4.2 

-rwxr-xr-x   1 root     root      262580 Aug  2 17:15 libgmp.so.3.4.2 

-rwxr-xr-x   1 root     root         871 Aug  2 17:15 libgmpxx.la 

lrwxrwxrwx   1 root     root          17 Aug  2 17:15 libgmpxx.so -> 
libgmpxx.so.4.0.2 

lrwxrwxrwx   1 root     root          17 Aug  2 17:15 libgmpxx.so.4 -> 
libgmpxx.so.4.0.2 

-rwxr-xr-x   1 root     root       22864 Aug  2
 17:15 libgmpxx.so.4.0.2 

 



# ls -l /opt/gnu/gmp-4.2.2/lib/amd64/ 

total 452 

-rwxr-xr-x   1 root     root         785 Aug  2 16:20 libgmp.la 

lrwxrwxrwx   1 root     root          15 Aug  2 16:20 libgmp.so -> 
libgmp.so.3.4.2 

lrwxrwxrwx   1 root     root          15 Aug  2 16:20 libgmp.so.3 -> 
libgmp.so.3.4.2 

-rwxr-xr-x   1 root     root      316960 Aug  2 16:20 libgmp.so.3.4.2 

-rwxr-xr-x   1 root     root         891 Aug  2 16:20 libgmpxx.la 

lrwxrwxrwx   1 root     root          17 Aug  2 16:20 libgmpxx.so -> 
libgmpxx.so.4.0.2 

lrwxrwxrwx   1 root     root          17 Aug  2 16:20 libgmpxx.so.4 -> 
libgmpxx.so.4.0.2 

-rwxr-xr-x   1 root     root       28272 Aug  2 16:20 libgmpxx.so.4.0.2 



 

I built gmp so I could build mpfr. 



Mpfr passed _all_ it's tests (with the gmp that failed one test). 

 

I'm using the gmp / mpfr to build GCC 4.x and the gfortran portion 
seemed to build OK. 



I have not done "make -i check" (on gcc) yet since I am trying to port 
some dependancies to this OS. 





I configured and built like this: 



64-Bit version:



../gmp-4.2.2/configure --p
refix=/opt/gnu/gmp-4.2.2 --enable-cxx=detect

--with-as=/opt/gnu/bin/as --with-gnu-as --with-ld=/usr/ccs/bin/ld

--without-gnu-ld --enable-shared --disable-static --enable-multilib

--with-readline ABI=64



gmake

gmake check

gmake install



Then I moved the /opt/gnu/gmp-4.2.2/lib files to 
/opt/gnu/gmp-4.2.2/lib/amd64 .



 

32-Bit version:



../gmp-4.2.2/configure --prefix=/opt/gnu/gmp-4.2.2 --enable-cxx=detect

--with-as=/opt/gnu/bin/as --with-gnu-as --with-ld=/usr/ccs/bin/ld

--without-gnu-ld --enable-shared --disable-static --enable-multilib

--with-readline ABI=32 



gmake 

gmake check 

gmake install

 



My gcc is the default that comes with OpenSolaris (this is why am I 
building a newer version): 



# gcc -v 

Reading specs from /usr/sfw/lib/gcc/i386-pc-solaris2.11/3.4.3/specs 

Configured with:

/builds2/sfwnv-gate/usr/src/cmd/gcc/gcc-3.4.3/configure 
--prefix=/usr/sfw --with-as=/usr/sfw/bin/gas --with-gnu-as

--with-ld=/usr/ccs/bin/ld --without-gnu-ld 
--enable-languages=c,c++,f77,objc --enable-shared 

Thread model: posix 

gcc version 3.4.3 (csl-sol210-3_4-20050802) 

 



So, no "mis-compilation". AFAIK, just that the configure has no / 
little support for 64-bit OSes

and I had to compile the program twice (with different ABIs) and move 
the lib files manually). 



Comments? 



Thanks20for your reply (and the free software, with timely support :) ), 

 

YT,

Rob 

 



-----Original Message----- 

From: Torbjorn Granlund <tg at swox.com> 

To: rob1weld at aol.com 

Cc: gmp-bugs at swox.com 

Sent: Sat, 2 Aug 2008 1:57 pm 

Subject: Re: Bug Report: gmp-4.2.2 - OpenSolaris - tests/mpz 
-mul_fft.c:971: GNU MP assertion failed: pl3 <= pl 



This smells miscompilation, assuming you've just make a plain 



configure 

make 

make check 



since that will not exercise the code in any unusual way. 

 

-- 

Torbjörn 



More information about the gmp-bugs mailing list