Build failure on arm64-windows

Hello, I am a vcpkg maintainer. I got an error when installing libcaer:

The symbol _mm_pause is an instruction of the x86 architecture, which is replaced by _yield on arm64.

https://gitlab.com/inivation/dv/libcaer/-/blob/master/thirdparty/simple-stdatomic/stdatomic.c#L36

I saw the definition of _yield

https://gitlab.com/inivation/dv/libcaer/-/blob/master/src/c11threads_posix.h#L130but

it is not used in stdatomic.c. We need to add conditions or replace it.

OS:windows11

Steps to reproduce:

  1. git clone https://github.com/microsoft/vcpkg
  2. .\bootstrap-vcpkg.bat
  3. ./vcpkg install libcaer:arm64-windows

error log:

stdatomic.c.obj : error LNK2019: unresolved external symbol _mm_pause referenced in function zenny_atomic_fetch_add8

src\caer.dll : fatal error LNK1120: 1 unresolved externals

ninja: build stopped: subcommand failed.

install-arm64-windows-dbg-out.log