gnu/149712: [build] [make.conf] -fno-builtin in CFLAGS will cause gcc to segfault

Alexander Best arundel at FreeBSD.org
Mon Aug 16 18:10:04 UTC 2010


>Number:         149712
>Category:       gnu
>Synopsis:       [build] [make.conf] -fno-builtin in CFLAGS will cause gcc to segfault
>Confidential:   no
>Severity:       critical
>Priority:       high
>Responsible:    freebsd-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          sw-bug
>Submitter-Id:   current-users
>Arrival-Date:   Mon Aug 16 18:10:04 UTC 2010
>Closed-Date:
>Last-Modified:
>Originator:     Alexander Best
>Release:        9.0-CURRENT
>Organization:
>Environment:
FreeBSD otaku 9.0-CURRENT FreeBSD 9.0-CURRENT #1 r211163M: Wed Aug 11 11:34:06 CEST 2010     root at otaku:/usr/obj/usr/src/sys/ARUNDEL  amd64
>Description:
with the following in my make.conf


CPUTYPE = native
COPTFLAGS = -O0 -pipe -fno-builtin -fno-strict-aliasing -funroll-loops
CFLAGS = -O2 -pipe -fno-strict-aliasing -funroll-loops -fno-builtin
CXXFLAGS += -fconserve-space


buildworld will fail:


--------------------------------------------------------------
>How-To-Repeat:
cd /usr/src && make buildworld

(with CFLAGS = -O2 -pipe -fno-strict-aliasing -funroll-loops -fno-builtin)
>Fix:


>Release-Note:
>Audit-Trail:
>Unformatted:
 >>> stage 4.2: building libraries
 --------------------------------------------------------------
 cd /usr/src;  MAKEOBJDIRPREFIX=/usr/obj  MACHINE_ARCH=amd64  MACHINE=amd64  CPUTYPE=native  GROFF_BIN_PATH=/usr/obj/usr/src/tmp/legacy/usr/bin  GROFF_FONT_PATH=/usr/obj/usr/src/tmp/legacy/usr/share/groff_font  GROFF_TMAC_PATH=/usr/obj/usr/src/tmp/legacy/ usr/share/tmac  _SHLIBDIRPREFIX=/usr/obj/usr/src/tmp  VERSION="FreeBSD 9.0-CURRENT amd64 900016"  INSTALL="sh /usr/src/tools/install.sh"  PATH=/usr/obj/usr/src/tmp/legacy/usr/sbin:/usr/obj/usr/src/tmp/legacy/usr/bin:/usr/obj/usr/src/tmp/legacy/usr/games: /usr/obj/usr/src/tmp/usr/sbin:/usr/obj/usr/src/tmp/usr/bin:/usr/obj/usr/src/tmp/usr/games:/sbin:/bin:/usr/sbin:/usr/bin NO_CTF=1 /usr/obj/usr/src/make.amd64/make -f Makefile.inc1 DESTDIR=/usr/obj/usr/src/tmp -DNO_FSCHG -DWITHOUT_HTML -DWITHOUT_INFO -DNO_ LINT  -DWITHOUT_MAN -DWITHOUT_PROFILE libraries
 cd /usr/src;  /usr/obj/usr/src/make.amd64/make -f Makefile.inc1 _prereq_libs;  /usr/obj/usr/src/make.amd64/make -f Makefile.inc1 _startup_libs;  /usr/obj/usr/src/make.amd64/make -f Makefile.inc1 _prebuild_libs;  /usr/obj/usr/src/make.amd64/make -f Makefi le.inc1 _generic_libs;
 ===> gnu/lib/libssp/libssp_nonshared (obj,depend,all,install)
 rm -f .depend
 mkdep -f .depend -a    -DHAVE_CONFIG_H -I/usr/src/gnu/lib/libssp/libssp_nonshared/.. -I/usr/src/gnu/lib/libssp/libssp_nonshared/../../../../contrib/gcclibs/libssp -I/usr/src/gnu/lib/libssp/libssp_nonshared/../../../../contrib/gcclibs/include -DPIC /usr/s rc/gnu/lib/libssp/libssp_nonshared/../../../../contrib/gcclibs/libssp/ssp-local.c
 cc -O2 -pipe -fno-strict-aliasing -funroll-loops -fno-builtin -march=native -DHAVE_CONFIG_H -I/usr/src/gnu/lib/libssp/libssp_nonshared/..  -I/usr/src/gnu/lib/libssp/libssp_nonshared/../../../../contrib/gcclibs/libssp  -I/usr/src/gnu/lib/libssp/libssp_non shared/../../../../contrib/gcclibs/include -fPIC -DPIC -fvisibility=hidden -g -std=gnu99 -fstack-protector  -c /usr/src/gnu/lib/libssp/libssp_nonshared/../../../../contrib/gcclibs/libssp/ssp-local.c
 *** Signal 11
 
 Stop in /usr/src/gnu/lib/libssp/libssp_nonshared.
 *** Error code 1
 
 Stop in /usr/src.
 *** Error code 1
 
 Stop in /usr/src.
 *** Error code 1
 
 Stop in /usr/src.
 *** Error code 1
 
 Stop in /usr/src.
 
 
 with the following changes to make.conf buildworld succeeds:
 
 
 --- make.conf-failure	2010-08-16 14:55:31.000000000 +0200
 +++ make.conf	2010-08-16 16:04:21.000000000 +0200
 @@ -17,7 +17,7 @@
  # compiler flags
  CPUTYPE = native
  COPTFLAGS = -O0 -pipe -fno-builtin -fno-strict-aliasing -funroll-loops
 -CFLAGS = -O2 -pipe -fno-strict-aliasing -funroll-loops -fno-builtin
 +CFLAGS = -O2 -pipe -fno-strict-aliasing -funroll-loops #-fno-builtin
  CXXFLAGS += -fconserve-space
 
 
 this issue has been discussed beforehand in [1].
 
 cheers.
 alex
 
 [1] http://www.mail-archive.com/freebsd-current@freebsd.org/msg67668.html


More information about the freebsd-bugs mailing list