<div dir="ltr"><div class="gmail_extra"><br><div class="gmail_quote">On Wed, Aug 27, 2014 at 2:29 PM, Yin Ma <span dir="ltr"><<a href="mailto:yinma@codeaurora.org" target="_blank">yinma@codeaurora.org</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1f497d">The last sentence was a typo. We did observe using a kind of top down approach in greedy inliner <u></u><u></u></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1f497d">resulted in less number of symbols remained, smaller overall code size and similar or better performance<u></u><u></u></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1f497d">compared with SCC inliner for chromium with –Os.</span></p></blockquote></div><br>This is somewhat apples-to-oranges though in multiple dimensions:</div>
<div class="gmail_extra"><br></div><div class="gmail_extra">1) It's not clear that the thresholds you use and the ones the SCC inliner uses are all that closely related. It's possible that the thresholds for -Os are just wrong for the SCC-based inliner.</div>
<div class="gmail_extra"><br></div><div class="gmail_extra">2) The two inlining frameworks are *completely different*, not just different in the top-down or bottom-up way. For example, you can use a hack in the pass manager to get basic loop information and other inputs to inlining that the current SCC inliner doesn't have. If you want comparable data, the two inliners need to work in the same way.</div>
<div class="gmail_extra"><br></div><div class="gmail_extra"><br></div><div class="gmail_extra">(And of course, I want to re-iterate that I don't necessarily claim Chromium is representative. In many ways it is better than SPEC, but it has its own special limitations. For example, it has had a great deal of hand tuning of the *available* inline definitions to work around deficiencies in the myriad of compilers that are used impacting both performance and code-size)</div>
</div>