GMP 4.2.4 fails make check t-mul on hppa-linux

Torbjorn Granlund tg at gmplib.org
Sat Aug 1 09:30:55 CEST 2009


Laurent GUERBY <laurent at guerby.net> writes:

  Hi,
  
  On compile farm machine gcc61 using system GCC 4.3.2-1.1 from Debian GMP
  4.2.4 configured as:
  
  ./configure --prefix=/opt/cfarm/gmp-4.2.4 --disable-shared --enable-cxx
  ...
  using ABI="2.0n"
        CC="gcc"
        CFLAGS="-O2 -mpa-risc-2-0"
        CPPFLAGS=""
        CXX="g++"
        CXXFLAGS="-O2 -mpa-risc-2-0"
        MPN_PATH=" pa64 generic"
  ...
  
  builds and install successfully but make check fails at least one test:
  
  ERROR: incorrect plain product in test 44
  op1          = 3FFFFFFFFFFFFFFFFFFFFFFFF...0000000000000000000000000 [2901]
  op2          = FFFFFFFFFFFFFFFFFFFFFFFFF...0000000000000000000000000 [3526]
      product  = 3FFFFFFFFFFFFFFFFFFFFFFFF...0000000000000000000000000 [6427]
  ref_product  = 3FFFFFFFFFFFFFFFFFFFFFFFF...0000000000000000000000000 [6427]
  /bin/sh: line 4:  9385 Aborted                 ${dir}$tst
  FAIL: t-mul
  
  t-tdiv currently seems not to finish so make check is stuck.
  
I've run into that too on gcc61.

The problem is that Linux (the kernel) doesn't correctly save the upper
32 bits of 64-bit registers.  I talked somebody who claimed to be an
hppa Linux developer, and he didn't seem very keen on fixing this
problem, so here we are.

Perhaps GMP's configure should simply assume Linux (the kernel) will be
broken indefinitely, and not use the 2.0n or 2.0w ABIs.

Your way around this is to pass ABI=1.0 to GMP's configure.

-- 
Torbjörn


More information about the gmp-bugs mailing list