• Home
  • History
  • Annotate
Name Date Size #Lines LOC

..03-May-2022-

src/H03-May-2022-398242

tests/H03-May-2022-3624

.cargo-checksum.jsonH A D03-May-202289 11

.cargo_vcs_info.jsonH A D01-Jan-197074 65

CHANGELOG.mdH A D29-Nov-19731.6 KiB6141

Cargo.tomlH A D01-Jan-19701.1 KiB2927

Cargo.toml.orig-cargoH A D29-Nov-1973643 2219

LICENSE-APACHEH A D29-Nov-197310.6 KiB202169

LICENSE-MITH A D29-Nov-19731.1 KiB2622

README.mdH A D29-Nov-19732.2 KiB8764

README.md

1# [RustCrypto]: CPU Feature Detection
2
3[![crate][crate-image]][crate-link]
4[![Docs][docs-image]][docs-link]
5![Apache2/MIT licensed][license-image]
6![Rust Version][rustc-image]
7[![Project Chat][chat-image]][chat-link]
8[![Build Status][build-image]][build-link]
9
10Lightweight and efficient `no_std` compatible alternative to the
11`is_x86_feature_detected!` macro providing runtime CPU feature detection
12for x86/x86_64 and ARM64 CPUs.
13
14[Documentation][docs-link]
15
16## Supported architectures
17
18### `aarch64`: Linux and macOS/M4 only
19
20Note: ARM64 does not support OS-independent feature detection
21
22Target features:
23
24- `aes`
25- `sha2`
26- `sha3`
27
28Note: please open a GitHub Issue to request support for additional features.
29
30### `x86`/`x86_64`: OS independent and `no_std`-friendly
31
32Target features:
33
34- `adx`
35- `aes`
36- `avx`
37- `avx2`
38- `bmi1`
39- `bmi2`
40- `fma`
41- `mmx`
42- `pclmulqdq`
43- `popcnt`
44- `rdrand`
45- `rdseed`
46- `sgx`
47- `sha`
48- `sse`
49- `sse2`
50- `sse3`
51- `sse4.1`
52- `sse4.2`
53- `ssse3`
54
55## License
56
57Licensed under either of:
58
59 * [Apache License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0)
60 * [MIT license](http://opensource.org/licenses/MIT)
61
62at your option.
63
64### Contribution
65
66Unless you explicitly state otherwise, any contribution intentionally submitted
67for inclusion in the work by you, as defined in the Apache-2.0 license, shall be
68dual licensed as above, without any additional terms or conditions.
69
70[//]: # (badges)
71
72[crate-image]: https://img.shields.io/crates/v/cpufeatures.svg
73[crate-link]: https://crates.io/crates/cpufeatures
74[docs-image]: https://docs.rs/cpufeatures/badge.svg
75[docs-link]: https://docs.rs/cpufeatures/
76[license-image]: https://img.shields.io/badge/license-Apache2.0/MIT-blue.svg
77[rustc-image]: https://img.shields.io/badge/rustc-1.40+-blue.svg
78[chat-image]: https://img.shields.io/badge/zulip-join_chat-blue.svg
79[chat-link]: https://rustcrypto.zulipchat.com/#narrow/stream/260052-utils
80[build-image]: https://github.com/RustCrypto/utils/workflows/cpufeatures/badge.svg?branch=master&event=push
81[build-link]: https://github.com/RustCrypto/utils/actions/workflows/cpufeatures.yml
82
83[//]: # (general links)
84
85[RustCrypto]: https://github.com/rustcrypto
86[RustCrypto/utils#378]: https://github.com/RustCrypto/utils/issues/378
87