<div dir="ltr"><div dir="ltr"><br></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Thu, Apr 22, 2021 at 8:34 AM Snider, Todd via llvm-dev <<a href="mailto:llvm-dev@lists.llvm.org">llvm-dev@lists.llvm.org</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-style:solid;border-left-color:rgb(204,204,204);padding-left:1ex">





<div lang="EN-US">
<div class="gmail-m_4578853572138705021WordSection1">
<p class="MsoNormal">Hello All,<u></u><u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal">My development group has been maintaining a downstream version of the monorepo that stays in sync with the upstream “main” branch, but we are still using the legacy pass manager in our local copy of the monorepo.<u></u><u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal">We’ve recently encountered a few instances of lit tests that are failing when run with the legacy pass manager version of opt, but pass when run with the new pass manager version of opt.</p></div></div></blockquote><div><br></div><div>I don't think you're talking about upstream tests right? Did you rewrite some of the new-PM-only tests into old PM syntax?</div><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-style:solid;border-left-color:rgb(204,204,204);padding-left:1ex"><div lang="EN-US"><div class="gmail-m_4578853572138705021WordSection1"><p class="MsoNormal"><u></u><u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal">The situation raises a couple of questions:<u></u><u></u></p>
<ul style="margin-top:0in" type="disc">
<li class="MsoNormal">Is the legacy pass manager behavior being adequately tested by the buildbots?<u></u><u></u></li><li class="MsoNormal">What expectation should there be that legacy pass manager behavior will be maintained in light of changes made to code that affects both the new pass manager version and the legacy pass manager version of
 opt?<u></u><u></u></li></ul>
<p class="MsoNormal"><u></u> </p></div></div></blockquote><div><br></div><div>AFAIK many Passes share the same code base between old and new PM (except few like AlwaysInliner who has completely different behaviors between old / new PM), so any changes to their underlying implementation should reflect in both PMs. The biggest differences between old / new PM is probably their Pass ordering in the pipeline.</div><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-style:solid;border-left-color:rgb(204,204,204);padding-left:1ex"><div lang="EN-US"><div class="gmail-m_4578853572138705021WordSection1"><p class="MsoNormal"><u></u></p>
<p class="MsoNormal">I suspect that my group is not the only ones trying to stay in sync with the upstream LLVM main branch and keep using the legacy pass manager, and I anticipate the only long-term remedy for our situation is to move to using the new pass
 manager as soon as we can.<u></u><u></u></p>
<p class="MsoNormal"><u></u> </p></div></div></blockquote><div><br></div><div>Well, don't forget we're still using old PM to do the code generation (wink) so old PM _by itself_ won't go away any time soon. But I think _optimization_ Passes written in legacy syntax might be removed sooner.</div><div><br></div><div>-Min</div><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-style:solid;border-left-color:rgb(204,204,204);padding-left:1ex"><div lang="EN-US"><div class="gmail-m_4578853572138705021WordSection1"><p class="MsoNormal"><u></u></p>
<p class="MsoNormal">Thoughts?<u></u><u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal">Regards.<u></u><u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal">Todd Snider<u></u><u></u></p>
<p class="MsoNormal">Texas Instruments Incorporated<u></u><u></u></p>
</div>
</div>

_______________________________________________<br>
LLVM Developers mailing list<br>
<a href="mailto:llvm-dev@lists.llvm.org" target="_blank">llvm-dev@lists.llvm.org</a><br>
<a href="https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev" rel="noreferrer" target="_blank">https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev</a><br>
</blockquote></div><br clear="all"><div><br></div>-- <br><div dir="ltr" class="gmail_signature"><div dir="ltr"><div>Min-Yih Hsu</div><div>Ph.D Student in ICS Department, University of California, Irvine (UCI).<br></div></div></div></div>