When building both lang/gcc44 or lang/gcc45 on amd64 with CPUTYPE=native in /etc/make.conf or -march=native in CFLAGS, the build will break due to the old assembler in base. This does not happen to gcc43 (simply because it is old enough) Fix: Update binutils? How-To-Repeat: cd /usr/ports/lang/gcc45 && make CPUTYPE=native DISABLE_MAKE_JOBS=1 ... /bin/sh ./libtool --tag=CC --mode=compile /usr/obj/usr/ports/lang/gcc45/work/build/./gcc/xgcc -B/usr/obj/usr/ports/lang/gcc45/work/build/./gcc/ -B/usr/local/x86_64-portbld-freebsd8.0/bin/ -B/usr/local/x86_64-portbld-freebsd8.0/lib/ -isystem /usr/local/x86_64-portbld-freebsd8.0/include -isystem /usr/local/x86_64-portbld-freebsd8.0/sys-include -DHAVE_CONFIG_H -I. -I../.././../gcc-4.5-20091119/libgfortran -iquote../.././../gcc-4.5-20091119/libgfortran/io -I../.././../gcc-4.5-20091119/libgfortran/../gcc -I../.././../gcc-4.5-20091119/libgfortran/../gcc/config -I../.././gcc -D_GNU_SOURCE -std=gnu99 -Wall -Wstrict-prototypes -Wmissing-prototypes -Wold-style-definition -Wextra -Wwrite-strings -fcx-fortran-rules -ffunction-sections -fdata-sections -ftree-vectorize -funroll-loops -g -O2 -pipe -march=native -I/usr/local/include -fno-strict-aliasing -MT matmul_i4.lo -MD -MP -MF .deps/matmul_i4.Tpo -c -o matmul_i4.lo `test -f '../.././../gcc-4.5-20091119/libgfortran/generated/ma! tmul_i4.c' || echo '../.././../gcc-4.5-20091119/libgfortran/'`../.././../gcc-4.5-20091119/libgfortran/generated/matmul_i4.c libtool: compile: /usr/obj/usr/ports/lang/gcc45/work/build/./gcc/xgcc -B/usr/obj/usr/ports/lang/gcc45/work/build/./gcc/ -B/usr/local/x86_64-portbld-freebsd8.0/bin/ -B/usr/local/x86_64-portbld-freebsd8.0/lib/ -isystem /usr/local/x86_64-portbld-freebsd8.0/include -isystem /usr/local/x86_64-portbld-freebsd8.0/sys-include -DHAVE_CONFIG_H -I. -I../.././../gcc-4.5-20091119/libgfortran -iquote../.././../gcc-4.5-20091119/libgfortran/io -I../.././../gcc-4.5-20091119/libgfortran/../gcc -I../.././../gcc-4.5-20091119/libgfortran/../gcc/config -I../.././gcc -D_GNU_SOURCE -std=gnu99 -Wall -Wstrict-prototypes -Wmissing-prototypes -Wold-style-definition -Wextra -Wwrite-strings -fcx-fortran-rules -ffunction-sections -fdata-sections -ftree-vectorize -funroll-loops -g -O2 -pipe -march=native -I/usr/local/include -fno-strict-aliasing -MT matmul_i4.lo -MD -MP -MF .deps/matmul_i4.Tpo -c ../.././../gcc-4.5-20091119/libgfortran/generated/matmul_i4.c -fPIC -DPIC -o .libs/matmul_i4.o {standard input}: Assembler messages: {standard input}:1861: Error: no such instruction: `pmulld %xmm0,%xmm5' {standard input}:1885: Error: no such instruction: `pmulld %xmm0,%xmm4' {standard input}:1893: Error: no such instruction: `pmulld %xmm0,%xmm5' {standard input}:1902: Error: no such instruction: `pmulld %xmm0,%xmm6' {standard input}:1911: Error: no such instruction: `pmulld %xmm0,%xmm7' {standard input}:1920: Error: no such instruction: `pmulld %xmm0,%xmm8' {standard input}:1929: Error: no such instruction: `pmulld %xmm0,%xmm9' {standard input}:1938: Error: no such instruction: `pmulld %xmm0,%xmm10' {standard input}:1949: Error: no such instruction: `pmulld %xmm0,%xmm14' {standard input}:1954: Error: no such instruction: `pmulld %xmm0,%xmm13' {standard input}:1959: Error: no such instruction: `pmulld %xmm0,%xmm12' {standard input}:1964: Error: no such instruction: `pmulld %xmm0,%xmm11' {standard input}:1969: Error: no such instruction: `pmulld %xmm0,%xmm10' {standard input}:1974: Error: no such instruction: `pmulld %xmm0,%xmm9' {standard input}:1979: Error: no such instruction: `pmulld %xmm0,%xmm8' {standard input}:1984: Error: no such instruction: `pmulld %xmm0,%xmm7' {standard input}:2219: Error: no such instruction: `pmulld %xmm15,%xmm0' {standard input}:2241: Error: no such instruction: `pmulld %xmm12,%xmm11' {standard input}:2249: Error: no such instruction: `pmulld %xmm14,%xmm13' {standard input}:2257: Error: no such instruction: `pmulld %xmm1,%xmm15' {standard input}:2265: Error: no such instruction: `pmulld %xmm2,%xmm3' {standard input}:2273: Error: no such instruction: `pmulld %xmm5,%xmm4' {standard input}:2281: Error: no such instruction: `pmulld %xmm7,%xmm6' {standard input}:2289: Error: no such instruction: `pmulld %xmm9,%xmm8' {standard input}:2302: Error: no such instruction: `pmulld %xmm1,%xmm15' {standard input}:2319: Error: no such instruction: `pmulld %xmm14,%xmm13' {standard input}:2320: Error: no such instruction: `pmulld %xmm12,%xmm11' {standard input}:2323: Error: no such instruction: `pmulld %xmm10,%xmm9' {standard input}:2326: Error: no such instruction: `pmulld %xmm8,%xmm7' {standard input}:2329: Error: no such instruction: `pmulld %xmm6,%xmm5' {standard input}:2337: Error: no such instruction: `pmulld %xmm4,%xmm3' {standard input}:2341: Error: no such instruction: `pmulld %xmm2,%xmm1' gmake[3]: *** [matmul_i4.lo] Error 1 gmake[3]: Leaving directory `/usr/obj/usr/ports/lang/gcc45/work/build/x86_64-portbld-freebsd8.0/libgfortran' gmake[2]: *** [all] Error 2 gmake[2]: Leaving directory `/usr/obj/usr/ports/lang/gcc45/work/build/x86_64-portbld-freebsd8.0/libgfortran' gmake[1]: *** [all-target-libgfortran] Error 2 gmake[1]: Leaving directory `/usr/obj/usr/ports/lang/gcc45/work/build' gmake: *** [bootstrap-lean] Error 2 *** Error code 1 Stop in /usr/ports/lang/gcc45.
Responsible Changed From-To: freebsd-ports-bugs->gerald Over to maintainer (via the GNATS Auto Assign Tool)
gerald 2009-12-01 11:36:59 UTC FreeBSD ports repository Modified files: lang/gcc45 Makefile Log: Use current GNU binutils from ports (devel/binutils) instead of the system tools. The latter are half a decade old and fail to properly support modern CPUs and their standard features such as SSE or AVX in the case of AMD64/Intel64 which means that they even break when using a simple -march=native. On the way, sort CONFIGURE_ARGS. PR: 140995, 136607 Revision Changes Path 1.416 +9 -5 ports/lang/gcc45/Makefile _______________________________________________ cvs-all@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/cvs-all To unsubscribe, send any mail to "cvs-all-unsubscribe@freebsd.org"
State Changed From-To: open->closed Fixed. Thanks for the report and helping in tracking this down and testing my fix!