C- AMD XOP检查支持



我有下一个问题:
我有一些与XOP检查的测试,并使用一些Bulldozer (xop)指令进行检查。
我必须仅在Bulldozer处理器上运行此测试。
如何检查我的处理器是否在编译时支持xop指令?

语言: C os: Linux;

您可以编写检查CPUID并在编译时使用该程序的输出的程序:
gcc $(cpuid_test) my_prog.c

其中cpuid_test返回 '-march=bdver1'-DXOP_SUPPORT=1

您不能在编译时测试,但是可以使用:

来编译AMD推土机

$ gcc -march = bdver1 -mtune = bdver1 ...

请参阅:http://gcc.gnu.org/gcc-4.6/changes.html

如果您的构建机是您的目标机器,请查看/proc/cpuinfo

如果用-march=bdver1编译了源(可以在其他方面进行XOP支持),则预处理器宏__XOP__将定义为1。

您可以在

的XOP时在编译时间进行测试
#ifdef __XOP__
     ...XOP code path here...
#else
     ...non XOP code here...
#endif 

相关内容

  • 没有找到相关文章

最新更新