[PATCH] Added InstCombine transform for pattern "(A & B) ^ (A ^ B) -> (A | B)"

Duncan P. N. Exon Smith dexonsmith at apple.com
Tue Jul 22 11:10:33 PDT 2014


That will definitely make other reviews easier, but I can confirm this
one is correct.

LGTM.

> On 2014-Jul-22, at 10:49, suyog sarda <sardask01 at gmail.com> wrote:
> 
> Hi Sean,
> 
> Thanks for the link. I will try to include links for identities in future as well as any patch which are under review.
> It might take some time for me to get accustomed to it, but i will try it out.
> 
> Thanks a lot :)
> 
> 
> On Tue, Jul 22, 2014 at 11:10 PM, Sean Silva <chisophugis at gmail.com> wrote:
> Hi Suyog,
> 
> In the future, if it's not too much trouble, could you please include a link like http://rise4fun.com/Z3/Evslo along with any identities just to verify that no errors are slipping through? It's an easy way to save the reviewer some head scratching and increase confidence in correctness.
> 
> Z3 is pretty easy to use and has a good tutorial http://rise4fun.com/Z3/tutorial/guide . You don't need to read all of it, just skip to the "bit vectors" section for the list of operations and just reuse the boilerplate in my link. Basically, if your identity is "foo == bar", then what you ask Z3 to do is check that the statement "foo != bar" is unsatisfiable. The online Z3 "permalink" feature is what gives you a URL like the above.
> 
> (The lisp syntax is kind of annoying, but it's workable; they used to have a Python version that was more syntactically convenient, but I can't seem to find it)
> 
> http://reviews.llvm.org/D4618
> 
> 
> 
> _______________________________________________
> llvm-commits mailing list
> llvm-commits at cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
> 
> 
> 
> -- 
> With regards,
> Suyog Sarda




More information about the llvm-commits mailing list