https://gcc.gnu.org/bugzilla/show_bug.cgi?id=111243
--- Comment #9 from Xi Ruoyao <xry111 at gcc dot gnu.org> --- (In reply to Alex Mohr from comment #8) > (In reply to Jonathan Wakely from comment #5) > > A 4x slowdown isn't really acceptable IMHO. At that point, why not just use > > -O0 instead? > > I've been using -O0 for years. I was trying to move to -Og because of this > from the manual; particularly the second sentence: > > "-Og should be the optimization level of choice for the standard > edit-compile-debug cycle, offering a reasonable level of optimization while > maintaining fast compilation and a good debugging experience. It is a better > choice than -O0 for producing debuggable code because some compiler passes > that collect debug information are disabled at -O0." > > I definitely do not want to lose debug info. The speed improvement is a > nice bonus, but top-notch debugging is my main goal for my debug builds. I believe the only real issue is imprecise documentation: "It is a better choice than -O0" has some caveats and it's not always true.