tags:

views:

65

answers:

4

Hi,

I am using Intel Core2Duo E4500 processor. It is supposed to have SSE3, SSSE3 facilities. But if I try to use them in programs it shows the following error "SSE3 instruction set not enabled"

Any ideas?

+1  A: 

Use CPU-Z to check for available instruction sets.

If you're using Visual Studio, there's an option in C/C++ -> Code Generation -> Enable Enhanced Instruction Set.

Here's how to enable it in gcc.

From the above link:

-msse3
-mssse3
Jacob
+1  A: 

Try adding this gcc command line options:

-march=core2 -msse3

And probably is also a good idea to turn on sse optimizations for floating point operations:

-mfpmath=sse
jassuncao
using -msse3 or -mssse3 gets it working...thanks..
anup
A: 

On Linux, have a look at the flags field of the output of cat /proc/cpuinfo

Novelocrat
cat /proc/cpuinfo gives SSSE3 but it does not show SSE3, but again for SSSE3 also it shows SSSE3 instruction set not enabled..
anup
A: 

If you compile on the same machine where you will be executing your code, with any recent gcc you should be able to use -march=native to take advantage of all your CPU features. It should tell you during compilation then, if you are using unsupported instructions in your asm.

Jens Gustedt