Should -fcross-jumping be part of -O1?

David Carlton carlton@kealia.com
Tue Dec 2 17:09:00 GMT 2003


On Tue, 02 Dec 2003 00:26:07 -0800, "Zack Weinberg"
<zack@codesourcery.com> said:

> -O0    No optimization whatsoever.  
>        Except maybe do obviously-dead code elimination.

This is obviously a very special case, but dead code elimination
sometimes makes it difficult to write tests for GDB's test suite.  And
even when working on real programs I occasionally insert dead code as
a place where I can set breakpoints.  So, personally, I'd prefer that
-O0 be pretty stupid.  (Though I don't mind if it's not the default.)

> -O1    Optimize, but speed of compilation is more important than
>        speed or size of generated code.  Possibly this, not -O0,
>        should be the default mode.

One current side effect of optimization is that it enables lots of
warnings (e.g. unitialized variable detection); if we're going to list
explicit goals for different optimization levels, I would have that be
a goal for -O1 (and of course for higher optimization levels).

> I do not think it is appropriate to exclude optimizations from any
> level just because they mess up debugging info

I disagree with this for -O0.

David Carlton
carlton@kealia.com



More information about the Gcc mailing list