title: How do I atomically move a 64bit value in x86 ASM?
body: <p>First, I found this question: <a href="https://stackoverflow.com/questions/3349859/how-do-i-atomically-read-a-value-in-x86-asm">How do I atomically read a value in x86 ASM?</a>
  But its a bit different, in my case I want to atomically assign a float (64bit double) value in a 32bit application.</p>
  <p>From: &quot;Intel® 64 and IA-32 ArchitecturesSoftware Developer’s Manual, Volume3A&quot;</p>
  <blockquote>
  <p>The Pentium processor (and newer processors since) guarantees that the following additional memory operations will always be carried out atomically:</p>
  <p>Reading or writing a quadword aligned on a 64-bit boundary</p>
  </blockquote>
  <p>Is it actually possible using some assembly trick?</p>