These are used when accessing data shared between Xen domains. Initial
testing suggests FreeBSD's atomics are suitable for this, but there is a
bit of uncertainty.
If the atomics are suitable for more platforms, then this header could
be used as architecture-independent. Whereas the existing versions are
very much specialized for their respective architectures.
This was broken off of a "xen/arm64: add xen platform" commit. This
portion seemed a rather distinct part of adding aarch64 support.
Submitted by: Elliott Mitchell <ehem+freebsd@m5p.com>
Original implementation: Julien Grall <julien@xen.org>, 2014-01-13 17:40:58