This is the mail archive of the gcc@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Change default BOOT_CFLAGS for release builds


On Mon, Aug 6, 2012 at 8:01 AM, Ryan Hill <dirtyepic@gentoo.org> wrote:
> On Fri, 3 Aug 2012 17:11:04 +0300 (EEST)
> Dimitrios Apostolou <jimis@gmx.net> wrote:
>
>> I got no replies, so I guess there is no will to move GCC to -O3 by
>> default, so I shouldn't bother submitting a patch?
>>
>> As a reminder, cc1 is 0-4% faster but almost 10% bigger executable.
>> Testsuite showed no regression. Bootstrap time is greater (don't have the
>> numbers) but I proposed adding and documenting a "make release" target
>> that would be used by distros, while default target would remain -O2 (or
>> even -O1) so that our test builds complete in sensible time.
>>
>> In the future we could also turn on other stable ways to speed up GCC for
>> release builds (e.g. lto/profiledbootstrap).
>
> My concern would be that any bugs triggered by -O3 would not be found until
> after a release is made and everyone has gone off to work on the trunk.
> We usually encounter a couple of bugs that only appear with
> --disable-checking every release cycle because no one uses it.

Instead of changing the default flags used when bootstrapping GCC we should
document what is recommended if you want to build GCC for a production
environment and want a fast compiler.  Recommended here is to do a
profiledbootstrap or a profiled LTO bootstrap (with the caveat that this only
works for a bootstrapped GCC, thus not for cross compilers, and that for
not very common host platforms it might not work).

Richard.

>
> --
> gcc-porting                   we were never more here, expanse getting broader
> toolchain, wxwidgets               though bigger boats been done by less water
> @ gentoo.org


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]