Date: Fri, 6 Oct 2000 14:27:37 +1100 (EST) From: Bruce Evans <bde@zeta.org.au> To: John Baldwin <jhb@FreeBSD.org> Cc: Mike Smith <msmith@FreeBSD.org>, cvs-all@FreeBSD.org, cvs-committers@FreeBSD.org Subject: Re: cvs commit: src/sys/alpha/include atomic.h src/sys/i386/incl Message-ID: <Pine.BSF.4.21.0010061413500.1789-100000@besplex.bde.org> In-Reply-To: <XFMail.001005163400.jhb@FreeBSD.org>
next in thread | previous in thread | raw e-mail | index | archive | help
On Thu, 5 Oct 2000, John Baldwin wrote: > On 05-Oct-00 Mike Smith wrote: > >> jhb 2000/10/05 15:19:50 PDT > >> > >> Modified files: > >> sys/alpha/include atomic.h > >> sys/i386/include atomic.h > >> Log: > >> Add atomic_readandclear_int and atomic_readandclear_long. > > > > Um, isn't this just exchange-with-zero? > > That's one way of implementing it, yes. That is not the method used by the > alpha, however. I chose the name due to prior existence. The alpha > already had an atomic_readandclear_int, albeit buried in the ipl code. > The x86 had a similar loadandclear() in cpufunc.h It should be named loadandclear(). "load" is more precise than "read". The instruction to do the load is even named "ld" on alphas. I will remove the suffixes on the atomic functions soon. It should go without saying that operations like load and clear, test and set, and compare and swap, etc., are atomic. Bruce To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe cvs-all" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?Pine.BSF.4.21.0010061413500.1789-100000>