【发布时间】:2011-03-23 16:56:05
【问题描述】:
我在 Ubuntu 10.10 上运行。
man g++ 谈-O1、-O2、-O3 优化选项
我注意到 -O5 和 -O1000 一样有效...
我使用了“g++ -v -O5 toto.cpp”,但我不清楚有什么区别。 -O5 究竟做了什么?
【问题讨论】:
标签: optimization g++
我在 Ubuntu 10.10 上运行。
man g++ 谈-O1、-O2、-O3 优化选项
我注意到 -O5 和 -O1000 一样有效...
我使用了“g++ -v -O5 toto.cpp”,但我不清楚有什么区别。 -O5 究竟做了什么?
【问题讨论】:
标签: optimization g++
-O5 目前与-O3 的作用相同,-O1000 也是如此。优化级别 3 目前是最高级别,但 -O 标志无论如何都接受更高级别以实现前向兼容性。证明:
$ g++ -O2 -Q --help=optimizers > O2
$ g++ -O3 -Q --help=optimizers > O3
$ g++ -O5 -Q --help=optimizers > O5
$ g++ -O1000 -Q --help=optimizers > O1000
$ diff O2 O3
[ ... lots of output]
$ diff O3 O5
$ diff O3 O1000
$
【讨论】: