Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 3 Dec 2015 09:03:32 -0800
From:      Nathan Whitehorn <nwhitehorn@freebsd.org>
To:        Konstantin Belousov <kostikbel@gmail.com>
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:  <566075E4.8090202@freebsd.org>
In-Reply-To: <566062EB.7070200@freebsd.org>
References:  <201512030006.tB306xTa074887@repo.freebsd.org> <20151203085028.GH2405@kib.kiev.ua> <566062EB.7070200@freebsd.org>

next in thread | previous in thread | raw e-mail | index | archive | help


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?
-Nathan



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