Added some fences to prevent compiler reordering, and a rudimentary volatile version of ptr::copy_nonoverlapping. Unfortunately this thing is probably a bit less efficient than the standard library version which uses a nice LLVM intrinsic, but Rust doesn't expose the volatile flag of that intrinsic as a stable function currently.
Related to issue #4.
Added some fences to prevent compiler reordering, and a rudimentary volatile version of
ptr::copy_nonoverlapping
. Unfortunately this thing is probably a bit less efficient than the standard library version which uses a nice LLVM intrinsic, but Rust doesn't expose the volatile flag of that intrinsic as a stable function currently.