[PATCH] Inliner Enhancement

Jiangning Liu liujiangning1 at gmail.com
Tue Mar 24 00:09:08 PDT 2015


Hi Chandler,

Regarding your patch, I think the simple loop heuristic may be a reasonable
>>> incremental improvement, but you really need to wait for Chandler's pass
>>> manager change instead of doing all the ordering tricks.
>>>
>>
>> Loop analysis is critical for my patch and it is expensive. The ordering
>> tricks (3.b) is only for compile-time reduction. As I mentioned in replying
>> Yin's comments, (3.b) itself can actually reduce compile-time a lot (~5% or
>> more for llvm bootstrap) without changing performance generally. If I don't
>> add (3.b), we would see ~10% compile-time regression. I don't think it is
>> acceptable. So now the only difference is how we update loop info. i.e. use
>> my current naive solution, or use new pass manager to help it?
>>
>> So do you know when Chandler's pass manager change can be ready for
>> inlining use?
>>
>
> It will be done in a very near future, but Chandler can give you more
> precise info.
>
>
>> Why we can't just use this native method first, and I can add //FIXME to
>> highlight it, and then when Chandler's great new pass manager is ready for
>> inlining use, we just switch to it? Eventually we would be able to see big
>> compile-time reduction.
>>
>
> You need to discuss with Chandler or other inliner maintainers.  It is
> probably possible but not in the current form of patch. IMO, the patch need
> to be in the current form (because of the hack to workaround limitations).
>
>
How do you think of this?

Appreciate your response in advance!

Thanks,
-Jiangning
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20150324/ed5f614b/attachment.html>


More information about the llvm-commits mailing list