[MacPorts] #51097: gcc5 -- xgcc internal compiler error: Illegal instruction: 4

MacPorts noreply at macports.org
Thu May 26 03:46:49 PDT 2016


#51097: gcc5 -- xgcc internal compiler error: Illegal instruction: 4
-----------------------+------------------------
  Reporter:  gnwiii@…  |      Owner:  mcalhoun@…
      Type:  defect    |     Status:  assigned
  Priority:  Normal    |  Milestone:
 Component:  ports     |    Version:  2.3.4
Resolution:            |   Keywords:
      Port:  gcc5      |
-----------------------+------------------------

Comment (by gnwiii@…):

 I'm not entirely clear about the "problem".  GMP works on the older system
 when compiled with the "+core2" option or
 when compiled locally (in which case I assume the configuration stage
 correctly identifies the processor and applies appropriate algorithms),
 but the macports binary fails.  Since the macports binary did work on the
 newer iMac, I assume it was built
 on a system similar to the newer iMac.  Are you hoping to create a variant
 that works for both nehalem and skylake?

 gcc-mp-5 works for gmpbench using the "patched" library:

 {{{
     $ port installed gmp\*
     The following ports are currently installed:
       gmp @6.1.0_1
       gmp-patched @6.1.0_1 (active)
 }}}

 {{{
     $ export CC=gcc-mp-5 LIBS='-L/opt/local/lib -lgmp'
 }}}


 {{{
     $ ./runbench
     ***** GMPbench version 0.2 *****
     Using default CFLAGS = "-O3 -fomit-frame-pointer"
     Using CC = "gcc-mp-5" from your environment
     Using LIBS = "-L/opt/local/lib -lgmp" from your environment
     Using compilation command: gcc-mp-5 -O3 -fomit-frame-pointer foo.c -o
 foo -L/opt/local/lib -lgmp
     You may want to override CC, CFLAGS, and LIBS
     Using gmp version: 6.1.0
     Compiling benchmarks
     Running benchmarks (propagated score accuracy exceeds printed
 intermediates)
       Category base
         Program multiply (weight=1)
           GMPbench.base.multiply(128)                         6.22e+07
           GMPbench.base.multiply(512)                        1.413e+07
           GMPbench.base.multiply(8192)                       1.472e+05
           GMPbench.base.multiply(131072)                          2585
           GMPbench.base.multiply(2097152)                         97.4
           GMPbench.base.multiply(128,128)                    6.226e+07
           GMPbench.base.multiply(512,512)                    9.424e+06
           GMPbench.base.multiply(8192,8192)                   9.16e+04
           GMPbench.base.multiply(131072,131072)                   1805
           GMPbench.base.multiply(2097152,2097152)                   64
           GMPbench.base.multiply(15000,10000)                4.836e+04
           GMPbench.base.multiply(20000,10000)                3.804e+04
           GMPbench.base.multiply(30000,10000)                 2.42e+04
           GMPbench.base.multiply(16777216,512)                     360
           GMPbench.base.multiply(16777216,262144)                 15.3
         GMPbench.base.multiply                         32587
         Program divide (weight=1)
           GMPbench.base.divide(8192,32)                      1.302e+06
           GMPbench.base.divide(8192,64)                      1.311e+06
           GMPbench.base.divide(8192,128)                     8.202e+05
           GMPbench.base.divide(8192,4096)                    2.239e+05
           GMPbench.base.divide(131072,65536)                      2390
           GMPbench.base.divide(8388608,4194304)                   13.2
           GMPbench.base.divide(8192,8064)                    1.029e+07
           GMPbench.base.divide(16777216,262144)                   7.47
         GMPbench.base.divide                           30557
         Program gcd (weight=0.5)
           GMPbench.base.gcd(128,128)                         2.688e+06
           GMPbench.base.gcd(512,512)                         2.777e+05
           GMPbench.base.gcd(8192,8192)                            7234
           GMPbench.base.gcd(131072,131072)                         124
           GMPbench.base.gcd(1048576,1048576)                      6.54
         GMPbench.base.gcd                             5349.1
         Program gcdext (weight=0.5)
           GMPbench.base.gcdext(128,128)                      1.233e+06
           GMPbench.base.gcdext(512,512)                      2.307e+05
           GMPbench.base.gcdext(8192,8192)                         5657
           GMPbench.base.gcdext(131072,131072)                     90.4
           GMPbench.base.gcdext(1048576,1048576)                   4.28
         GMPbench.base.gcdext                          3621.2
       GMPbench.base                          16365
       Category app
         Program rsa (weight=1)
           GMPbench.app.rsa(512)                              2.417e+04
           GMPbench.app.rsa(1024)                                  4457
           GMPbench.app.rsa(2048)                                   663
         GMPbench.app.rsa                              4148.9
         Program pi (weight=1)
           GMPbench.app.pi(10000)                                   666
           GMPbench.app.pi(100000)                                 32.9
           GMPbench.app.pi(1000000)                                 1.8
         GMPbench.app.pi                               34.039
       GMPbench.app                           375.8
     GMPbench:         2479.9
 }}}

 {{{
     $ port installed gmp\*
     The following ports are currently installed:
       gmp @6.1.0_1 (active)
       gmp-patched @6.1.0_1
 }}}

 {{{
     $ ./runbench
     ***** GMPbench version 0.2 *****
     Using default CFLAGS = "-O3 -fomit-frame-pointer"
     Using CC = "gcc-mp-5" from your environment
     Using LIBS = "-L/opt/local/lib -lgmp" from your environment
     Using compilation command: gcc-mp-5 -O3 -fomit-frame-pointer foo.c -o
 foo -L/opt/local/lib -lgmp
     You may want to override CC, CFLAGS, and LIBS
     Using gmp version: 6.1.0
     Compiling benchmarks
     Running benchmarks (propagated score accuracy exceeds printed
 intermediates)
       Category base
         Program multiply (weight=1)
           GMPbench.base.multiply(128)                        6.229e+07
           GMPbench.base.multiply(512)                        1.409e+07
           GMPbench.base.multiply(8192)                       1.464e+05
           GMPbench.base.multiply(131072)                          2591
           GMPbench.base.multiply(2097152)                         96.9
           GMPbench.base.multiply(128,128)                     6.22e+07
           GMPbench.base.multiply(512,512)                    9.426e+06
           GMPbench.base.multiply(8192,8192)                  9.599e+04
           GMPbench.base.multiply(131072,131072)                   1874
           GMPbench.base.multiply(2097152,2097152)                   64
           GMPbench.base.multiply(15000,10000)                4.798e+04
           GMPbench.base.multiply(20000,10000)                3.785e+04
           GMPbench.base.multiply(30000,10000)                2.413e+04
           GMPbench.base.multiply(16777216,512)                     356
           GMPbench.base.multiply(16777216,262144)                 15.2
         GMPbench.base.multiply                         32675
         Program divide (weight=1)
           GMPbench.base.divide(8192,32)                      1.303e+06
           GMPbench.base.divide(8192,64)                      1.312e+06
           GMPbench.base.divide(8192,128)                       8.2e+05
           GMPbench.base.divide(8192,4096)                    2.383e+05
           GMPbench.base.divide(131072,65536)                      2439
           GMPbench.base.divide(8388608,4194304)                   13.4
           GMPbench.base.divide(8192,8064)                    1.029e+07
           GMPbench.base.divide(16777216,262144)                   7.52
         GMPbench.base.divide                           30962
         Program gcd (weight=0.5)
           GMPbench.base.gcd(128,128)                         2.264e+06
           GMPbench.base.gcd(512,512)                         2.769e+05
           GMPbench.base.gcd(8192,8192)                            7310
           GMPbench.base.gcd(131072,131072)                         125
           GMPbench.base.gcd(1048576,1048576)                      6.58
         GMPbench.base.gcd                               5191
         Program gcdext (weight=0.5)
           GMPbench.base.gcdext(128,128)                      1.414e+06
           GMPbench.base.gcdext(512,512)                      2.232e+05
           GMPbench.base.gcdext(8192,8192)                         5703
           GMPbench.base.gcdext(131072,131072)                     91.3
           GMPbench.base.gcdext(1048576,1048576)                   4.33
         GMPbench.base.gcdext                          3719.1
       GMPbench.base                          16442
       Category app
         Program rsa (weight=1)
           GMPbench.app.rsa(512)                              2.496e+04
           GMPbench.app.rsa(1024)                                  4692
           GMPbench.app.rsa(2048)                                   700
         GMPbench.app.rsa                              4344.3
         Program pi (weight=1)
           GMPbench.app.pi(10000)                                   668
           GMPbench.app.pi(100000)                                   33
           GMPbench.app.pi(1000000)                                1.81
         GMPbench.app.pi                               34.171
       GMPbench.app                          385.29
     GMPbench:         2517
 }}}

-- 
Ticket URL: <https://trac.macports.org/ticket/51097#comment:13>
MacPorts <https://www.macports.org/>
Ports system for OS X


More information about the macports-tickets mailing list