<html><head><meta http-equiv="Content-Type" content="text/html charset=us-ascii"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;" class="">I reverted in r<span style="font-family: Menlo; font-size: 11px;" class="">231385</span><div class=""><font face="Menlo" class=""><span style="font-size: 11px;" class=""><br class=""></span></font><div style=""><blockquote type="cite" class=""><div class="">On 05 Mar 2015, at 10:36, Chandler Carruth <<a href="mailto:chandlerc@google.com" class="">chandlerc@google.com</a>> wrote:</div><br class="Apple-interchange-newline"><div class=""><div dir="ltr" class=""><div class="gmail_extra"><br class=""><div class="gmail_quote">On Thu, Mar 5, 2015 at 1:31 AM, Erik Eckstein <span dir="ltr" class=""><<a href="mailto:eeckstein@apple.com" target="_blank" class="">eeckstein@apple.com</a>></span> wrote:<br class=""><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><span class=""><div class=""><blockquote type="cite" class=""><div dir="ltr" class=""><div class="gmail_extra"> As far as I'm aware, the only way this happens is if you continually destroy and re-create your passmanager</div></div></blockquote><br class=""></div></span><div class="">FPPassManager::runOnFunction also (indirectly) calls PassRegistry::getPassInfo. I think this is the reason for the 5% (what I'm seeing).</div><div class=""><br class=""></div><div class="">But anyway, if you strongly disagree with this patch I can revert it. Both problems I mentioned are not big problems.</div></blockquote></div><br class="">Yea, I'm strongly opposed to using modal synchronization. It is far too easy to get wrong and hard to debug when it is wrong.</div><div class="gmail_extra"><br class=""></div><div class="gmail_extra">If there is a problem here, we should fix it directly. I'm surprised there are any uncached calls left to getPassInfo from runOnFunction. Those could probably also be cached much like I cached the ones in the analysis call paths. That would address the 5% slowdown.</div></div>
</div></blockquote></div><br class=""></div></body></html>