我有一个Xeon W3550处理器应该支持SSE4.2指令集但是当我尝试在我的c程序中使用SSE2之外的任何东西时,我得到编译器错误,例如。
#error "SSE4.2 instruction set not enabled"
当我使用
时$cat /procs/cpuinfo
它检测所有相关的sse指令集,但
$cpuid
仅检测SSE和SSE2。
我的操作系统是ubuntu 11.04,内核为2.6.38-11-generic。
有关如何解决此问题的任何想法?感谢。
编辑:基于Steve-o的评论的更新如下。头文件< * mmintrin.h>使用#ifndef预处理程序指令检查与之关联的sse版本,例如
#ifndef __SSSE3__
#error "SSSE3 instruction set not enabled".
所以我想问题是,尽管cpu启用了SSSE3,但为什么这会失败呢。
答案 0 :(得分:11)
您是否尝试使用-msse4.2
进行构建?