Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 17 Sep 2017 21:41:51 +0000 (UTC)
From:      Nathan Whitehorn <nwhitehorn@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-projects@freebsd.org
Subject:   svn commit: r323688 - projects/powernv/conf
Message-ID:  <201709172141.v8HLfpr9072104@repo.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: nwhitehorn
Date: Sun Sep 17 21:41:51 2017
New Revision: 323688
URL: https://svnweb.freebsd.org/changeset/base/323688

Log:
  Turn on ELFv2 kernels by default if we have a capable toolchain (GCC >= 4.9).
  This makes our kernels more Linux-like, which helps with some bootloaders
  (kexec, for instance), and provides some marginal efficiency benefits.
  Clang also supports ELFv2, but in-tree binutils does not, which is a trickier
  combination to gate on.

Modified:
  projects/powernv/conf/kern.mk

Modified: projects/powernv/conf/kern.mk
==============================================================================
--- projects/powernv/conf/kern.mk	Sun Sep 17 20:07:20 2017	(r323687)
+++ projects/powernv/conf/kern.mk	Sun Sep 17 21:41:51 2017	(r323688)
@@ -172,10 +172,15 @@ CFLAGS.gcc+=	-mno-spe
 .endif
 
 #
-# Use dot symbols on powerpc64 to make ddb happy
+# Use dot symbols (or, better, the V2 ELF ABI) on powerpc64 to make
+# DDB happy. ELFv2, if available, has some other efficiency benefits.
 #
 .if ${MACHINE_ARCH} == "powerpc64"
+.if ${COMPILER_VERSION} >= 40900
+CFLAGS.gcc+=	-mabi=elfv2
+.else
 CFLAGS.gcc+=	-mcall-aixdesc
+.endif
 .endif
 
 #



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201709172141.v8HLfpr9072104>