`atomic_copy64` for {bsd,linux}-zero are defined in atomicAccess_{bsd,linux}_zero.hpp and used in os_{bsd,linux}_zero.cpp. Other (non-zero) platform definitions of `atomic_copy64` are defined in their respective os_{os}_{arch}.cpp files, where the only uses are located. It would be better of the zero platfors were consistent with the others.
On the other hand, we have, for some time, required all platforms to support atomic load/store of 64bit values. As a result, all definitions of atomic_copy64 are essentially equivalent to `AtomicAccess::store((int64_t*)dst, AtomicAccess::load((int64_t*)src))`
Maybe we should just delete all definitions of `atomic_copy64` and use that formulation instead.
On the other hand, we have, for some time, required all platforms to support atomic load/store of 64bit values. As a result, all definitions of atomic_copy64 are essentially equivalent to `AtomicAccess::store((int64_t*)dst, AtomicAccess::load((int64_t*)src))`
Maybe we should just delete all definitions of `atomic_copy64` and use that formulation instead.