Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 3 Dec 2015 14:00:40 +0100
From:      Joerg Sonnenberger <joerg@britannica.bec.de>
To:        svn-src-all@freebsd.org
Subject:   Re: svn commit: r291666 - head/libexec/rtld-elf
Message-ID:  <20151203130040.GA8786@britannica.bec.de>
In-Reply-To: <20151203085028.GH2405@kib.kiev.ua>
References:  <201512030006.tB306xTa074887@repo.freebsd.org> <20151203085028.GH2405@kib.kiev.ua>

next in thread | previous in thread | raw e-mail | index | archive | help
On Thu, Dec 03, 2015 at 10:50:28AM +0200, Konstantin Belousov wrote:
> > 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 ?

I don't tthink either should be used -- -fno-builtin is certainly a very
blunt hammer. Are you sure that doesn't disable all kinds of useful
things like optimisations of the string functions etc?

A more selective approach would to add something like:

void *real_malloc(size_t) __asm__("malloc");

and call that. I would call it a bug that -fno-builtin-calloc does not
work.

Joerg



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