On Thu, Apr 5, 2012 at 2:49 PM, Robert Dewar <de...@adacore.com> wrote:
>
>> It's on my large TODO list, somewhere at the bottom, to propose
>> to make -O1 stop after early optimizations and drop right to
>> expansion from there.  That would turn optimization expectations
>> upside-down of course, but early optimizations should be mostly
>> reducing code size (and thus increase compile speed) with
>> no fancy optimization that inhibit debugging (SRA, IPA-SRA,
>> switch conversion and function splitting are an exception,
>> but all but SRA are not enabled at -O1).  So we'd move to
>> compile-time and debuggability for -O1 (I'd expect compile time
>> that should be better or at least not a lot slower than -O0).
>
>
> I am all in favor of such work, but I would approach it in two
> steps. First make it a separate -O level, then depending on
> how successful this is in practice, propose making -O1 mean
> this new level.
>
> If you do both steps at once, you get opposition on the basis
> of change-is-bad, rather than to the substance of the new
> level of optimization.

Ok, that were my thoughts as well.  It was suggested to add -Og
in the past, which, at some point could become the default
for a plain 'gcc' invocation.  It happens that people care for -O0
and that -O2 is tuned quite well - -O1 did not see any adjustments
in the last 10 years I think (well, not based on any benchmarking at least).

Not sure if inflation of -O variants will be well-received though ;)  Re-using
-O looked appealing to me ...

Richard.

>>
>>
>> Richard.
>
>

Reply via email to