Optimization 如何在gcc中启用单个优化标志?
使用gcc时,是否可以在未指定-O级别的情况下启用单个优化标志Optimization 如何在gcc中启用单个优化标志?,optimization,gcc,compilation,compiler-flags,Optimization,Gcc,Compilation,Compiler Flags,使用gcc时,是否可以在未指定-O级别的情况下启用单个优化标志 gcc -ffasst-math foo.c 或 哪一个有效? 谢谢 是的,您可以启用单个优化标志 gcc手册页中的信息: -O -O打开以下优化标志: -fauto inc dec-fcprop寄存器-fdce-fdefer pop-FDREE延迟分支-fdse-fguess分支概率-fif转换2-fif转换-finline小函数-fipa纯常量-fipa参考-fmerge常量-fsplit宽类型-ftree内置调用dce-ft
gcc -ffasst-math foo.c
或
哪一个有效?
谢谢 是的,您可以启用单个优化标志 gcc手册页中的信息: -O -O打开以下优化标志: -fauto inc dec-fcprop寄存器-fdce-fdefer pop-FDREE延迟分支-fdse-fguess分支概率-fif转换2-fif转换-finline小函数-fipa纯常量-fipa参考-fmerge常量-fsplit宽类型-ftree内置调用dce-ftree ccp-ftree ch-ftree copyrename-ftree dce-ftree支配者选项-ftree dse-ftree fre-ftree sra-ftree ter-funit-at-a-time -O还可以在不干扰调试的机器上打开-fomit帧指针 -法斯特数学 设置-fno math errno、-funsafe math optimizations、-ffinite math only、-fno舍入数学、-fno信令nans和-fcx限制范围。 此选项导致定义预处理器宏FAST_MATH
任何-O选项都不会启用此选项,因为它可能导致程序的输出不正确,而这些程序依赖于数学函数的IEEE或ISO规则/规范的精确实现。但是,对于不需要这些规范保证的程序,它可能会产生更快的代码。是的,您可以启用单个优化标志 gcc手册页中的信息: -O -O打开以下优化标志: -fauto inc dec-fcprop寄存器-fdce-fdefer pop-FDREE延迟分支-fdse-fguess分支概率-fif转换2-fif转换-finline小函数-fipa纯常量-fipa参考-fmerge常量-fsplit宽类型-ftree内置调用dce-ftree ccp-ftree ch-ftree copyrename-ftree dce-ftree支配者选项-ftree dse-ftree fre-ftree sra-ftree ter-funit-at-a-time -O还可以在不干扰调试的机器上打开-fomit帧指针 -法斯特数学 设置-fno math errno、-funsafe math optimizations、-ffinite math only、-fno舍入数学、-fno信令nans和-fcx限制范围。 此选项导致定义预处理器宏FAST_MATH 任何-O选项都不会启用此选项,因为它可能导致程序的输出不正确,而这些程序依赖于数学函数的IEEE或ISO规则/规范的精确实现。但是,对于不需要这些规范保证的程序,它可能会产生更快的代码
gcc -O1 -ffast-math foo.c