From owner-cvs-src@FreeBSD.ORG Sun Oct 28 08:54:55 2007 Return-Path: Delivered-To: cvs-src@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 1545716A46C for ; Sun, 28 Oct 2007 08:54:55 +0000 (UTC) (envelope-from grafan@gmail.com) Received: from fk-out-0910.google.com (fk-out-0910.google.com [209.85.128.185]) by mx1.freebsd.org (Postfix) with ESMTP id 4A79913C491 for ; Sun, 28 Oct 2007 08:54:54 +0000 (UTC) (envelope-from grafan@gmail.com) Received: by fk-out-0910.google.com with SMTP id b27so1739535fka for ; Sun, 28 Oct 2007 01:54:53 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=beta; h=domainkey-signature:received:received:message-id:date:from:to:subject:in-reply-to:mime-version:content-type:content-transfer-encoding:content-disposition:references; bh=GDov1hMEFCgzsknK/g8v8DPZT25/1uBMjz9e1leslxw=; b=AwaIuAT9CiW68Fn9NQ0Px8clcHhXJ2ADaBp1FMATh5mHZjZjGN+A/DHoBIX4KtCbtScP2WI9IpL8bvyjNMjAuB7eo6brOdjM6ErhP9xbhbGgyrgCB0kcADxWFKvrbUzQT3xzNs18eJ0zXjlp6+En+sIN3sjFqzcsaNRGP5TJ7n0= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=beta; h=received:message-id:date:from:to:subject:in-reply-to:mime-version:content-type:content-transfer-encoding:content-disposition:references; b=dAlM2lG7hGeAoYIIGz0onPE8K0c3dNCnll7D3loHRnLH3m/WtzhZzaeZC93CkID7lrMNJ0xw8qSpzgQY6EiXelioibZwtgRhfJekPp7/MyboL4YAlHlt5DWU3yB2ECCh0mQfzrzqRk3pAjrGAx84/4W/7ndK6ebEc+QUSP1uzA8= Received: by 10.82.175.17 with SMTP id x17mr8631823bue.1193561692719; Sun, 28 Oct 2007 01:54:52 -0700 (PDT) Received: by 10.82.113.14 with HTTP; Sun, 28 Oct 2007 01:54:52 -0700 (PDT) Message-ID: <6eb82e0710280154h68393dcag4e9ba4ac4c219065@mail.gmail.com> Date: Sun, 28 Oct 2007 16:54:52 +0800 From: "Rong-en Fan" To: "Andrey Chernov" , "Scott Long" , "John Baldwin" , src-committers@freebsd.org, d@delphij.net, "Robert Watson" , imp@freebsd.org, cvs-src@freebsd.org In-Reply-To: <20071027092213.GA53271@nagual.pp.ru> MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit Content-Disposition: inline References: <200710150951.l9F9pUm7026506@repoman.freebsd.org> <20071025233536.B99770@fledge.watson.org> <472120E8.90504@samsco.org> <200710261144.34645.jhb@freebsd.org> <472217C2.8020800@samsco.org> <6eb82e0710260954m73b3f17bq2c72a4cdb597640e@mail.gmail.com> <6eb82e0710270130o5557efew95f62aef8035d209@mail.gmail.com> <20071027092213.GA53271@nagual.pp.ru> Cc: Subject: Re: cvs commit: src/lib/libc/locale utf8.c X-BeenThere: cvs-src@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: CVS commit messages for the src tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 28 Oct 2007 08:54:55 -0000 On 10/27/07, Andrey Chernov wrote: > On Sat, Oct 27, 2007 at 04:30:30PM +0800, Rong-en Fan wrote: > > On 10/27/07, Rong-en Fan wrote: > > [...] > > > I admit that I really did a very bad abi damage on libc. I have been > > > working on it and > > > removing those inline __* functions in _ctype.h help. It can be upgraded and > > > also downgraded without problems. Without those inline stuffs, > > > buildworld+installworld > > > time difference is less than 60 seconds, which looks good. I will post the > > > patch after some more tests. > > > > > > As for RELENG_7 and HEAD, I'm not 100% sure whether we should restore > > > the compatibility as 1) 7.0 is not released yet, 2) we don't promise > > > anything in > > > HEAD branch. However, if most people think get rid of inline stuffs and > > > have libc compatibility are nice, then we do the same for those two branches. > > > > After some tests, the patch is at > > > > http://people.freebsd.org/~rafan/ctype-abi-fix-6.diff > > > > Let me describe this patch in more details. Fist, we actually > > compile those inline functions as real functions in > > lib/libc/locale/nomacro.c if _EXTERNAL_CTYPE_INLINES_ is defined. > > I make 4 inline functions that use the __mb_sb_limit symbol, > > which break the compatibility, always compiled as real functions. > > I also considered that moving those inlined function in another > > C file, but I think it would make the source codes diverse > > among 6 and 7/8. > > As a small improvement, we can skip __isctype() from this list too and > just hardcode 128 there, i.e.: return (_c < 0 || _c >= 128) ... > since default locale never define anything above 128. Thank you. A new patch is available at http://people.freebsd.org/~rafan/ctype-abi-fix-6-try2.diff Regards, Rong-En Fan