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] | |
Geoff Keating wrote:
Stan Shebs <shebs@apple.com> writes:Mike Stump wrote:The first realization I came to is that the only existing control for such things is -O[123], and having thought about it, I think it would be best to retain and use those flags. For minimal user impact, I think it would be good to not perturb existing users of -O[0123] too much, or at leaast, not at first. If we wanted to change them, I think -O0 should be the `fast' version, -O1 should be what -O0 does now with some additions around the edges, and -O2 and -O3 also slide over (at least one). What do you think, slide them all over one or more, or just make -O0 do less, or...? Maybe we have a -O0.0 to mean compile very quickly?I think it suffices to have -O0 mean "go as fast as possible".Note that that's different to what it means now, which is "I want the debugger to not surprise me."
There's been a little bit of a drift over the years - -O0 used to be "no opts at all", -O1 was "not too surprising for the debugger", and -O2 was all-out. I remember some pressure from Cygnus customers to make -O0 do more optimization, sometimes out of stupidity, but in the legitimate cases because the -O0 code was too slow and/or large to fit on the target embedded system, even for debugging. So what *should* we do with -O0 optimizations that measurably slow down the compiler? Stan
| Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
|---|---|---|
| Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |