Date: Fri, 27 Jul 2001 00:30:05 +0200 From: Bernd Walter <ticso@mail.cicely.de> To: Arun Sharma <arun@sharmas.dhs.org> Cc: Bernd Walter <ticso@mail.cicely.de>, hackers@FreeBSD.ORG Subject: Re: Need a clean room implementation of this function Message-ID: <20010727003005.A2726@cicely20.cicely.de> In-Reply-To: <20010726151100.D23264@sharmas.dhs.org>; from arun@sharmas.dhs.org on Thu, Jul 26, 2001 at 03:11:00PM -0700 References: <20010726135913.A23052@sharmas.dhs.org> <20010726231540.A2249@cicely20.cicely.de> <20010726142106.A23171@sharmas.dhs.org> <20010726235927.B2249@cicely20.cicely.de> <20010726151100.D23264@sharmas.dhs.org>
next in thread | previous in thread | raw e-mail | index | archive | help
On Thu, Jul 26, 2001 at 03:11:00PM -0700, Arun Sharma wrote: > On Thu, Jul 26, 2001 at 11:59:27PM +0200, Bernd Walter wrote: > > [...] > > ATOMIC_ASM(set, char, "orb %b2,%0", v) > > ATOMIC_ASM(clear, char, "andb %b2,%0", ~v) > > [...] > > That does set, not test-and-set. What I want is exactly what the Intel > BTS instruction does: atomically test and set a bit. Ops - but as John Baldwin already showed that cmpset/cmpclear are also part of atomic.h Using the atomic.h functions gives you the ability to port it to alpha and other FreeBSD architectures. -- B.Walter COSMO-Project http://www.cosmo-project.de ticso@cicely.de Usergroup info@cosmo-project.de To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-hackers" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20010727003005.A2726>