Subject: Re: bug#63365: 30.0.50; GCC 13.1 breaks building Emacs with native-compilation

From: Deus Max <[email-masked]>
Date: Sat, 24 Jun 2023 12:17:11 +0300

On 2023-06-23T15:15 Fri, Eli Zaretskii wrote:

>> From: Arash Esbati <[email-masked]>
>> Cc: Andrea Corallo <[email-masked]>,  [email-masked],
>>   [email-masked],  [email-masked]
>> Date: Fri, 23 Jun 2023 13:41:10 +0200
>>
>> > Also, why are you using -O3?  That is not recommended when building
>> > Emacs.
>>
>> I wasn't aware of that.  Can you elaborate why -O3 isn't recommended?
>
> In a nutshell, it bloats the code (due to excessive inlining), with no
> real effect on speed.  The inner loops in Emacs are very large, and
> thus the techniques used by -O3 to speed up code (loop unrolling etc.)
> don't really work.  Moreover, they could make things worse because the
> larger loops might no longer fit into the L1 cache of the CPU.
>
> The -O3 is well suited to speed up relatively simple algorithms with
> tight loops.  Emacs has very few of those, in the places that matter
> for observable performance.

Interesting.
This recommendation and the explanation are worth documenting somewhere.
Shouldn't a new bug be opened on documenting the GCC -O3 recommendation?