LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 1099|回复: 6

除了O2,O3,还有哪些,它们的意义又是什么呢?

[复制链接]
发表于 2003-5-25 16:15:56 | 显示全部楼层 |阅读模式
除了O2,O3,还有哪些,它们的意义又是什么呢?

HOSTCFLAGS = -Wall -Wstrict-prototypes -O9 -funroll-loops -ffast-math -malign-double -mcpu=pentiumpro -march=pentiumpro -fomit-frame-pointer -fno-exceptions

这个里面有这么多的选项,有没有兄弟可以说说自己知道的项是什么意思?
发表于 2003-5-25 16:30:05 | 显示全部楼层
man gcc
发表于 2003-5-25 16:35:46 | 显示全部楼层
楼主的参数太老了,应该是gcc2系列的了。
现在gcc3系列的不一样了,>=O3都一样了。所以-O9=-O3
这些参数不要研究太多,多数是只有程序员才关心的。我目前的参数:
$ echo $CFLAGS
-O2 -march=pentium3 -fomit-frame-pointer -pipe -w
[16:36:47] {PKG: qt@lfs-cvs} ~
用这个参数,我到现在,还没有遇到错误,而且系统也不觉得比-O3的时候慢。
发表于 2003-5-25 16:59:50 | 显示全部楼层
我用::

CFLAGS="-march=athlon-xp -m3dnow -msse -mfpmath=sse -mmmx -O3
-pipe -fforce-addr -fomit-frame-pointer -funroll-loops -frerun-cse-after-loop
-frerun-loop-opt -falign-functions=4 -maccumulate-outgoing-args -ffast-math
-fprefetch-loop-arrays"
CXXFLAGS="${CFLAGS}"

也没有错误..到现在...
发表于 2003-5-25 17:30:17 | 显示全部楼层
最初由 hgkrt 发表
我用::

CFLAGS="-march=athlon-xp -m3dnow -msse -mfpmath=sse -mmmx -O3
-pipe -fforce-addr -fomit-frame-pointer -funroll-loops -frerun-cse-after-loop
-frerun-loop-opt -falign-functions=4 -maccumulate-outgoing-args -ffast-math
-fprefetch-loop-arrays"
CXXFLAGS="${CFLAGS}"

也没有错误..到现在...

卡。。。算你狠!
发表于 2003-5-25 17:58:19 | 显示全部楼层
我的和tram的差不多
据说O2就带了 -fomit-frame-pointer了
so...
$ echo $CFLAGS
-march=athlon-tbird -O2 -pipe
发表于 2003-5-25 18:34:14 | 显示全部楼层
其实一个march就能代表很多东西,而其他的比如fast-math,并不是很好的参数,容易出问题,-O3会全部inline,所以也不好。如果程序的设计者觉得有必要,他会把合适的函数inline的,所以我们最好不要干涉。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表