Go to main content
Oracle® Developer Studio 12.5: C User's Guide

Exit Print View

Updated: June 2017
 
 

1.2 Special x86 Notes

Be aware of the following important issues when compiling for x86 Oracle Solaris platforms.

  • Programs compiled with –xarch set to sse, sse2, sse2a,sse3, or beyond must be run only on platforms that provide these extensions and features.

  • With this release, the default instruction set and the meaning of -xarch=generic has changed to sse2. Now, compiling without specifying a target platform option results in an sse2 binary incompatible with older Pentium III or earlier systems.

  • If you compile and link in separate steps, always link using the compiler and with the same –xarch setting to ensure that the correct startup routine is linked.

  • Numerical results on x86 might differ from results on SPARC due to the x86 80-bit floating-point registers. To minimize these differences, use the –fstore option or compile with –xarch=sse2 if the hardware supports SSE2.

  • Numerical results can also differ between Oracle Solaris and Oracle Linux because the intrinsic math libraries (for example, sin(x)) are not the same.