A crate to help you go wide.
Specifically, this has portable "wide" data types that do their best to be SIMD when possible.
On x86
, x86_64
, wasm32
and aarch64 neon
this is done with explicit intrinsic usage (via safe_arch), and on other architectures this is done by carefully writing functions so that LLVM hopefully does the right thing. When Rust stabilizes more explicit intrinsics then they can go into safe_arch
and then they can get used here.