Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 3 Dec 2015 19:14:10 +0200
From:      Konstantin Belousov <kostikbel@gmail.com>
To:        Nathan Whitehorn <nwhitehorn@freebsd.org>
Cc:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org
Subject:   Re: svn commit: r291666 - head/libexec/rtld-elf
Message-ID:  <20151203171410.GL2405@kib.kiev.ua>
In-Reply-To: <566075E4.8090202@freebsd.org>
References:  <201512030006.tB306xTa074887@repo.freebsd.org> <20151203085028.GH2405@kib.kiev.ua> <566062EB.7070200@freebsd.org> <566075E4.8090202@freebsd.org>

next in thread | previous in thread | raw e-mail | index | archive | help
On Thu, Dec 03, 2015 at 09:03:32AM -0800, Nathan Whitehorn wrote:
> 
> 
> On 12/03/15 07:42, Nathan Whitehorn wrote:
> >
> >
> > On 12/03/15 00:50, Konstantin Belousov wrote:
> >> On Thu, Dec 03, 2015 at 12:06:59AM +0000, Nathan Whitehorn wrote:
> >>> Author: nwhitehorn
> >>> Date: Thu Dec  3 00:06:59 2015
> >>> New Revision: 291666
> >>> URL: https://svnweb.freebsd.org/changeset/base/291666
> >>>
> >>> Log:
> >>>    Fix build on GCC 5.2 where, at least on PPC64, the compiler would 
> >>> "optimize"
> >>>    the malloc() + memset() in the local implementation of calloc() 
> >>> into a call
> >>>    to calloc(), helpfully turning it into an infinite loop. Clean up 
> >>> some
> >>>    unneeded flags on PPC64 while here.
> >>>       MFC after:    1 month
> >>>
> >>> Modified:
> >>>    head/libexec/rtld-elf/Makefile
> >>>
> >>> Modified: head/libexec/rtld-elf/Makefile
> >>> ============================================================================== 
> >>>
> >>> --- head/libexec/rtld-elf/Makefile    Thu Dec  3 00:02:01 2015    
> >>> (r291665)
> >>> +++ head/libexec/rtld-elf/Makefile    Thu Dec  3 00:06:59 2015    
> >>> (r291666)
> >>> @@ -13,7 +13,7 @@ SRCS=        rtld_start.S \
> >>>           malloc.c xmalloc.c debug.c libmap.c
> >>>   MAN=        rtld.1
> >>>   CSTD?=        gnu99
> >>> -CFLAGS+=    -Wall -DFREEBSD_ELF -DIN_RTLD
> >>> +CFLAGS+=    -Wall -DFREEBSD_ELF -DIN_RTLD -fno-builtin
> >>>   CFLAGS+=    -I${SRCTOP}/lib/csu/common
> >>>   .if exists(${.CURDIR}/${MACHINE_ARCH})
> >>>   RTLD_ARCH=    ${MACHINE_ARCH}
> >>> @@ -22,7 +22,6 @@ RTLD_ARCH=    ${MACHINE_CPUARCH}
> >>>   .endif
> >>>   CFLAGS+=    -I${.CURDIR}/${RTLD_ARCH} -I${.CURDIR}
> >>>   .if ${MACHINE_ARCH} == "powerpc64"
> >>> -CFLAGS+=    -mcall-aixdesc
> >> I wanted to set -ffreestanding for rtld compilation, but considered 
> >> it only
> >> a minor issue.  Could you test this instead of -fno-builtin, please ?
> >>
> >
> > Sure, I'll test it today.
> > -Nathan
> >
> >
> 
> -ffreestanding works just as well for this as -fno-builtin. Would you 
> like to make the change?

Please go ahead.



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