Intel® C++ Compiler
Community support and assistance for creating C++ code that runs on platforms based on Intel® processors.

x87 versus SSE

tydeman
Beginner
837 Views
On a Pentium 4 running Linux Fedora Core 10 and using icc 11.1, is there a way to cause the compiler
to use just the x87 FPU (and not use the SSE FPU)? I have looked at the various compiler options and
I see ways to specify various levels of SSE, but nothing to do just x87.
0 Kudos
3 Replies
TimP
Honored Contributor III
837 Views
For the 32-bit icc, -mia32 specifies x87 code only, no SSE. For 64-bit icc, -O0 or '-O1 -mp' may produce x87 code. As SSE2 was present in the first CPUs for x86_64, there isn't any requirement for x87 except when supporting 80-bit long double.
0 Kudos
tydeman
Beginner
837 Views
Thanks.

Is there some C preprocessor symbol defined by the compiler to indicate which FPUs
(x87 only, SSE2 only, or mixed) code generation will be done for?
0 Kudos
TimP
Honored Contributor III
837 Views
There are symbols such as __SSE2__ to indicate which instructions are available under the options set on command line. They don't prohibit use of earlier instructions such as x87.
0 Kudos
Reply