gpt4 book ai didi

c++ - 用于检测 BMI2 指令集的编译器宏

转载 作者:塔克拉玛干 更新时间:2023-11-03 01:43:54 24 4
gpt4 key购买 nike

我在网上搜索以找到合适的解决方案,但没有太大的成功。所以我希望你们中的一个人对此有所了解:有什么方法可以检测“Intel Bit Manipulation Instruction Sets 2”(BMI2)编译时间吗?我想根据它的可用性做一些有条件的事情。

最佳答案

使用 GCC,您可以检查 __BMI2__ 宏。如果目标支持 BMI2(例如 -mbmi2-march=haswell),将定义此宏。这是内部函数的 header (x86intrin.hbmi2intrin.h)用于在编译时检查 BMI2 的宏。

对于运行时检查,__builtin_cpu_init()__builtin_cpu_supports("bmi2") 可以在现代 GCC 中使用(在 GCC 5.1、4.9 和更低版本中测试没有它)。

关于c++ - 用于检测 BMI2 指令集的编译器宏,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32214843/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com