如何使用gcc找出哪些特定优化会显着影响我的代码

时间:2013-12-14 13:52:08

标签: optimization gcc

我曾经认为我可以通过指定-O1以及optimization options中提到的所有其他内容来进行第一级优化,从而模仿gcc中的-fauto-inc-dec。但是,由于对question的一个答案,我错了。

假设-O1确实对代码产生了重大影响,那么我如何找到哪些优化方法可以解释代码呢?

编辑:

我使用了gcc -c -Q -O1 --help=optimizers,在答案中建议找出-O1中使用的所有优化器,并使用-foptimizer语法来使用它们。但是,没有观察到显着差异。有些优化没有相应的-foptimizer语法,正如question中提到的那样,我想隐藏的那些在这种情况下会产生巨大的差异。我怎么能找到它们?

1 个答案:

答案 0 :(得分:3)

你可以差异:

gcc -c -Q -O1 --help=optimizers

gcc -c -Q -O0 --help=optimizers

gcc命令将显示-O0-O1的启用和停用优化程序选项列表。

然后,您可以单独启用或禁用特定的优化程序选项,以查看哪一个最能影响您的程序。