On Mon, Jan 9, 2012 at 12:07 PM, Jan Hubicka <hubi...@ucw.cz> wrote:
>>
>> That surely should be MAX_INLINE_INSNS_AUTO instead.  At _least_.
>> You are triggering very much more inlining during early inlining now -
>> I don't see
>> where we did this for -Os already as you claim.  In fact it is totally
>> against the spirit of early inlining now :(
>
> This is IPA inlining, not early inlining. I just moved the logic from -Os 
> logic
> to include -O2 logic, too.

Ok, I was confused then.  But as you re-order the tests this exception
will apply always, no?

> I added the size check because I was worried of units containing one very 
> large
> function that simplifies quite a lot by inlining (because of the new predicate
> code). Because badness function is not really worried about function sizes (it
> expects them to be small) and merely accounts relative benefits, we would end
> up then inlining this large function quite early in queue preventing other
> inlining from happening.
>
> So it seemed safer to add the size check. Except the degenerate case described
> above it should not make much of practical difference.

But the size check is inconsistent wrt inline declares, non-inline declared
fns should get the _auto limit.

>>
>> Why does IPA inlining not figure out that inlining the indirect call is good?
>
> For reasons described in the original mail. We are doing -O2, function is not
> declared inline and so far we was inlining only for size at -O2 in that case.
>
> Honza

Reply via email to