21个版本
| 0.3.0 | 2019年6月20日 |
|---|---|
| 0.2.0 | 2018年5月11日 |
| 0.1.18 | 2017年2月23日 |
| 0.1.14 | 2017年1月31日 |
#223 在 硬件支持
23,211 每月下载量
在 10 个Crate中使用 (直接使用 7 个)
63KB
1K SLoC
可移植位操作内嵌函数
0b0000_0010_1001_1010
这个 #![no_std] 库暴露了 安全 和 可移植 的底层位操作指令集架构。最低支持的Rust版本是1.36.0。
对于更高级的位操作,请查看 bitwise 库。
这些内嵌函数通过以其CPU指令命名的特质暴露。这些特质实现了所有整数类型(除了 u128/i128)。
以下指令集已实现
-
x86 (
bitintr::x86)ABM:高级位操作指令 (bitintr::x86::abm)。TBM:尾部位操作指令 (bitintr::x86::tbm)。BMI:位操作指令集 1.0 (bitintr::x86::bmi)。BMI2:位操作指令集 2.0 (bitintr::x86::bmi2)。
-
ARM (
bitintr::arm)
生成的实际代码取决于涉及的整数类型和目标架构支持的功能。
已验证汇编
check_asm.py 脚本验证内联函数生成的汇编。它为适当的架构和目标特性编译 asm/arch_feature_*.rs,并将 rustc 生成的汇编与包含在相应的 asm/arch_feature_*.asm 文件中的汇编进行比较。
许可证
在MIT 许可证下许可。
贡献
是的,请记住,所有贡献都应按上述方式许可,不得附加任何额外条款或条件。