8.4 POWER/PowerPC选项

POWER/PowerPC家族的处理器使用’-mcpu=CPU’选项为特定的CPU模型生成代码。CPU的可选值包括’power’,’power2’,’powerpc’,’powerpc64’和’common’。’-mcpu=common’选项生成的代码可以在这些类型的任何处理器上运行。如果硬件支持,’-maltivec’选项用于使能Altivec向量处理指令。

POWER/PowerPC处理器包含一个“乘法加法结合”的指令a*x+b,这两个操作同时进行以提高运算速度--这被称为混合乘加法,GCC默认会使用这个指令。由于这种指令会丢失中间值,混合指令的执行结果没有两个操作分开执行的结果明确。因此严谨的IEEE算术标准要求不能使用混合指令,可以使用’-mno-fused-madd’选项禁止使用混合指令。

在AIX系统上’-mminimal-toc’选项会减少GCC放在可执行文件中的全局目录(TOC)中的条目数量,以避免在链接阶段出现”TOC overflow(溢出)”错误。’-mxl-call’选项使GCC链接的目标文件与IBM的XL编译器相互兼容。当应用程序使用了POSIX线程时AIX总是要求使用’-pthread’选项编译程序,即使程序只运行在一个线程模式中。