https://gcc.gnu.org/bugzilla/show_bug.cgi?id=94880
--- Comment #2 from CVS Commits <cvs-commit at gcc dot gnu.org> --- The master branch has been updated by Alex Coplan <acop...@gcc.gnu.org>: https://gcc.gnu.org/g:e0bfe016712ace877dd5b057bc1eb06e3c307623 commit r11-1558-ge0bfe016712ace877dd5b057bc1eb06e3c307623 Author: Przemyslaw Wirkus <przemyslaw.wir...@arm.com> Date: Fri Jun 19 16:48:55 2020 +0100 Fix PR94880: Failure to recognize andn pattern Pattern "(x | y) - y" can be optimized to simple "(x & ~y)" andn pattern. Bootstrapped and tested on aarch64-none-linux-gnu. 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.