[llvm-dev] InstCombine, graph rewriting, Equality saturation (original) (raw)
John Regehr via llvm-dev llvm-dev at lists.llvm.org
Wed Sep 6 14:35:36 PDT 2017
- Previous message: [llvm-dev] InstCombine, graph rewriting, Equality saturation
- Next message: [llvm-dev] InstCombine, graph rewriting, Equality saturation
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
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
- Previous message: [llvm-dev] InstCombine, graph rewriting, Equality saturation
- Next message: [llvm-dev] InstCombine, graph rewriting, Equality saturation
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]