[llvm] r200067 - [LPM] Make LCSSA a utility with a FunctionPass that applies it to all

Chandler Carruth chandlerc at gmail.com
Mon Dec 15 13:15:03 PST 2014


On Mon, Dec 15, 2014 at 12:07 PM, Bruno Cardoso Lopes <
bruno.cardoso at gmail.com> wrote:
>
> On Mon, Dec 15, 2014 at 5:10 PM, Chandler Carruth <chandlerc at gmail.com>
> wrote:
> >
> > On Thu, Dec 11, 2014 at 12:07 PM, Bruno Cardoso Lopes
> > <bruno.cardoso at gmail.com> wrote:
> >>
> >> Do you recall any specific reason for commenting out this assertion?
> >> Compile time performance?
> >
> >
> > No, it fired constantly and everywhere. =/
> >
> > Back when I was hacking on this, the loop pass manager would invalidate
> > LCSSA form for loops outside of the specific layer of the loop nest it
> was
> > visiting, and thus this assert would trigger. I tried to fix many such
> > issues, but while I managed to fix everything I actually saw happen in
> the
> > wild, I wasn't able to turn it on without triggering rampant asserts.
>
> I see, I can imagine that happening very often indeed.
>
> >>
> >> I just sent out a patch to fix a issue in LCSSA and having this on
> >> would have catch that before, I was wondering about turning it on
> >> again.
> >
> >
> > Yea, it would be really nice to check this kind of stuff, but I'm quite
> > worried about how much it will end up firing in places that (today) don't
> > matter. I left the commented out assert it to help debug actual PRs that
> > came up in practice which ended up having to do with this. That said,
> fixes
> > here seem really good to have; if we could actually turn it on that
> would be
> > amazing.
>
> Cool, now that I know the reasons I'm aware of all the nightmare this
> can lead to.
> Will try it out and see what happens.
>
> Thanks for the detailed explanation :-)


Sure, but I wonder, is there a better way to document this? Having to dig
through commit history isn't exactly friendly.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20141215/0fc4700e/attachment.html>


More information about the llvm-commits mailing list