svn commit: r322329 - head/sys/boot/i386/boot2
Ryan Libby
rlibby at FreeBSD.org
Wed Aug 9 20:13:51 UTC 2017
Author: rlibby
Date: Wed Aug 9 20:13:49 2017
New Revision: 322329
URL: https://svnweb.freebsd.org/changeset/base/322329
Log:
i386/boot2: -fno-asynchronous-unwind-tables for gcc
The amd64 build of boot2 was failing with gcc 6.3.0 due to being more
than 1 kB too large. It was apparently generating a .eh_frame section
which was not being removed by objcopy -S. The .eh_frame section seems
to be mandatory per the amd64 ABI, but boot2 is compiled for i386 (uses
-m32), and therefore should be optional in this context. Suppress
generation of .eh_frame with the -fno-asynchronous-unwind-tables flag to
gcc. This saves 1348 bytes (the limit is 7680 bytes).
Reviewed by: dim, imp
Approved by: markj (mentor)
Sponsored by: Dell EMC Isilon
Differential Revision: https://reviews.freebsd.org/D11928
Modified:
head/sys/boot/i386/boot2/Makefile
Modified: head/sys/boot/i386/boot2/Makefile
==============================================================================
--- head/sys/boot/i386/boot2/Makefile Wed Aug 9 19:58:38 2017 (r322328)
+++ head/sys/boot/i386/boot2/Makefile Wed Aug 9 20:13:49 2017 (r322329)
@@ -38,6 +38,7 @@ CFLAGS= -fomit-frame-pointer \
-Winline
CFLAGS.gcc+= -Os \
+ -fno-asynchronous-unwind-tables \
--param max-inline-insns-single=100
.if ${COMPILER_TYPE} == "gcc" && ${COMPILER_VERSION} <= 40201
CFLAGS.gcc+= -mno-align-long-strings
More information about the svn-src-all
mailing list