Sun Studio 12 Update 1:C++ 用户指南

A.2.18.1 扩展

该选项通过扩展到以下编译选项,为大量应用程序提供了几乎最高的性能。

表 A–5 -fast 扩展

选项 

SPARC  

x86  

–fns

–fsimple=2

–nofstore

-xarch

-xbuiltin=%all

-xcache

-xchip

–xlibmil

–xlibmopt

–xmemalign

–xO5

-xregs=frameptr

–xtarget=native

交互

-fast 宏可扩展为可能影响其他指定选项的编译选项。例如,在以下命令中,-fast 宏的扩展包括了将 -xarch 还原为某个 32 位体系结构选项的 -xtarget=native

错误:


example% CC -xarch=v9 -fast test.cc

正确:


example% CC -fast -xarch=v9 test.cc

查看每个选项的描述以确定可能的交互操作。

代码生成选项、优化级别、内建函数的优化和内联模板文件的使用可以用后续选项来覆盖(请参阅示例)。指定的优化级别将覆盖以前所设置的优化级别。

–fast 选项包括 –fns–ftrap=%none,即该选项禁用所有陷阱操作。

示例

执行以下编译器命令,优化级别将为 –xO3


example% CC –fast –xO3

执行以下编译器命令,优化级别将为 –xO5


example% CC -xO3 –fast

警告

如果在不同的步骤中进行编译和链接,则编译命令和链接命令中都必须有 -fast 选项。

使用 -fast 选项编译的目标二进制文件不可移植。例如,在 UltraSPARCIII 系统中用以下命令生成的二进制文件在 UltraSPARCII 系统中无法执行。


example% CC -fast test.cc

不要将该选项用于依赖 IEEE 标准浮点运算的程序,否则可能会产生不同的数字结果、过早的程序终止或意外的 SIGFPE 信号。

在早期的 SPARC 发行版中,-fast 宏扩展到了 -fsimple=1。而现在扩展到 -fsimple=2

-fast 的扩展包括 -D_MATHERR_ERRNO_DONTCARE

要在任何平台上显示 —fast 的扩展,请运行命令 CC —dryrun —fast


>CC -dryrun -fast
###     command line files and options (expanded):
### -dryrun -xO5 -xarch=sparcvis2 -xcache=64/32/4:1024/64/4 \
-xchip=ultra3i -xmemalign=8s -fsimple=2 -fns=yes -ftrap=%none \
-xlibmil -xlibmopt -xbuiltin=%all -D__MATHERR_ERRNO_DONTCARE

另请参见

-fns-fsimple-ftrap=%none-xlibmil-nofstore-xO5-xlibmopt-xtarget=native