Intel® C++ Compiler
Support and discussions for creating C++ code that runs on platforms based on Intel® processors.
Announcements
This community is designed for sharing of public information. Please do not share Intel or third-party confidential information here.

x87 versus SSE

tydeman
Beginner
287 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
Black Belt
287 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.
tydeman
Beginner
287 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?
TimP
Black Belt
287 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.
Reply