c++ 如何确定使用gcc时实际应用哪些优化?

使用IBM的XL编译器系列,可以提供两个选项(-qreport和-qlist)来为每个源文件生成报告,其中包括应用哪些优化的信息,或哪些部分代码无法优化(以及为什么).

是否有可能获得类似的GNU g的报告 – 如果是的话,该怎么做?

看看-fdump-tree- [switch]标志.您可以使用-fdump-tree-all来获取大量信息.

gcc-infopt-info- [options]中还可以访问更高级别的优化信息,例如当应用特定优化时,错过等等.

-fopt-info-inline-optimized-missed

打印所有成功和错过的内联优化(在本例中为stderr).这显然是非常新的功能,所以我不知道它是否得到了很好的支持.

在早期版本中,他们使用了-ftree-vectorizer-verbose = n,现在已经弃用了赞成opt-info信息.

所有这些选项都列在这里http://gcc.gnu.org/onlinedocs/gcc/Debugging-Options.html,虽然它可能有点棘手的挑选有用的.

http://stackoverflow.com/questions/14737371/how-to-find-out-which-optimizations-are-actually-applied-when-using-gcc

转载注明原文:c++ 如何确定使用gcc时实际应用哪些优化?