On Mon, Aug 22, 2011 at 11:31 PM, Chao Yang chao.yang@linaro.org wrote:
HI Michael, The build log can be found at http://people.linaro.org/~chaoyang/shared_sources/build_2011-08-19_20-33.log The benchmark wiki page https://wiki.linaro.org/ChaoYang/Sandbox/gccoptimization%C2%A0is updated on
- Adding benchmark for -fno-inline-function option (the size is reduced a
bit) 2. Replacing O2 with O3 in build/core/combo/select.mk (a bit better results)
I picked a command line at random and had a poke through it. There's a few interesting things:
It includes -fgcse-after-reload and -finline-functions at all levels. These are normally in -O3 only, which may be why the -O2 results are so similar to -O3.
It includes both -msoft-float and -mfloat-abi=softfp. softfp occurs second but you might want to remove the potentially conflicting -msoft-float.
It uses -fno-strict-aliasing which reduces the number of optimisations that can be done especially at high optimisation levels.
It uses -Wstrict-aliasing=2, i.e. turned down from the default -Wstrict-aliasing. I suggest removing the =2.
It uses -fno-inline-functions-called-once which turns off a common optimisation.
It uses -frename-registers and -frerun-cse-after-loop, which are normally part of -funroll-loops.
I recommend pulling out most of the -f flags and re-running at -O2 and -O3.
-- Michael