[llvm-dev] InstCombine, graph rewriting, Equality saturation

Siddharth Bhat via llvm-dev llvm-dev at lists.llvm.org
Thu Sep 7 10:52:39 PDT 2017


Thanks for the response.

Should I create a small prototype of equality saturation as an LLVM pass so
that there can be some concrete discussion on this? I'd love pointers.

Thanks,
Siddharth

On Wed 6 Sep, 2017, 23:35 John Regehr via llvm-dev <llvm-dev at lists.llvm.org>
wrote:

> Equality saturation is very cool work and Ross Tate mentioned to me that
> he'd be happy to chat with you about this.
>
> But also, you might take a look at some existing projects in this
> general space that are already integrated with LLVM, such as Souper and
> Alive.
>
> InstCombine is pretty cool but developing techniques to build these
> things automatically is awesome and on my wish list. There's potential
> for improvements in all of: speed, code quality, and correctness.
>
> While we're on the subject: Are the canonicalization rules for LLVM IR
> documented anywhere?
>
> Thanks,
>
> John
>
>
> https://github.com/google/souper
> https://github.com/nunoplopes/alive
>
>
>
> On 9/5/17 4:57 PM, (IIIT) Siddharth Bhat via llvm-dev wrote:
> > Hello all,
> >
> > I've seen some discussion that InstCombine is "too general" and that
> > llvm should implement a proper graph rewrite mechanism:
> >
> > Link to llvm-dev discussion about
> > this: http://lists.llvm.org/pipermail/llvm-dev/2017-May/113219.html,
> > Link to review where this came up (and I first heard about
> > it): https://reviews.llvm.org/D37195.
> >
> > I wanted to understand what the current issues with InstCombine are, and
> > if a graph rewriter prototype is something people are interested in. I
> > find the idea appealing, from what little I know it, so I'd be
> > interested in hacking something up.
> >
> > What would such a framework look like? Is there past literature on the
> > subject? From what I know, many functional compilers using combinator
> > based compilation were graph rewriting. Is there other prior art?
> >
> > Also, there is the idea of Equality Saturation
> > (http://www.cs.cornell.edu/~ross/publications/eqsat/) that I found out
> > about recently. Could this be used to augment the InstCombine
> > infrastructure?
> >
> > Thanks,
> > ~Siddharth
> >
> > --
> > Sending this from my phone, please excuse any typos!
> >
> >
> > _______________________________________________
> > LLVM Developers mailing list
> > llvm-dev at lists.llvm.org
> > http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev
> >
> _______________________________________________
> LLVM Developers mailing list
> llvm-dev at lists.llvm.org
> http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev
>
-- 
Sending this from my phone, please excuse any typos!
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20170907/bff5911c/attachment-0001.html>


More information about the llvm-dev mailing list