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