------- Comment #4 from fredrik dot hederstierna at securitas-direct dot com  
2010-08-06 09:09 -------
Hm, I now tried to disable all possible optimization flags, but still "-Os"
does not work, but "-O2" still works!

Does the "-Os" option do anything more that is not controllable from command
line options/flags?

# Disable O1 flags
CFLAGS          +=           -fno-auto-inc-dec 
CFLAGS          +=           -fno-cprop-registers 
CFLAGS          +=           -fno-dce 
CFLAGS          +=           -fno-defer-pop 
CFLAGS          +=           -fno-delayed-branch 
CFLAGS          +=           -fno-dse 
CFLAGS          +=           -fno-guess-branch-probability 
CFLAGS          +=           -fno-if-conversion2 
CFLAGS          +=           -fno-if-conversion 
CFLAGS          +=           -fno-ipa-pure-const 
CFLAGS          +=           -fno-ipa-reference 
CFLAGS          +=           -fno-merge-constants
CFLAGS          +=           -fno-split-wide-types 
CFLAGS          +=           -fno-tree-builtin-call-dce 
CFLAGS          +=           -fno-tree-ccp 
CFLAGS          +=           -fno-tree-ch 
CFLAGS          +=           -fno-tree-copyrename 
CFLAGS          +=           -fno-tree-dce 
CFLAGS          +=           -fno-tree-dominator-opts 
CFLAGS          +=           -fno-tree-dse 
CFLAGS          +=           -fno-tree-forwprop 
CFLAGS          +=           -fno-tree-fre 
CFLAGS          +=           -fno-tree-phiprop 
CFLAGS          +=           -fno-tree-sra 
CFLAGS          +=           -fno-tree-pta 
CFLAGS          +=           -fno-tree-ter 
CFLAGS          +=           -fno-unit-at-a-time

# Disable O2 flags
CFLAGS          +=           -fno-thread-jumps 
CFLAGS          +=           -fno-align-functions  -fno-align-jumps 
CFLAGS          +=           -fno-align-loops  -fno-align-labels 
CFLAGS          +=           -fno-caller-saves 
CFLAGS          +=           -fno-crossjumping 
CFLAGS          +=           -fno-cse-follow-jumps  -fno-cse-skip-blocks 
CFLAGS          +=           -fno-delete-null-pointer-checks 
CFLAGS          +=           -fno-expensive-optimizations 
CFLAGS          +=           -fno-gcse  -fno-gcse-lm  
CFLAGS          +=           -fno-inline-small-functions 
CFLAGS          +=           -fno-indirect-inlining 
CFLAGS          +=           -fno-ipa-sra 
CFLAGS          +=           -fno-optimize-sibling-calls 
CFLAGS          +=           -fno-peephole2 
CFLAGS          +=           -fno-regmove 
CFLAGS          +=           -fno-reorder-blocks  -fno-reorder-functions 
CFLAGS          +=           -fno-rerun-cse-after-loop  
CFLAGS          +=           -fno-sched-interblock  -fno-sched-spec 
CFLAGS          +=           -fno-schedule-insns  -fno-schedule-insns2 
CFLAGS          +=           -fno-strict-aliasing -fno-strict-overflow 
CFLAGS          +=           -fno-tree-switch-conversion 
CFLAGS          +=           -fno-tree-pre 
CFLAGS          +=           -fno-tree-vrp

# Disable flags for debugging purposes
CFLAGS          +=       -fno-omit-frame-pointer -fno-web

The code size increased alot when disabling all this options.

/Fredrik


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=45207

Reply via email to