x86 Oracle Solaris プラットフォーム用にコンパイルする場合、いくつかの重要な点に注意してください。
–xarch を sse、sse2、sse2a、または sse3 以降に設定してコンパイルしたプログラムは、必ずこれらの拡張子と機能を提供するプラットフォームでのみ実行してください。
Oracle Solaris Studio 12.4 では、デフォルトの命令セットおよび -xarch=generic の意味が sse2 に変更されました。ターゲットプラットフォームオプションを指定せずにコンパイルすると、古い Pentium III または以前のシステムと互換性がない sse2 バイナリが生成されます。
コンパイルとリンクを別個の手順で行う場合は、常にコンパイラを使ってリンクし、同じ –xarch 設定で正しい起動ルーチンがリンクされるようにしてください。
x86 の 80 ビット浮動小数点レジスタが原因で、x86 での演算結果が SPARC の結果と異なる場合があります。この差を最小にするには、–-fstore オプションを使用するか、ハードウェアが SSE2 をサポートしている場合は -xarch=sse2 でコンパイルします。
組み込み数学ライブラリ (sin(x) など) が異なるため、Solaris と Linux の間でも数値結果が異なることがあります。