GCC优化选项

时间:2013-08-06 03:09:08

标签: gcc

最近,我使用GCC编译程序,但是当我使用-O1优化选项时,它出错了;使用-O0时没有问题。所以我将-O1替换为官方文档所说的那些选项,例如-fauto-inc-dec-fcompare-elim-fcprop-registers等。 但是,它没有任何错误,但性能不是很好。

我想知道-O1是否等同于那些小编译选项?

2 个答案:

答案 0 :(得分:3)

完全启用优化(-O1 vs -O0)会以-f标志无法控制的方式更改代码生成。请注意gcc documentation中的这句话:

  

并非所有优化都由标志直接控制。本节仅列出具有标志的优化。

一些细节取决于非常具体的gcc版本号(例如,gcc 4.2 vs gcc 4.5,4.9等)。

答案 1 :(得分:1)

The -O1 will turn on the following optimization flags:

      -fauto-inc-dec 
      -fcompare-elim 
      -fcprop-registers 
      -fdce 
      -fdefer-pop 
      -fdelayed-branch 
      -fdse 
      -fguess-branch-probability 
      -fif-conversion2 
      -fif-conversion 
      -fipa-pure-const 
      -fipa-profile 
      -fipa-reference 
      -fmerge-constants
      -fsplit-wide-types 
      -ftree-bit-ccp 
      -ftree-builtin-call-dce 
      -ftree-ccp 
      -ftree-ch 
      -ftree-copyrename 
      -ftree-dce 
      -ftree-dominator-opts 
      -ftree-dse 
      -ftree-forwprop 
      -ftree-fre 
      -ftree-phiprop 
      -ftree-slsr 
      -ftree-sra 
      -ftree-pta 
      -ftree-ter 
      -funit-at-a-time