Messages in this thread | | | Date | Wed, 18 Jan 2012 08:36:21 -0800 | From | "H. Peter Anvin" <> | Subject | Re: [PATCH 2/2] ix86: atomic64 assembly improvements |
| |
On 01/18/2012 06:24 AM, Jan Beulich wrote: > The cmpxchg8b variants of "set" and "xchg" are really identical, and > hence don't need to be repeated: %ebx and %ecx don't need to be copied > into %eax and %edx respectively (this is only necessary when desiring > to only read the stored value), and the LOCK prefix should also be used > in "set" (other than the comment that is now being removed was saying, > there is - to my knowledge - no *architectural* guarantee that aligned > 64-bit writes would always be carried out atomically).
EWHAT?
It's atomic in the same way a MOV is atomic.
The CPU could, in fact, execute the locked version at all if the unlocked version didn't behave like that.
Unless you have a specific instance where you think this might be violated, please let me know.
-hpa
-- H. Peter Anvin, Intel Open Source Technology Center I work for Intel. I don't speak on their behalf.
| |