sagemath / sage

Main repository of SageMath
https://www.sagemath.org
Other
1.32k stars 451 forks source link

mpir-3.0.0 does not compile on skylake chips on OSX #24085

Closed AndrewMathas closed 6 years ago

AndrewMathas commented 6 years ago

As discussed on sage-devel, mpir does not build on Skylake chips. As reported by Bill Hart,

We know what the problem is now, but don't have a working patch to fix it. It's the JMPENT macro in mpn/x86_64/x86_64-defs.m4 that doesn't work on 64 bit OSX. Details of the issue can be found here.

In the end, the fix was to edit jump labels in a (large) number of MPIR's asm files, and change the .section type of jumptables, while leaving JMPENT macros intact. The changes are way too big for Sage patches (and done against the master rather than against meanwhile a bit outdated 3.0.0 version), thus a new tarball.

Tarball: http://sage.ugent.be/www/jdemeyer/sage/mpir-3.0.0-644faf502c56f97d9accd301965fc57d6ec70868.tar.bz2

Upstream: Completely fixed; Fix reported upstream

CC: @wbhart @kiwifb

Component: packages: standard

Keywords: skylake, mpir

Author: Dima Pasechnik, Jeroen Demeyer

Branch: c2384a7

Reviewer: David Roe, Andrew Mathas, Dima Pasechnik

Issue created by migration from https://trac.sagemath.org/ticket/24085

dimpase commented 6 years ago
comment:1

making this a blocker - we do want skylake in, no?

dimpase commented 6 years ago

Branch: u/dimpase/skylakefix

dimpase commented 6 years ago

Commit: ee99550

dimpase commented 6 years ago

Author: Dima Pasechnik

dimpase commented 6 years ago

New commits:

ee99550skylake fix
slel commented 6 years ago

Description changed:

--- 
+++ 
@@ -1,15 +1,17 @@
-As discussed on [sage-devel](https://groups.google.com/forum/#!topic/sage-devel/P4GtTf2zo8k), mpir does not build skylake chips. As reported by Bill Hart,
+As discussed on [sage-devel](https://groups.google.com/forum/#!topic/sage-devel/P4GtTf2zo8k), mpir does not build on Skylake chips. As reported by Bill Hart,

-    We know what the problem is now, but don't have a working patch to fix it. It's the JMPENT macro in mpn/x86_64/x86_64-defs.m4 that doesn't work on 64 bit OSX. Details of the issue can be found [https://gmplib.org/list-archives/gmp-bugs/2012-December/002836.html here.
+> We know what the problem is now, but don't have a working patch to fix it.
+> It's the JMPENT macro in mpn/x86_64/x86_64-defs.m4 that doesn't work
+> on 64 bit OSX. Details of the issue can be found
+> [here](https://gmplib.org/list-archives/gmp-bugs/2012-December/002836.html).

-A work around is to:
-* unpack $SAGE_ROOT/upstream/mpir-3.0.0.tar.bz2
+A workaround is to:
+* unpack `$SAGE_ROOT/upstream/mpir-3.0.0.tar.bz2`
 * delete the three files:
-  - mpir-3.0.0/mpn/x86_64w/skylake/avx/addmul_1.as
-  - mpir-3.0.0/mpn/x86_64w/skylake/avx/mul_basecase.asm
-  - mpir-3.0.0/mpn/x86_64w/skylake/avx/sqr_basecase.asm
-* recreate mpir-3.0.0.tar.bz2
-* Fix thepackage  checksums: ./sage --package fix-checksum
-* Rebuild mpri with: ./sage -f mpir
+  - `mpir-3.0.0/mpn/x86_64w/skylake/avx/addmul_1.as`
+  - `mpir-3.0.0/mpn/x86_64w/skylake/avx/mul_basecase.asm`
+  - `mpir-3.0.0/mpn/x86_64w/skylake/avx/sqr_basecase.asm`
+* recreate `mpir-3.0.0.tar.bz2`
+* fix the package checksums: `./sage --package fix-checksum`
+* rebuild mpir with: `./sage -f mpir`

-
slel commented 6 years ago
comment:3

(Minor typo fixes and reformatting of ticket description.)

dimpase commented 6 years ago

Description changed:

--- 
+++ 
@@ -5,13 +5,10 @@
 > on 64 bit OSX. Details of the issue can be found
 > [here](https://gmplib.org/list-archives/gmp-bugs/2012-December/002836.html).

-A workaround is to:
-* unpack `$SAGE_ROOT/upstream/mpir-3.0.0.tar.bz2`
-* delete the three files:
+the branch:
+* deletes the three files:
   - `mpir-3.0.0/mpn/x86_64w/skylake/avx/addmul_1.as`
   - `mpir-3.0.0/mpn/x86_64w/skylake/avx/mul_basecase.asm`
   - `mpir-3.0.0/mpn/x86_64w/skylake/avx/sqr_basecase.asm`
-* recreate `mpir-3.0.0.tar.bz2`
-* fix the package checksums: `./sage --package fix-checksum`
-* rebuild mpir with: `./sage -f mpir`
+* bumps up the version to p1.
dimpase commented 6 years ago
comment:4

the actual state of the ticket reflected in the descr. now.

roed314 commented 6 years ago
comment:5

When I pull this change to a build that failed before, I get

[mpir-3.0.0.p0] libtool: link: /usr/bin/gcc -dynamiclib -Wl,-undefined -Wl,dynamic_lookup -o .libs/libmpir.23.dylib  .libs/assert.o .libs/compat.o .libs/errno.o .libs/extract-dbl.o .libs/invalid.o .libs/memory.o .li
[mpir-3.0.0.p0] ld: in section __DATA,__const reloc 0: X86_64_RELOC_SUBTRACTOR must have r_extern=1 file 'mpn/.libs/addmul_1.o' for architecture x86_64
[mpir-3.0.0.p0] clang: error: linker command failed with exit code 1 (use -v to see invocation)

Full log posted at http://www.pitt.edu/~roed/mpir-24085.log.

I'll try starting from a fresh sage-8.1.rc2.

roed314 commented 6 years ago
comment:6

Very similar looking error when trying with a fresh Sage. Log posted at http://www.pitt.edu/~roed/mpir-24085_2.log

dimpase commented 6 years ago

Description changed:

--- 
+++ 
@@ -7,7 +7,7 @@

 the branch:
 * deletes the three files:
-  - `mpir-3.0.0/mpn/x86_64w/skylake/avx/addmul_1.as`
+  - `mpir-3.0.0/mpn/x86_64w/skylake/avx/addmul_1.asm`
   - `mpir-3.0.0/mpn/x86_64w/skylake/avx/mul_basecase.asm`
   - `mpir-3.0.0/mpn/x86_64w/skylake/avx/sqr_basecase.asm`
 * bumps up the version to p1.
dimpase commented 6 years ago
comment:8

Well, I merely presented in a patch form what was reported by Andrew to be a working workaround. Without access to the corresponding OS/arch combo, I can't do much.

dimpase commented 6 years ago

Changed branch from u/dimpase/skylakefix to none

dimpase commented 6 years ago
comment:9

David, could you post the output of MPIR's ./config.guess for your system?

I'm thinking about a better way to fix this: detect skylake+OSX combo and pass a different (working) arch to the MPIR build system.

dimpase commented 6 years ago

Changed commit from ee99550 to none

roed314 commented 6 years ago
comment:10

Replying to @dimpase:

David, could you post the output of MPIR's ./config.guess for your system?

It's at http://www.pitt.edu/~roed/config.guess

dimpase commented 6 years ago
comment:11

Replying to @roed314:

Replying to @dimpase:

David, could you post the output of MPIR's ./config.guess for your system?

It's at http://www.pitt.edu/~roed/config.guess

this looks like a script. I meant: cd $SAGE_ROOT/upstream; tar xf mpir-3.0.0.tar.gz; cd mpir-3.0.0; ./config.guess

e.g. on my laptop I get the output skylakeavx-unknown-linux-gnu

roed314 commented 6 years ago
comment:12

Replying to @dimpase:

Replying to @roed314:

Replying to @dimpase:

David, could you post the output of MPIR's ./config.guess for your system?

It's at http://www.pitt.edu/~roed/config.guess

this looks like a script. I meant: cd $SAGE_ROOT/upstream; tar xf mpir-3.0.0.tar.gz; cd mpir-3.0.0; ./config.guess

Ah, thanks.

e.g. on my laptop I get the output skylakeavx-unknown-linux-gnu

I get skylakeavx-apple-darwin16.7.0

alexjbest commented 6 years ago
comment:13

So I also don't have the set up to test this, but it looks like deleting the files in x86_64w is the wrong place. the 64w folder is for windows code and wouldn't be used by osx? Perhaps deleting the files just in x86_64 will work. (If we look at David's log it does config.status: linking mpn/x86_64/skylake/avx/addmul_1.asm to mpn/addmul_1.asm so osx is using the x86_64 code)

roed314 commented 6 years ago
comment:14

Deleting the files in x86_64 or x86_64w? There's also x86w....

alexjbest commented 6 years ago
comment:15

x86_64 is 64bit *nix abi, x86_64w is 64bit windows, x86(w) is older 32-bit stuff for linux (resp. windows) . mpn/x86_64/ is what's being linked on your machine.

roed314 commented 6 years ago
comment:16

I tried

cd upstream/mpir-3.0.0/mpn/x86_64
rm -rf *
cd $SAGE_ROOT && make

I still get

[mpir-3.0.0.p1] libtool: link: gcc -dynamiclib -Wl,-undefined -Wl,dynamic_lookup -o .libs/libmpir.23.dylib  .libs/assert.o .libs/compat.o .libs/errno.o .libs/extract-dbl.o .libs/invalid.o .libs/memory.o .libs/mp_bpi
[mpir-3.0.0.p1] ld: in section __DATA,__const reloc 0: X86_64_RELOC_SUBTRACTOR must have r_extern=1 file 'mpn/.libs/addmul_1.o' for architecture x86_64
[mpir-3.0.0.p1] clang: error: linker command failed with exit code 1 (use -v to see invocation)

Let me know if you have any other ideas....

alexjbest commented 6 years ago
comment:17

Sorry I was being lazy you don't want to remove all the x86_64 code just the 3 from before just from the right folder: mpir-3.0.0/mpn/x86_64/skylake/avx/addmul_1.asm mpir-3.0.0/mpn/x86_64/skylake/avx/mul_basecase.asm mpir-3.0.0/mpn/x86_64/skylake/avx/sqr_basecase.asm also you need to re-run ./configure after this, is sage make doing that?

roed314 commented 6 years ago
comment:18

I downloaded a fresh copy of sage and deleted the files. At first I didn't see your comment about ./configure, but after getting an error, I ran ./configure && make, to no avail:

[mpir-3.0.0.p0] /bin/sh ./libtool  --tag=CC   --mode=link gcc  -m64 -O2 -march=skylake -mtune=skylake  -g    -version-info 23:3:0 -L/Users/roed/sage/sage-8.1.rc2/local/lib -Wl,-rpath,/Users/roed/sage/sage-8.1.rc2/ls
[mpir-3.0.0.p0] libtool: link: gcc -dynamiclib -Wl,-undefined -Wl,dynamic_lookup -o .libs/libmpir.23.dylib  .libs/assert.o .libs/compat.o .libs/errno.o .libs/extract-dbl.o .libs/invalid.o .libs/memory.o .libs/mp_bps
[mpir-3.0.0.p0] ld: in section __DATA,__const reloc 0: X86_64_RELOC_SUBTRACTOR must have r_extern=1 file 'mpn/.libs/addmul_1.o' for architecture x86_64
[mpir-3.0.0.p0] clang: error: linker command failed with exit code 1 (use -v to see invocation)
dimpase commented 6 years ago
comment:19

Following a tip from Bill, I am able to reproduce the issue on a non-skylake OSX 10.12 machine (with XCode 9). To do this (in MPIR source dir), do

./configure --host=skylakeavx-apple-darwin16.7.0
make

and get the familiar

ld: in section __DATA,__const reloc 0: X86_64_RELOC_SUBTRACTOR must have r_extern=1 file 'mpn/.libs/addmul_1.o' for architecture x86_64

(This should also work on Travis CI, if you are so inclined (although in my experience Travis is quite slow on OSX).

Now the plan is to lift the fix for the responsible m4 off GMP...

dimpase commented 6 years ago
comment:20

I am trying the following patch, basically taken from GMP

diff --git a/mpn/x86_64/x86_64-defs.m4 b/mpn/x86_64/x86_64-defs.m4
index 120efc7..0f65e55 100644
--- a/mpn/x86_64/x86_64-defs.m4
+++ b/mpn/x86_64/x86_64-defs.m4
@@ -129,9 +129,10 @@ dnl  Usage: JMPENT(targlabel,tablabel)

 define(`JMPENT',`dnl
 ifdef(`PIC',
-    `.long  $1-$2'
+        `.set   $1_tmp, $1-$2
+        .long   $1_tmp'
 ,
-    `.quad  $1'
+        `.quad  $1'
 )')

 dnl  Usage: call_mcount
@@ -666,7 +667,7 @@ define(`R8',
                 $1,`%r14',`%r14b',
                 $1,`%r15',`%r15b')')

-define(`JUMPTABSECT', `.section .data.rel.ro.local,"aw",@progbits')
+define(`JUMPTABSECT', `.text')

 dnl  Usage: JMPENT(targlabel,tablabel)

but it does not work, neither with the native (clang) toolchain, nor with gcc-7.2. (Same error with addmul_1.o as above). Could it be something to do with internal vs non-internal assembly?

dimpase commented 6 years ago

Commit: ad77588

dimpase commented 6 years ago
comment:21

Please try this on the "real" skylake. It builds on the fake one (i.e. with --host=skylakeavx-apple-darwin16.7.0).

In the previous attempt I missed that JMPENT and JUMPTABSECT are defined twice...


New commits:

ad77588testing-only - for OSX skylake
dimpase commented 6 years ago

Branch: u/dimpase/skylakefix

dimpase commented 6 years ago

Description changed:

--- 
+++ 
@@ -5,10 +5,4 @@
 > on 64 bit OSX. Details of the issue can be found
 > [here](https://gmplib.org/list-archives/gmp-bugs/2012-December/002836.html).

-the branch:
-* deletes the three files:
-  - `mpir-3.0.0/mpn/x86_64w/skylake/avx/addmul_1.asm`
-  - `mpir-3.0.0/mpn/x86_64w/skylake/avx/mul_basecase.asm`
-  - `mpir-3.0.0/mpn/x86_64w/skylake/avx/sqr_basecase.asm`
-* bumps up the version to p1.
-
+the branch patches the relevant m4 macros. It is for testing purposes only - a proper fix should make it conditional for OSX.
jdemeyer commented 6 years ago
comment:23

The ticket says "Workaround found; Bug reported upstream." but where is the upstream report?

And please add a link to this ticket in the patch file.

roed314 commented 6 years ago
comment:24

I'm past the mpir compilation: looking good so far. I'll report once it's done and I've run tests.

roed314 commented 6 years ago
comment:25

I'm getting an error building gcc:

[gcc-7.2.0] /Users/roed/sage/sage-8.1.rc2/local/var/tmp/sage/build/gcc-7.2.0/gcc-build/./gcc/xgcc -B/Users/roed/sage/sage-8.1.rc2/local/var/tmp/sage/build/gcc-7.2.0/gcc-build/./gcc/ -nostdinc -x c /dev/null -S -o /d
[gcc-7.2.0] <built-in>: internal compiler error: Bus error: 10
[gcc-7.2.0] libbacktrace could not find executable to open
[gcc-7.2.0] Please submit a full bug report,
[gcc-7.2.0] with preprocessed source if appropriate.
[gcc-7.2.0] See <https://gcc.gnu.org/bugs/> for instructions.
[gcc-7.2.0] make[6]: *** [s-selftest] Error 1
[gcc-7.2.0] rm gcc.pod
[gcc-7.2.0] make[5]: *** [all-stage1-gcc] Error 2
[gcc-7.2.0] make[4]: *** [stage1-bubble] Error 2
[gcc-7.2.0] make[3]: *** [all] Error 2

Full log at http://www.pitt.edu/~roed/gcc_24085.log

dimpase commented 6 years ago
comment:26

OK, now I see that on my machine MPIR with this patch fails standalone tests. :-(

That's probably why gcc can't be built (mpir is used ) Let me try few variations to see if I can make it work.

dimpase commented 6 years ago
comment:27

In fact, it's linking errors that I get; the MPIR tests fail with the following:

$ less tests/t-constants.log 
dyld: Symbol not found: .Ll0m4_tmp
  Referenced from: /Volumes/Sage/sage/upstream/mpir-3.0.0/.libs/libmpir.23.dylib
  Expected in: flat namespace
 in /Volumes/Sage/sage/upstream/mpir-3.0.0/.libs/libmpir.23.dylib
dimpase commented 6 years ago
comment:28

Right, the problem turns out to be that some assembler code in MPIR does not work with the new version of the JMPENT macro. Updating it still leads to two errors in MPIR testsuite. See https://github.com/wbhart/mpir/issues/232

It would be great if someone can tell how to write an m4 macro that is conditional on the OS type (we only need to change JMPENT on OSX).

vbraun commented 6 years ago
comment:29

This ticket doesn't look like it'll be ready any time soon, skip it for 8.1?

dimpase commented 6 years ago
comment:30

Replying to @vbraun:

This ticket doesn't look like it'll be ready any time soon, skip it for 8.1?

I hope to have a working version by the end of today... But it's up to you, I think Apple should not slow Sage down (without paying us, for sure :-))

roed314 commented 6 years ago
comment:31

Replying to @dimpase:

Replying to @vbraun:

This ticket doesn't look like it'll be ready any time soon, skip it for 8.1?

I hope to have a working version by the end of today... But it's up to you, I think Apple should not slow Sage down (without paying us, for sure :-))

I can't help with the fix itself, but I'm happy to keep helping with testing.

dimpase commented 6 years ago
comment:32

Replying to @roed314:

Replying to @dimpase:

Replying to @vbraun:

This ticket doesn't look like it'll be ready any time soon, skip it for 8.1?

I hope to have a working version by the end of today... But it's up to you, I think Apple should not slow Sage down (without paying us, for sure :-))

I can't help with the fix itself, but I'm happy to keep helping with testing.

Could you try out (the master of) https://github.com/dimpase/mpir.git ? that is,

git clone https://github.com/dimpase/mpir.git
cd mpir
./autogen.sh
./configure CC=cc --prefix=/tmp/blah && make -j8 && make -j8 check

(assuming you have yasm installed) This fails 2 tests on non-skylake, perhaps it would work on skylake?

AndrewMathas commented 6 years ago
comment:33

I'm running xcode Version 9.0 (9A235) on on mscox 10.12.16. I got the following errors:

PASS: t-addadd_n
PASS: t-addsub_n
PASS: t-aors_1
../../test-driver: line 107: 94805 Bus error: 10           "$@" > $log_file 2>&1
../../test-driver: line 107: 94803 Bus error: 10           "$@" > $log_file 2>&1
FAIL: t-dc_bdiv_q
PASS: t-asmtype
FAIL: t-dc_bdiv_q_n
../../test-driver: line 107: 94861 Bus error: 10           "$@" > $log_file 2>&1
../../test-driver: line 107: 94862 Bus error: 10           "$@" > $log_file 2>&1
../../test-driver: line 107: 94863 Bus error: 10           "$@" > $log_file 2>&1
FAIL: t-dc_div_q
FAIL: t-dc_bdiv_qr
FAIL: t-dc_bdiv_qr_n
../../test-driver: line 107: 94918 Bus error: 10           "$@" > $log_file 2>&1
../../test-driver: line 107: 94920 Bus error: 10           "$@" > $log_file 2>&1
../../test-driver: line 107: 94919 Bus error: 10           "$@" > $log_file 2>&1
FAIL: t-dc_div_qr_n
FAIL: t-dc_divappr_q
FAIL: t-dc_div_qr
PASS: t-divrem_1
PASS: t-divebyff
PASS: t-divebyfobm1
../../test-driver: line 107: 95028 Bus error: 10           "$@" > $log_file 2>&1
../../test-driver: line 107: 95027 Bus error: 10           "$@" > $log_file 2>&1
FAIL: t-gcdext
FAIL: t-fat
PASS: t-get_d
PASS: t-instrument
../../test-driver: line 107: 95085 Bus error: 10           "$@" > $log_file 2>&1
FAIL: t-hgcd
../../test-driver: line 107: 95115 Bus error: 10           "$@" > $log_file 2>&1
FAIL: t-inv_div_q
../../test-driver: line 107: 95141 Bus error: 10           "$@" > $log_file 2>&1
../../test-driver: line 107: 95142 Bus error: 10           "$@" > $log_file 2>&1
FAIL: t-inv_div_qr
FAIL: t-inv_div_qr_n
../../test-driver: line 107: 95174 Bus error: 10           "$@" > $log_file 2>&1
FAIL: t-inv_divappr_q
../../test-driver: line 107: 95199 Bus error: 10           "$@" > $log_file 2>&1
../../test-driver: line 107: 95198 Bus error: 10           "$@" > $log_file 2>&1
FAIL: t-invert
FAIL: t-inv_divappr_q_n
PASS: t-iord_u
../../test-driver: line 107: 95255 Bus error: 10           "$@" > $log_file 2>&1
FAIL: t-matrix22
PASS: t-mp_bases
../../test-driver: line 107: 95307 Bus error: 10           "$@" > $log_file 2>&1
FAIL: t-mullow_basecase
../../test-driver: line 107: 95326 Bus error: 10           "$@" > $log_file 2>&1
FAIL: t-mullowhigh
../../test-driver: line 107: 95364 Bus error: 10           "$@" > $log_file 2>&1
FAIL: t-mulmod_2expm1
PASS: t-lorrshift1
../../test-driver: line 107: 95383 Bus error: 10           "$@" > $log_file 2>&1
FAIL: t-mulmod_2expp1
../../test-driver: line 107: 95345 Bus error: 10           "$@" > $log_file 2>&1
FAIL: t-mulmid
PASS: t-perfsqr
../../test-driver: line 107: 95441 Bus error: 10           "$@" > $log_file 2>&1
FAIL: t-redc_1
PASS: t-neg
../../test-driver: line 107: 95455 Bus error: 10           "$@" > $log_file 2>&1
FAIL: t-sb_bdiv_q
../../test-driver: line 107: 95479 Bus error: 10           "$@" > $log_file 2>&1
FAIL: t-sb_bdiv_qr
../../test-driver: line 107: 95495 Bus error: 10           "$@" > $log_file 2>&1
FAIL: t-sb_div_q
../../test-driver: line 107: 95499 Bus error: 10           "$@" > $log_file 2>&1
FAIL: t-sb_div_qr
../../test-driver: line 107: 95536 Bus error: 10           "$@" > $log_file 2>&1
FAIL: t-sb_divappr_q
PASS: t-scan
../../test-driver: line 107: 95558 Segmentation fault: 11  "$@" > $log_file 2>&1
FAIL: t-sizeinbase
PASS: t-subadd_n
../../test-driver: line 107: 95609 Bus error: 10           "$@" > $log_file 2>&1
FAIL: t-tdiv_q
../../test-driver: line 107: 95614 Bus error: 10           "$@" > $log_file 2>&1
FAIL: t-tdiv_qr
PASS: st_fat
PASS: st_instrument

Happy to upload the log but I couldn't find it...

dimpase commented 6 years ago
comment:34

Could we get the ./configure log?

roed314 commented 6 years ago
comment:35

I get similar errors; my log is at http://www.pitt.edu/~roed/config_24085.log

AndrewMathas commented 6 years ago

Attachment: config.log

Log file for failed build

dimpase commented 6 years ago
comment:36

Please try the latest updates: do git pull in the mpir git repo, then make distclean followed by ./autogen.sh etc.

roed314 commented 6 years ago
comment:37

Still similar looking failures. I've uploaded the new log to http://www.pitt.edu/~roed/config_24085_2.log

roed314 commented 6 years ago
comment:38

The test output is

/Library/Developer/CommandLineTools/usr/bin/make  check-TESTS
../../test-driver: line 107: 31065 Bus error: 10           "$@" > $log_file 2>&1
PASS: t-asmtype
FAIL: t-dc_bdiv_q
PASS: t-aors_1
../../test-driver: line 107: 31068 Bus error: 10           "$@" > $log_file 2>&1
PASS: t-addsub_n
FAIL: t-dc_bdiv_q_n
../../test-driver: line 107: 31067 Bus error: 10           "$@" > $log_file 2>&1
../../test-driver: line 107: 31069 Bus error: 10           "$@" > $log_file 2>&1
FAIL: t-dc_bdiv_qr
FAIL: t-dc_bdiv_qr_n
PASS: t-addadd_n
../../test-driver: line 107: 31217 Bus error: 10           "$@" > $log_file 2>&1
../../test-driver: line 107: 31214 Bus error: 10           "$@" > $log_file 2>&1
../../test-driver: line 107: 31218 Bus error: 10           "$@" > $log_file 2>&1
FAIL: t-dc_div_qr
FAIL: t-dc_div_qr_n
FAIL: t-dc_divappr_q
../../test-driver: line 107: 31215 Bus error: 10           "$@" > $log_file 2>&1
FAIL: t-dc_div_q
PASS: t-divebyff
PASS: t-divrem_1
../../test-driver: line 107: 31225 Bus error: 10           "$@" > $log_file 2>&1
FAIL: t-fat
../../test-driver: line 107: 31352 Bus error: 10           "$@" > $log_file 2>&1
PASS: t-instrument
../../test-driver: line 107: 31350 Bus error: 10           "$@" > $log_file 2>&1
../../test-driver: line 107: 31346 Bus error: 10           "$@" > $log_file 2>&1
FAIL: t-inv_div_q
FAIL: t-hgcd
FAIL: t-gcdext
PASS: t-get_d
PASS: t-divebyfobm1
../../test-driver: line 107: 31423 Bus error: 10           "$@" > $log_file 2>&1
FAIL: t-inv_div_qr
../../test-driver: line 107: 31442 Bus error: 10           "$@" > $log_file 2>&1
FAIL: t-inv_div_qr_n
../../test-driver: line 107: 31480 Bus error: 10           "$@" > $log_file 2>&1
FAIL: t-inv_divappr_q
../../test-driver: line 107: 31484 Bus error: 10           "$@" > $log_file 2>&1
../../test-driver: line 107: 31482 Bus error: 10           "$@" > $log_file 2>&1
PASS: t-iord_u
FAIL: t-invert
FAIL: t-inv_divappr_q_n
../../test-driver: line 107: 31489 Bus error: 10           "$@" > $log_file 2>&1
FAIL: t-matrix22
PASS: t-mp_bases
../../test-driver: line 107: 31591 Bus error: 10           "$@" > $log_file 2>&1
FAIL: t-mullow_basecase
../../test-driver: line 107: 31628 Bus error: 10           "$@" > $log_file 2>&1
FAIL: t-mullowhigh
../../test-driver: line 107: 31632 Bus error: 10           "$@" > $log_file 2>&1
FAIL: t-mulmod_2expm1
PASS: t-perfsqr
../../test-driver: line 107: 31709 Bus error: 10           "$@" > $log_file 2>&1
FAIL: t-redc_1
../../test-driver: line 107: 31730 Bus error: 10           "$@" > $log_file 2>&1
FAIL: t-sb_bdiv_q
../../test-driver: line 107: 31750 Bus error: 10           "$@" > $log_file 2>&1
FAIL: t-sb_bdiv_qr
../../test-driver: line 107: 31762 Bus error: 10           "$@" > $log_file 2>&1
FAIL: t-sb_div_q
../../test-driver: line 107: 31781 Bus error: 10           "$@" > $log_file 2>&1
FAIL: t-sb_div_qr
../../test-driver: line 107: 31806 Bus error: 10           "$@" > $log_file 2>&1
FAIL: t-sb_divappr_q
PASS: t-scan
PASS: t-neg
../../test-driver: line 107: 31839 Segmentation fault: 11  "$@" > $log_file 2>&1
FAIL: t-sizeinbase
PASS: t-subadd_n
PASS: st_fat
PASS: st_instrument
../../test-driver: line 107: 31881 Bus error: 10           "$@" > $log_file 2>&1
FAIL: t-tdiv_q
../../test-driver: line 107: 31907 Bus error: 10           "$@" > $log_file 2>&1
FAIL: t-tdiv_qr
../../test-driver: line 107: 31631 Bus error: 10           "$@" > $log_file 2>&1
FAIL: t-mulmid
../../test-driver: line 107: 31933 Bus error: 10           "$@" > $log_file 2>&1
FAIL: t-mulmod_2expp1
PASS: t-lorrshift1
============================================================================
Testsuite summary for MPIR 3.0.0
============================================================================
# TOTAL: 50
# PASS:  18
# SKIP:  0
# XFAIL: 0
# FAIL:  32
# XPASS: 0
# ERROR: 0
============================================================================
See tests/mpn/test-suite.log
Please report to http://groups.google.co.uk/group/mpir-devel/
============================================================================
make[5]: *** [test-suite.log] Error 1
make[4]: *** [check-TESTS] Error 2
make[3]: *** [check-am] Error 2
make[2]: *** [check-recursive] Error 1
make[1]: *** [check-recursive] Error 1
make: *** [check] Error 2
dimpase commented 6 years ago
comment:39

OK, I give up on trying to fix the assembler code there. This needs debugging on an actual box.

dimpase commented 6 years ago
comment:40

OK, please try the latest https://github.com/dimpase/mpir

this commit should hopefully suffice.