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 许可证下许可。
贡献
是的,请记住,所有贡献都应按上述方式许可,不得附加任何额外条款或条件。