Module Name: src Committed By: dsl Date: Wed Feb 5 18:52:22 UTC 2014
Modified Files: src/sys/arch/amd64/conf: Makefile.amd64 src/sys/arch/i386/conf: Makefile.i386 Log Message: Change the compiler options to explicitly specify: -mno-mmx -mno-sse -mno-avx -mno-80387 -mno-fp-ret-in-387 Since no-sse implies no-sse2 that should ensure that the compiler really doesn't emit any instructions that might trap trying to use the FPU. On amd64 at least some of those are needed to stop the compiler saving the registers to stack on every varargs function. It might be that -mno-sse did that before. To generate a diff of this commit: cvs rdiff -u -r1.42 -r1.43 src/sys/arch/amd64/conf/Makefile.amd64 cvs rdiff -u -r1.179 -r1.180 src/sys/arch/i386/conf/Makefile.i386 Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
Modified files: Index: src/sys/arch/amd64/conf/Makefile.amd64 diff -u src/sys/arch/amd64/conf/Makefile.amd64:1.42 src/sys/arch/amd64/conf/Makefile.amd64:1.43 --- src/sys/arch/amd64/conf/Makefile.amd64:1.42 Wed Jan 15 22:25:22 2014 +++ src/sys/arch/amd64/conf/Makefile.amd64 Wed Feb 5 18:52:22 2014 @@ -1,4 +1,4 @@ -# $NetBSD: Makefile.amd64,v 1.42 2014/01/15 22:25:22 joerg Exp $ +# $NetBSD: Makefile.amd64,v 1.43 2014/02/05 18:52:22 dsl Exp $ # Makefile for NetBSD # @@ -36,7 +36,10 @@ GENASSYM_CONF= ${AMD64}/amd64/genassym.c DEFCOPTS= -O2 CPPFLAGS+= -Damd64 -Dx86_64 CFLAGS+= -mcmodel=kernel -CFLAGS+= -mno-red-zone -mno-sse -mno-sse2 -mno-sse3 +# -mno-sse implies -mno-sse2 (etc) but doesn't stop avx. +CFLAGS+= -mno-red-zone -mno-mmx -mno-sse -mno-avx +# make absolutely sure we don't get x87 registers used as well +CFLAGS+= -mno-80387 -mno-fp-ret-in-387 ## ## (3) libkern and compat Index: src/sys/arch/i386/conf/Makefile.i386 diff -u src/sys/arch/i386/conf/Makefile.i386:1.179 src/sys/arch/i386/conf/Makefile.i386:1.180 --- src/sys/arch/i386/conf/Makefile.i386:1.179 Wed Jan 15 22:25:22 2014 +++ src/sys/arch/i386/conf/Makefile.i386 Wed Feb 5 18:52:22 2014 @@ -1,4 +1,4 @@ -# $NetBSD: Makefile.i386,v 1.179 2014/01/15 22:25:22 joerg Exp $ +# $NetBSD: Makefile.i386,v 1.180 2014/02/05 18:52:22 dsl Exp $ # Makefile for NetBSD # @@ -34,7 +34,9 @@ GENASSYM_CONF= ${I386}/i386/genassym.cf ## (2) compile settings ## CPPFLAGS+= -Di386 -CFLAGS+= -mno-sse -mno-sse2 -mno-sse3 +CFLAGS+= -mno-80387 -mno-fp-ret-in-387 +## no-sse implies no-sse2 but not no-avx +CFLAGS+= -mno-mmx -mno-sse -mno-avx ## ## (3) libkern and compat