Add detection for various aarch64 CPU features already supported by LLVM and Linux. This commit adds feature detection for the following features: - FEAT_CSSC - FEAT_ECV - FEAT_FAMINMAX - FEAT_FLAGM2 - FEAT_FP8 - FEAT_FP8DOT2 - FEAT_FP8DOT4 - FEAT_FP8FMA - FEAT_HBC - FEAT_LSE128 - FEAT_LUT - FEAT_MOPS - FEAT_LRCPC3 - FEAT_SVE_B16B16 - FEAT_SVE2p1 - FEAT_WFxT It also adds feature detection for FEAT_FPMR. It is somewhat of a special case because FPMR only exists as a feature in LLVM 18, it has been removed from the LLVM upstream. On that account the intention is for it to be detectable at runtime through stdarch but not have a corresponding compile-time Rust target feature. Linux features: https://github.com/torvalds/linux/blob/master/arch/arm64/include/uapi/asm/hwcap.h LLVM features: llvm-project/llvm/lib/Target/AArch64/AArch64.td |
||
|---|---|---|
| .. | ||
| .github/workflows | ||
| ci | ||
| crates | ||
| examples | ||
| intrinsics_data | ||
| .cirrus.yml | ||
| .gitignore | ||
| .gitmodules | ||
| Cargo.toml | ||
| CONTRIBUTING.md | ||
| LICENSE-APACHE | ||
| LICENSE-MIT | ||
| README.md | ||
| rustfmt.toml | ||
| triagebot.toml | ||
| vendor.yml | ||
stdarch - Rust's standard library SIMD components
Crates
This repository contains two main crates:
-
core_archimplementscore::arch- Rust's core library architecture-specific intrinsics, and -
std_detectimplementsstd::detect- Rust's standard library run-time CPU feature detection.
The std::simd component now lives in the
packed_simd_2 crate.