Module Name: src
Committed By: joerg
Date: Mon May 11 15:15:15 UTC 2020
Modified Files:
src/sys/arch/amd64/conf: Makefile.amd64
src/sys/arch/i386/conf: Makefile.i386
Log Message:
Fix GCC flags for Spectre mitigation to really only apply to GCC.
To generate a diff of this commit:
cvs rdiff -u -r1.84 -r1.85 src/sys/arch/amd64/conf/Makefile.amd64
cvs rdiff -u -r1.195 -r1.196 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.84 src/sys/arch/amd64/conf/Makefile.amd64:1.85
--- src/sys/arch/amd64/conf/Makefile.amd64:1.84 Sat Apr 25 15:26:16 2020
+++ src/sys/arch/amd64/conf/Makefile.amd64 Mon May 11 15:15:15 2020
@@ -1,4 +1,4 @@
-# $NetBSD: Makefile.amd64,v 1.84 2020/04/25 15:26:16 bouyer Exp $
+# $NetBSD: Makefile.amd64,v 1.85 2020/05/11 15:15:15 joerg Exp $
# Makefile for NetBSD
#
@@ -44,9 +44,9 @@ CFLAGS+= -msoft-float
# For gcc we might need this, but other compilers barf
# CFLAGS+= -mno-fp-ret-in-387
-.if ${SPECTRE_V2_GCC_MITIGATION:U0} > 0 && ${HAVE_GCC:U0} > 0
-CFLAGS+= -mindirect-branch=thunk-inline
-CFLAGS+= -mindirect-branch-register
+.if ${SPECTRE_V2_GCC_MITIGATION:U0} > 0
+CFLAGS+= ${${ACTIVE_CC} == "gcc" :? -mindirect-branch=thunk :}
+CFLAGS+= ${${ACTIVE_CC} == "gcc" :? -mindirect-branch-register :}
.endif
.if ${KASAN:U0} > 0
Index: src/sys/arch/i386/conf/Makefile.i386
diff -u src/sys/arch/i386/conf/Makefile.i386:1.195 src/sys/arch/i386/conf/Makefile.i386:1.196
--- src/sys/arch/i386/conf/Makefile.i386:1.195 Sat Apr 25 15:26:16 2020
+++ src/sys/arch/i386/conf/Makefile.i386 Mon May 11 15:15:15 2020
@@ -1,4 +1,4 @@
-# $NetBSD: Makefile.i386,v 1.195 2020/04/25 15:26:16 bouyer Exp $
+# $NetBSD: Makefile.i386,v 1.196 2020/05/11 15:15:15 joerg Exp $
# Makefile for NetBSD
#
@@ -40,9 +40,9 @@ CFLAGS+= -msoft-float
## no-sse implies no-sse2 but not no-avx
CFLAGS+= -mno-mmx -mno-sse -mno-avx
-.if ${SPECTRE_V2_GCC_MITIGATION:U0} > 0 && ${HAVE_GCC:U0} > 0
-CFLAGS+= -mindirect-branch=thunk
-CFLAGS+= -mindirect-branch-register
+.if ${SPECTRE_V2_GCC_MITIGATION:U0} > 0
+CFLAGS+= ${${ACTIVE_CC} == "gcc" :? -mindirect-branch=thunk :}
+CFLAGS+= ${${ACTIVE_CC} == "gcc" :? -mindirect-branch-register :}
.endif
EXTRA_INCLUDES= -I$S/external/mit/xen-include-public/dist/