4. Solaris Studio Fortran の機能と相違点
5. FORTRAN 77 の互換性: Solaris Studio Fortran への移行
B.2 Sun Studio 12 Update 1 Fortran リリース
B.3 Sun Studio 12 Fortran リリース
B.4 Sun Studio 11 Fortran リリース
B.5 Sun Studio 10 Fortran リリース
B.8 Sun ONE Studio 7, Compiler Collection (Forte Developer 7) リリース
Solaris Studio Fortran 95 コンパイラバージョン 8.5 は、Oracle Solaris Studio 12.2 リリースのコンポーネントです。
SPARC-V9 命令セットの SPARC VIS3 バージョンをサポートします。-xarch=sparcvis3 オプションでコンパイルすると、SPARC-V9 命令セット、VIS (Visual Instruction Set) version 1.0 を含む UltraSPARC 拡張機能、VIS (Visual Instruction Set) version 2.0、積和演算 (FMA) 命令、および VIS (Visual Instruction Set) version 3.0 を含む UltraSPARC-III 拡張機能の命令をコンパイラが使用できるようになります。
x86 ベースのシステムに基づく -xvector オプションのデフォルト値が -xvector=simd に変更されました。x86 ベースのシステムでは、最適化レベル 3 およびそれ以上の場合にストリーミング拡張機能がデフォルトで使用されます。サブオプション no%simd を使用すると、この機能を無効にできます。SPARC ベースのシステムのデフォルトは -xvector=%none です。「3.4.179 -xvector[= [[ no%]lib, [no%] simd, %none] ]」 を参照してください。
AMD SSE4a 命令セットがサポートされるようになりました。-xarch=amdsse4a オプションでコンパイルします。
新しい -traceback オプションを使用すると、重大なエラーが発生した場合に実行可能ファイルでスタックトレースを出力できます。このオプションを指定すると、実行可能ファイルは、シグナルのセットをトラップし、スタックトレースとコアダンプを出力してから終了します。複数のスレッドが 1 つのシグナルを生成すると、スタックトレースは最初のスレッドに対してのみ生成されます。追跡表示を使用するには、f95、cc、または CC でプログラムをリンクするときに、-traceback オプションを追加します。便宜上、このオプションはコンパイル時にも受け入れられますが、無視されます。-traceback オプションを -G オプションとともに使用して共有ライブラリを作成すると、エラーになります。「3.4.95 -traceback[={ %none|common|signals_list}]」 を参照してください。
-mt オプションが -mt=yes または -mt=no に変更されています。-mt=yes オプションにより、ライブラリが適切な順序でリンクされることが保証されます。「3.4.56 -mt[={ yes|no}]」 を参照してください。
-xprofile=tcov オプションが拡張されて、オプションのプロファイルディレクトリパス名がサポートされるようになりました。また、tcov 互換のフィードバックデータも生成できます。「3.4.164 -xprofile=p」 を参照してください。
新しい -xkeepframe[=[%all,%none ] オプションでは、指定した機能のスタック関連の最適化を禁止できます。%all を指定すると、すべてのコードのスタック関連の最適化が禁止されます。%none を指定すると、すべてのコードのスタック関連の最適化が許可されます。デフォルトは -xkeepframe=%none です。「3.4.135 -xkeepframe[=[ %all,%none,name,no% name]]」 を参照してください。
追加の F2003 機能が実装されています。「4.6 Fortran 200x の機能」を参照してください。
IVDEP 指令は、最適化の目的でループ内で検出された一部またはすべての配列参照のループがもたらす依存関係を無視するように、コンパイラに指示します。これにより、コンパイラはほかの方法で実行できないさまざまなループの最適化を実行できます。-xivdep オプションを使用して IVDEP 指令を無効にしたり、指令の解釈の方法を指定したりできます。「2.3.3 IVDEP 指令」を参照してください。