]> git.proxmox.com Git - wasi-libc.git/blob - libc-top-half/musl/arch/wasm32/atomic_arch.h
Define a_clz_32 for musl so that it doesn't use a software version. (#171)
[wasi-libc.git] / libc-top-half / musl / arch / wasm32 / atomic_arch.h
1 #ifdef _REENTRANT
2 #error "multiple threads not supported in musl yet"
3 #endif
4
5 #define a_barrier() (__sync_synchronize())
6 #define a_cas(p, t, s) (__sync_val_compare_and_swap((p), (t), (s)))
7 #define a_crash() (__builtin_trap())
8 #define a_clz_32 __builtin_clz
9 #define a_clz_64 __builtin_clzll
10 #define a_ctz_32 __builtin_ctz
11 #define a_ctz_64 __builtin_ctzll