Date: Sat, 14 Jun 2003 00:01:35 -0700 From: Peter Wemm <peter@wemm.org> To: Tim Robbins <tjr@FreeBSD.ORG> Cc: Dag-Erling Smorgrav <des@ofug.org> Subject: Re: cvs commit: src/share/mk bsd.sys.mk Message-ID: <20030614070135.C2AEC2A8C1@canning.wemm.org> In-Reply-To: <20030614115039.A30692@dilbert.robbins.dropbear.id.au>
next in thread | previous in thread | raw e-mail | index | archive | help
Tim Robbins wrote: > On Sat, Jun 14, 2003 at 12:39:33AM +0200, Dag-Erling Smorgrav wrote: > > > Peter Wemm <peter@FreeBSD.org> writes: > > > Log: > > > We cannot use c99 on amd64 either due to lack of alloca(). libc:strpti me() > > > uses alloca() and alloca is impossible to implement as a callable funct ion > > > on amd64. It has to be a compiler builtin. Note that the bigger probl em > > > is that libc is not c99 clean internally. > > > > #define alloca(sz) __builtin_alloca(sz) > > That would be fine in the __GNUC__ >= 2 && __BSD_VISIBLE case. > > For the other cases, I think we should also take the alloca() implementation > from contrib/amd/libamu/alloca.c and throw out lib/libc/i386/gen/alloca.S. > That way we get GCC's fast and conventional alloca() implementation for > !CSTD=c?9 programs, and a slower alloca() that uses the heap and sometimes > leaks memory for CSTD=c?9 programs (and programs that are compiled with > non-GCC compilers without their own alloca() implementation). We really really dont want to use that alloca.c except as an absolute last resort. I mean Really. It is Nasty. I would rather that we removed alloca() entirely from the tree rather than use alloca.c by default for any of our released platforms. I'd even rather have /usr/include/alloca.h with #define alloca(n) __builtin_alloca(n) if there are namespace concerns. Autoconf knows how to look for #include <alloca.h>, FWIW. > > and please remove CSTD?=c99 from bsd.sys.mk, it was never intended to > > be used that way. > > I agree. I think so too, or at the very least use gnu99. Cheers, -Peter -- Peter Wemm - peter@wemm.org; peter@FreeBSD.org; peter@yahoo-inc.com "All of this is for nothing if we don't go to the stars" - JMS/B5
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20030614070135.C2AEC2A8C1>