From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Mike Gran Newsgroups: gmane.lisp.guile.devel Subject: Re: `SCM_MAKE_CHAR ()' signedness issue Date: Mon, 17 Aug 2009 06:05:51 -0700 Message-ID: <1250514351.18373.33.camel@localhost.localdomain> References: <87y6pll21u.fsf@gnu.org> <455025BA-B847-4CE3-A81E-785A48ADD1D3@raeburn.org> <873a7rs8yj.fsf@gnu.org> <3D3E5AEF-F1A0-456C-8652-5F040228F176@raeburn.org> <87fxbq6e2j.fsf@gnu.org> NNTP-Posting-Host: lo.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit X-Trace: ger.gmane.org 1250515220 10284 80.91.229.12 (17 Aug 2009 13:20:20 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Mon, 17 Aug 2009 13:20:20 +0000 (UTC) Cc: guile-devel@gnu.org To: Ludovic =?ISO-8859-1?Q?Court=E8s?= Original-X-From: guile-devel-bounces+guile-devel=m.gmane.org@gnu.org Mon Aug 17 15:20:13 2009 Return-path: Envelope-to: guile-devel@m.gmane.org Original-Received: from lists.gnu.org ([199.232.76.165]) by lo.gmane.org with esmtp (Exim 4.50) id 1Md28D-0002yG-3F for guile-devel@m.gmane.org; Mon, 17 Aug 2009 15:20:13 +0200 Original-Received: from localhost ([127.0.0.1]:42107 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1Md28C-0002v3-Kk for guile-devel@m.gmane.org; Mon, 17 Aug 2009 09:20:12 -0400 Original-Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1Md21K-0000xb-BC for guile-devel@gnu.org; Mon, 17 Aug 2009 09:13:06 -0400 Original-Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1Md21H-0000wz-VM for guile-devel@gnu.org; Mon, 17 Aug 2009 09:13:04 -0400 Original-Received: from [199.232.76.173] (port=35778 helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1Md21G-0000we-Rr for guile-devel@gnu.org; Mon, 17 Aug 2009 09:13:03 -0400 Original-Received: from smtp106.prem.mail.sp1.yahoo.com ([98.136.44.61]:23100) by monty-python.gnu.org with smtp (Exim 4.60) (envelope-from ) id 1Md21F-00051B-R9 for guile-devel@gnu.org; Mon, 17 Aug 2009 09:13:02 -0400 Original-Received: (qmail 67415 invoked from network); 17 Aug 2009 13:06:19 -0000 DomainKey-Signature: a=rsa-sha1; q=dns; c=nofws; s=s1024; d=yahoo.com; h=Received:X-Yahoo-SMTP:X-YMail-OSG:X-Yahoo-Newman-Property:Subject:From:To:Cc:In-Reply-To:References:Content-Type:Date:Message-Id:Mime-Version:X-Mailer:Content-Transfer-Encoding; b=sIQccIqvw/tdVlaomKE3L6V1slaQzYSn/Q4InV294ACDUFqK+E1OA9FfSrE0UvbNdykNPgtTAuA014jSL07Ly51B8cRpoX8vAS8WZZRluFjZRB0dp9TjifhvFFBAtC9fH0ULC37x6pI42JiizPLObTj0kZjn7oWKgvD8yKVOk10= ; Original-Received: from adsl-71-130-213-44.dsl.irvnca.pacbell.net (spk121@71.130.213.44 with plain) by smtp106.prem.mail.sp1.yahoo.com with SMTP; 17 Aug 2009 06:06:19 -0700 PDT X-Yahoo-SMTP: FzNaA9iswBDuBl1BmgaIRDaP9Q-- X-YMail-OSG: ro1rticVM1no3Kk9ckxSeXmztSG0S3ck6X_yjRK2_DeCZFREfH.I.WMxU0S.bhN3qrsxPwYqJjd41lAEoYQekNq0BFuC5Lv_0nYIxxKkjZe4GWKKPi5gOmnwHKacMjRoN6VAbCq_4xj4Xu5GtnzNxeYw8Ibp5J3QF0Ieur4yg1qC8kATWjJh.8hV6iScIr.N2G8389h031qJMBdtWxmzdLwnrMH1kD4NaEdSLAsR8glvHYa3dYAzpXGMjLQWeQrrVfzXmMfiFbTPikFGxijn_YJYNcoJDzFuBSvJiTxYTjgNqmOwI0sCzsL8kVb4dnGoGuUMdH9Age2HYJmFNnrCdgc_3.R5tsiMjpjsF9rPP3hDezhuqU.Q12SDjP4- X-Yahoo-Newman-Property: ymail-3 In-Reply-To: <87fxbq6e2j.fsf@gnu.org> X-Mailer: Evolution 2.24.5 (2.24.5-2.fc10) X-detected-operating-system: by monty-python.gnu.org: FreeBSD 4.7-5.2 (or MacOS X 10.2-10.4) (2) X-BeenThere: guile-devel@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: "Developers list for Guile, the GNU extensibility library" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Original-Sender: guile-devel-bounces+guile-devel=m.gmane.org@gnu.org Errors-To: guile-devel-bounces+guile-devel=m.gmane.org@gnu.org Xref: news.gmane.org gmane.lisp.guile.devel:9137 Archived-At: Hi- On Mon, 2009-08-17 at 10:26 +0200, Ludovic Courtès wrote: > Hi, > > Ken Raeburn writes: > > > On Aug 16, 2009, at 18:13, Ludovic Courtès wrote: > >>> There's always the inline-function approach, too. > >> > >> Unfortunately no, because we're still not assuming `inline' keyword > >> support from the compiler. > > > > Right, but inline.h deals with that; if "inline" isn't supported you > > just get a declaration and make a function call. There would be a > > performance hit from doing the function calls all the time, > > Yes, I'm not sure that's something worth trying. On my system I ran a test with SCM_MAKE_CHAR as a macro, an an inline, and as a never inlined function. I ran ./check-guile twice for each. SCM_MAKE_CHAR as macro, ./check-guile gives real 0m22.680s 0m22.658s user 0m7.700s 0m7.640s sys 0m1.067s 0m1.124s SCM scm_i_make_char (scm_t_int32 x) __attribute__((noinline)) real 0m22.010s 0m21.998s user 0m7.631s 0m7.648s sys 0m1.151s 0m1.076s SCM inline scm_i_make_char (scm_t_int32 x) real 0m22.107s 0m21.914s user 0m7.614s 0m7.726s sys 0m1.115s 0m1.068s The timing differences between them seem to be in the noise, for this one test. Thanks, Mike