4. Solaris Studio Fortran 的功能与差异
5. FORTRAN 77 兼容性:迁移到 Solaris Studio Fortran
B.2 Sun Studio 12 Update 1 Fortran 发行版
B.5 Sun Studio 10 Fortran 发行版:
Solaris Studio Fortran 95 编译器 8.5 版本是 Oracle Solaris Studio 12.2 发行版中的一个组件。
支持 SPARC VIS3 版本的 SPARC-V9 指令集。如果使用 -xarch=sparcvis3 选项进行编译,编译器可以使用 SPARC-V9 指令集、UltraSPARC 扩展(包括可视指令集 (Visual Instruction Set, VIS) 版本 1.0)、UltraSPARC-III 扩展(包括可视指令集 (Visual Instruction Set, VIS) 版本 2.0)、混合乘加指令和可视指令集 (Visual Instruction Set, VIS) 版本 3.0)中的指令。
在基于 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 选项使可执行文件在出现严重错误时显示栈跟踪。使用此选项时,可执行文件将捕获一组信号,并显示栈跟踪和核心转储,然后退出。如果多个线程都生成一个信号,则只为第一个线程生成栈跟踪。要使用回溯,请在使用 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 指令