From 1cdb618269eba816d8f9ca253a100b690693f709 Mon Sep 17 00:00:00 2001 From: Warner Losh Date: Tue, 25 Aug 2015 17:11:49 +0000 Subject: [PATCH] Add softfp to MACHINE_CPU more often when we're compiling for soft float targets. It is added for booke on powerpc and all arm with hf in the string. Also add arm to all arm builds and armv6 to armv6 and newer builds. PR: 202641 --- share/mk/bsd.cpu.mk | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) diff --git a/share/mk/bsd.cpu.mk b/share/mk/bsd.cpu.mk index 60f775f85c8..f9710436b34 100644 --- a/share/mk/bsd.cpu.mk +++ b/share/mk/bsd.cpu.mk @@ -150,6 +150,7 @@ _CPUCFLAGS = -mcpu=ultrasparc3 # unordered list to make it easy for client makefiles to test for the # presence of a CPU feature. +########## i386 . if ${MACHINE_CPUARCH} == "i386" . if ${CPUTYPE} == "bdver4" MACHINE_CPU = xop avx2 avx sse42 sse41 ssse3 sse4a sse3 sse2 sse mmx k6 k5 i586 @@ -218,6 +219,7 @@ MACHINE_CPU = 3dnow mmx MACHINE_CPU = mmx . endif MACHINE_CPU += i486 +########## amd64 . elif ${MACHINE_CPUARCH} == "amd64" . if ${CPUTYPE} == "bdver4" MACHINE_CPU = xop avx2 avx sse42 sse41 ssse3 sse4a sse3 @@ -253,10 +255,12 @@ MACHINE_CPU = ssse3 sse3 MACHINE_CPU = sse3 . endif MACHINE_CPU += amd64 sse2 sse mmx +########## powerpc . elif ${MACHINE_ARCH} == "powerpc" . if ${CPUTYPE} == "e500" -MACHINE_CPU = booke +MACHINE_CPU = booke softfp . endif +########## sparc64 . elif ${MACHINE_ARCH} == "sparc64" . if ${CPUTYPE} == "v9" MACHINE_CPU = v9 @@ -272,11 +276,21 @@ MACHINE_CPU = v9 ultrasparc ultrasparc3 CFLAGS += -G0 .endif +########## arm +.if ${MACHINE_CPUARCH} == "arm" +MACHINE_CPU += arm +. if ${MACHINE_ARCH:Marmv6*} != "" +MACHINE_CPU += armv6 +. endif +. if ${MACHINE_ARCH:M*hf} == "" +MACHINE_CPU += softfp +. endif .if ${MACHINE_ARCH} == "armv6" # Needs to be CFLAGS not _CPUCFLAGS because it's needed for the ABI # not a nice optimization. CFLAGS += -mfloat-abi=softfp .endif +.endif # NB: COPTFLAGS is handled in /usr/src/sys/conf/kern.pre.mk