MFC r311169,r311898,r312925,r312973,r312975,r313007,r313040,r313080,
r313254,r313341
amd64: add atomic_fcmpset
sparc64: add atomic_fcmpset
Implement atomic_fcmpset_* for arm and arm64.
Add atomic_fcmpset_*() inlines for powerpc
Summary:
atomic_fcmpset_*() is analogous to atomic_cmpset(), but saves off the read value
from the target memory location into the 'old' pointer in the case of failure.
i386: add atomic_fcmpset
Don't retry a lost reservation in atomic_fcmpset()
The desired behavior of atomic_fcmpset_() is to always exit on error. Instead
of retrying on lost reservation, leave the retry to the caller, and return
Add atomic_fcmpset_*() inlines for MIPS
atomic_fcmpset_*() is analogous to atomic_cmpset(), but saves off the
read value from the target memory location into the 'old' pointer.
i386: fixup fcmpset
An incorrect output specifier was used which worked with clang by accident,
but breaks with the in-tree gcc version.
While here plug a whitespace nit.
Implement atomic_fcmpset_*() for RISC-V.
Use 64bit store instruction in atomic_fcmpset_64.