From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Kevin Ryde Newsgroups: gmane.lisp.guile.user Subject: Re: Fetch-and-store for PowerPC... and more! Date: Thu, 17 Mar 2005 10:26:39 +1100 Message-ID: <87br9j895c.fsf@zip.com.au> References: <87wts8rn7b.fsf@laas.fr> NNTP-Posting-Host: main.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: quoted-printable X-Trace: sea.gmane.org 1111016437 13251 80.91.229.2 (16 Mar 2005 23:40:37 GMT) X-Complaints-To: usenet@sea.gmane.org NNTP-Posting-Date: Wed, 16 Mar 2005 23:40:37 +0000 (UTC) Cc: guile-user@gnu.org Original-X-From: guile-user-bounces+guile-user=m.gmane.org@gnu.org Thu Mar 17 00:40:37 2005 Original-Received: from lists.gnu.org ([199.232.76.165]) by ciao.gmane.org with esmtp (Exim 4.43) id 1DBi7j-000583-DF for guile-user@m.gmane.org; Thu, 17 Mar 2005 00:40:25 +0100 Original-Received: from localhost ([127.0.0.1] helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1DBiNu-0000ag-8k for guile-user@m.gmane.org; Wed, 16 Mar 2005 18:57:06 -0500 Original-Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1DBiKX-0008Ba-Co for guile-user@gnu.org; Wed, 16 Mar 2005 18:53:38 -0500 Original-Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1DBiK8-000860-Jl for guile-user@gnu.org; Wed, 16 Mar 2005 18:53:16 -0500 Original-Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1DBiK6-0007zb-Hd for guile-user@gnu.org; Wed, 16 Mar 2005 18:53:11 -0500 Original-Received: from [61.8.0.85] (helo=mailout2.pacific.net.au) by monty-python.gnu.org with esmtp (Exim 4.34) id 1DBhum-00025E-PJ for guile-user@gnu.org; Wed, 16 Mar 2005 18:27:01 -0500 Original-Received: from mailproxy1.pacific.net.au (mailproxy1.pacific.net.au [61.8.0.86]) by mailout2.pacific.net.au (8.12.3/8.12.3/Debian-7.1) with ESMTP id j2GNQuHn013751; Thu, 17 Mar 2005 10:26:57 +1100 Original-Received: from localhost (ppp2149.dyn.pacific.net.au [61.8.33.73]) by mailproxy1.pacific.net.au (8.12.3/8.12.3/Debian-7.1) with ESMTP id j2GNQqS4026928; Thu, 17 Mar 2005 10:26:54 +1100 Original-Received: from gg by localhost with local (Exim 3.36 #1 (Debian)) id 1DBhuS-0000gm-00; Thu, 17 Mar 2005 10:26:40 +1100 Original-To: ludovic.courtes@laas.fr (Ludovic =?iso-8859-1?Q?Court=E8s?=) In-Reply-To: <87wts8rn7b.fsf@laas.fr> (Ludovic =?iso-8859-1?Q?Court=E8s's?= message of "Wed, 16 Mar 2005 09:48:08 +0100") User-Agent: Gnus/5.110003 (No Gnus v0.3) Emacs/21.3 (gnu/linux) X-BeenThere: guile-user@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: General Guile related discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Original-Sender: guile-user-bounces+guile-user=m.gmane.org@gnu.org Errors-To: guile-user-bounces+guile-user=m.gmane.org@gnu.org X-MailScanner-To: guile-user@m.gmane.org Xref: news.gmane.org gmane.lisp.guile.user:4290 X-Report-Spam: http://spam.gmane.org/gmane.lisp.guile.user:4290 ludovic.courtes@laas.fr (Ludovic Court=E8s) writes: > > The generic > version of `FETCH_STORE' relies on `scm_mutex_lock ()' and > `scm_mutex_unlock ()' which are not (yet) implemented. Actually, they were implemented but then disappeared. Recent breakage :-). > + Note: look > + at the `always_swap ()' function is Glibc's `atomicity.h' in the `sys= deps' > + directory. */ Looks like that's changed in the latest and greatest glibc, now bits/atomic.h and __arch_atomic_whatever(). > +#if defined (__GNUC__) && defined (__powerpc__) && SIZEOF_SCM_T_BITS =3D= =3D 4 > + > +/* On 32-bit PowerPC arches, we use the `lwarx' ("load word and reserve, > + indexed") and `stwcx.' ("store word conditional, indexed") instructio= ns. No need to describe instructions. (But crib notes on the reservation mechanism for single or multi cpus is fine.) > + asm ("\n1:\n" \ I think "1:" is a gas-ism, it might not work on aix and macos. But dunno if guile actually runs at all on those systems at the moment. > + : "=3D&r" (fet) \ > + : "r" (mem), "r" (sto)); \ I think "mem" should be in the outputs too, since it's changed. _______________________________________________ Guile-user mailing list Guile-user@gnu.org http://lists.gnu.org/mailman/listinfo/guile-user