mirror of
https://github.com/boostorg/atomic.git
synced 2026-01-19 16:12:09 +00:00
ARM64EC is similar to ARM64 in that the binary will run natively on ARM64 CPUs and therefore supports all ARM64 intrinsics. The difference is that it also supports AMD64 intrinsics (and therefore defines _M_AMD64 and _M_X64), which will be emulated by an implicitly linked library. ARM64EC also changes ABI compared to ARM64, but it doesn't affect Boost.Atomic. Changed predefined macro checks in order to use msvc_arm backend for ARM64EC instead of msvc_x86. The benefit is that msvc_arm uses memory order-aware intrinsics instead of the full-fence ones on x86. The downside is that 128-bit atomics won't be available (for now). Also define BOOST_ATOMIC_DETAIL_INT_FP_ENDIAN_MATCH for ARM/ARM64 on Windows.
9.2 KiB
9.2 KiB