Eric Gallager <eg...@gwmail.gwu.edu> writes: > On Tue, Jul 23, 2024 at 10:07 AM Sam James <s...@gentoo.org> wrote: >> >> At -O1, the intention is that we compile things in a "reasonable" amount >> of time (ditto memory use). In particular, we try to especially avoid >> optimizations which scale poorly on pathological cases, as is the case >> for large machine-generated code. >> >> Recommend -O1 for large machine-generated code, as has been informally >> done on bugs for a while now. >> >> This applies (broadly speaking) for both large machine-generated functions >> but also to a lesser extent repetitive small-but-still-not-tiny functions >> from a generator program. >> >> gcc/ChangeLog: >> PR middle-end/114855 >> * doc/invoke.texi (Optimize options): Mention machine-generated >> code for -O1. >> --- >> richi, does this accurately reflect the discussion we had on IRC a little >> while ago? >> >> Please push if OK, thanks. >> >> gcc/doc/invoke.texi | 5 +++++ >> 1 file changed, 5 insertions(+) >> >> diff --git a/gcc/doc/invoke.texi b/gcc/doc/invoke.texi >> index e0a641213ae4..9fb0925ed292 100644 >> --- a/gcc/doc/invoke.texi >> +++ b/gcc/doc/invoke.texi >> @@ -12560,6 +12560,11 @@ With @option{-O}, the compiler tries to reduce code >> size and execution >> time, without performing any optimizations that take a great deal of >> compilation time. >> >> +@option{-O} is the recommended optimization level for large >> machine-generated >> +code as a sensible balance between time taken to compile and memory use: >> +higher optimization levels perform optimizations with greater algorithmic >> +complexity than at @option{-O}. >> + > > Personally, I get confused when "-O1" is written as just "-O"...
I, too, prefer -O1, but I was trying to be good and stick to convention. But then I did -O1 in the commit message. If people are fine with it, I'd prefer to do -O1. thanks, sam