<div dir="ltr">With the new PM, the profile information should be properly updated across inline transformations. If you see otherwise, please file a bug ..<div><br></div><div>David</div></div><div class="gmail_extra"><br><div class="gmail_quote">On Tue, Oct 3, 2017 at 12:54 PM, Graham Yiu via llvm-dev <span dir="ltr"><<a href="mailto:llvm-dev@lists.llvm.org" target="_blank">llvm-dev@lists.llvm.org</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div><p><font size="2">Hello,</font><br><br><font size="2">My team and I noticed that callsite hotness information is not preserved from compile to link step with LTO/thinLTO enabled.  As a result, the link step inlining pass remains conservative when inlining callsites known to be hot (ie. without the 'HotCallSiteThreshold' which is set at 3000 by default).  There are likely many cross-module inlining opportunities lost this way, and diminishes the benefit of using LTO/thinLTO+PGO together.</font><br><br><font size="2">In general, does LLVM pass profiling information through the IR to the link step other than branch probabilities and function entry counts?  If not, are there plans to do so in the future?  For inlining specifically, perhaps we can mark callsites with hot/cold attributes during compile step to ensure LTO inlining will give appropriate threshold bonuses/penalties.</font><br><br><font size="2">Any thoughts/insights/comments would be appreciated.</font><br><br><font size="2">Cheers,</font><br><br><font size="2">Graham Yiu<br>LLVM Compiler Development<br>IBM Toronto Software Lab<br>Office: <a href="tel:(905)%20413-4077" value="+19054134077" target="_blank">(905) 413-4077</a>      C2-707/8200/Markham<br>Email: <a href="mailto:gyiu@ca.ibm.com" target="_blank">gyiu@ca.ibm.com</a></font><br>
</p></div>
<br>______________________________<wbr>_________________<br>
LLVM Developers mailing list<br>
<a href="mailto:llvm-dev@lists.llvm.org">llvm-dev@lists.llvm.org</a><br>
<a href="http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev" rel="noreferrer" target="_blank">http://lists.llvm.org/cgi-bin/<wbr>mailman/listinfo/llvm-dev</a><br>
<br></blockquote></div><br></div>