From owner-cvs-all@FreeBSD.ORG Fri Jun 13 18:59:08 2003 Return-Path: Delivered-To: cvs-all@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 57F0237B401; Fri, 13 Jun 2003 18:59:08 -0700 (PDT) Received: from smtp01.syd.iprimus.net.au (smtp01.syd.iprimus.net.au [210.50.30.52]) by mx1.FreeBSD.org (Postfix) with ESMTP id B868943F3F; Fri, 13 Jun 2003 18:59:07 -0700 (PDT) (envelope-from tim@robbins.dropbear.id.au) Received: from dilbert.robbins.dropbear.id.au (210.50.251.119) by smtp01.syd.iprimus.net.au (7.0.015) id 3EDD516E002A3E0A; Sat, 14 Jun 2003 11:59:06 +1000 Received: by dilbert.robbins.dropbear.id.au (Postfix, from userid 1000) id C78D2C911; Sat, 14 Jun 2003 11:50:39 +1000 (EST) Date: Sat, 14 Jun 2003 11:50:39 +1000 From: Tim Robbins To: Dag-Erling Smorgrav Message-ID: <20030614115039.A30692@dilbert.robbins.dropbear.id.au> References: <200306132154.h5DLsL4t018474@repoman.freebsd.org> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline User-Agent: Mutt/1.2.5.1i In-Reply-To: ; from des@ofug.org on Sat, Jun 14, 2003 at 12:39:33AM +0200 cc: cvs-src@FreeBSD.org cc: src-committers@FreeBSD.org cc: cvs-all@FreeBSD.org cc: Peter Wemm Subject: Re: cvs commit: src/share/mk bsd.sys.mk X-BeenThere: cvs-all@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: CVS commit messages for the entire tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 14 Jun 2003 01:59:08 -0000 On Sat, Jun 14, 2003 at 12:39:33AM +0200, Dag-Erling Smorgrav wrote: > Peter Wemm writes: > > Log: > > We cannot use c99 on amd64 either due to lack of alloca(). libc:strptime() > > uses alloca() and alloca is impossible to implement as a callable function > > on amd64. It has to be a compiler builtin. Note that the bigger problem > > 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). > and please remove CSTD?=c99 from bsd.sys.mk, it was never intended to > be used that way. I agree. Tim