(not a reviewer) It looks fine to me. Do we already handle the related (x|y)^y and (x|y)&~y ?
On Fri, 19 Jun 2020, Przemyslaw Wirkus wrote:
Hi all, Pattern "(x | y) - y" can be optimized to simple "(x & ~y)" andn pattern. Bootstrapped and tested on aarch64-none-linux-gnu. OK for master ? Cheers, Przemyslaw gcc/ChangeLog: PR tree-optimization/94880 * match.pd (A | B) - B -> (A & ~B): New simplification. gcc/testsuite/ChangeLog: PR tree-optimization/94880 * gcc.dg/tree-ssa/pr94880.c: New Test.
-- Marc Glisse