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
_______________________________________________
svn-src-all@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"

Reply via email to