Profile build options
authormstembera <MissingEmail@email>
Tue, 3 Feb 2015 03:09:37 +0000 (11:09 +0800)
committerGary Linscott <glinscott@gmail.com>
Tue, 3 Feb 2015 03:09:37 +0000 (11:09 +0800)
I went through all the individual compile options that differ between
-fprofile-generate/-fprofile-use  and  -fprofile-arcs/-fbranch-probabilities
and distilled the speed difference down to only turning off
-fno-peel-loops and -fno-tracer.  Using this we still get the full speedup
(maybe a bit more because other optimizations stay on) and it's also much cleaner
because we can get rid of the "@rm -f ucioption.gc*" hack for all versions of gcc.

No functional change.

Resolves #237

src/Makefile

index 53bbc1f..ce8421a 100644 (file)
@@ -447,16 +447,13 @@ gcc-profile-prepare:
 
 gcc-profile-make:
        $(MAKE) ARCH=$(ARCH) COMP=$(COMP) \
 
 gcc-profile-make:
        $(MAKE) ARCH=$(ARCH) COMP=$(COMP) \
-       EXTRACXXFLAGS='-fprofile-arcs' \
+       EXTRACXXFLAGS='-fprofile-generate' \
        EXTRALDFLAGS='-lgcov' \
        all
 
 gcc-profile-use:
        EXTRALDFLAGS='-lgcov' \
        all
 
 gcc-profile-use:
-# Deleting corrupt ucioption.gc* profile files is necessary to avoid an 
-# "internal compiler error" for gcc versions 4.7.x
-       @rm -f ucioption.gc*
        $(MAKE) ARCH=$(ARCH) COMP=$(COMP) \
        $(MAKE) ARCH=$(ARCH) COMP=$(COMP) \
-       EXTRACXXFLAGS='-fbranch-probabilities' \
+       EXTRACXXFLAGS='-fprofile-use -fno-peel-loops -fno-tracer' \
        EXTRALDFLAGS='-lgcov' \
        all
 
        EXTRALDFLAGS='-lgcov' \
        all