GMP failing make check on Sun Ultrasparc

Torbjorn Granlund tg-this-will-bounce-but-I-am-subscribed-to-the-list-honest at swox.com
Thu Apr 19 19:24:58 CEST 2007


"James Avery" <avery at diku.dk> writes:

  I've just compiled the latest release of libgmp on Solaris. The
  "t-get_d" test fails, as shown below:
  
  PASS: t-asmtype
  PASS: t-aors_1
  PASS: t-divrem_1
  PASS: t-fat
  mpn_get_d wrong on random data
     sign     0
     n        =0x1FF800FE007FC0
     nsize    1
     exp      -37
     want     =[43 3F F8 00 FE 00 7F C0] 8998407423164352
     got      =[40 EF F8 00 FE 00 7F C0] 65472.031006097327918
  /bin/bash: line 4: 21355 Abort                   ${dir}$tst
  FAIL: t-get_d
  PASS: t-instrument
  PASS: t-iord_u
  PASS: t-mp_bases
  PASS: t-perfsqr
  PASS: t-scan
  ==================================
  1 of 10 tests failed
  Please report to gmp-bugs at swox.com
  ==================================
  
  I compiled for 64 bit using the following C/CXXFLAGS:
  "-fast -xtarget=ultra3 -xarch=v9b"
  
This is most likely a bug/feature in the Slowlaris compiler that you
trigger by overriding GMP's option choice.  We pass a couple of extra
options to make -fast more well-behaved for floating-point operations.
If you play with different compilation options than the default ones,
you should read the compiler documentation really well.

(It might be a mistake of us to pass -fast for the Sun compilers, as
it triggers non-conformant behaviour.  We now work around problems in
one release, but Sun might get the brilliant idea to let it enable
some new non-conformant behaviour in a future compiler release. There
are problems with -fast for more compilers, like Apple's gcc.  I
suspect these -fast options exist for inflating SPEC numbers, and
should be avoided if one wants general code to work properly.)

-- 
Torbjörn


More information about the gmp-bugs mailing list