title: Cannot use SSSE3 on enabled cpu
body: <p>I have a Xeon W3550 processor that is supposed to have support for the SSE4.2 instruction set but when I try and use anything past SSE2 in my c program I get a compiler error e.g.</p>
  
  <pre><code>#error "SSE4.2 instruction set not enabled"
  </code></pre>
  
  <p>When I use</p>
  
  <pre><code>$cat /procs/cpuinfo
  </code></pre>
  
  <p>it detects all relevant sse instruction sets but</p>
  
  <pre><code>$cpuid
  </code></pre>
  
  <p>only detects SSE and SSE2.</p>
  
  <p>My operating system is ubuntu 11.04 with kernel 2.6.38-11-generic.</p>
  
  <p>Any ideas on how to fix this? Thanks.</p>
  
  <p>EDIT: An update based on Steve-o's comment below. The header files &lt;*mmintrin.h> perform a check for the sse version that they are associated with by using #ifndef preprocessor directive e.g. </p>
  
  <pre><code>#ifndef __SSSE3__ 
  #error "SSSE3 instruction set not enabled".
  </code></pre>
  
  <p>So I guess the question is then why is this coming back false despite the cpu being SSSE3 enabled.</p>