https://gcc.gnu.org/bugzilla/show_bug.cgi?id=81396
--- Comment #7 from Jakub Jelinek <jakub at gcc dot gnu.org> --- Author: jakub Date: Mon Jul 17 08:14:16 2017 New Revision: 250257 URL: https://gcc.gnu.org/viewcvs?rev=250257&root=gcc&view=rev Log: PR tree-optimization/81396 * tree-ssa-math-opts.c (struct symbolic_number): Add n_ops field. (init_symbolic_number): Initialize it to 1. (perform_symbolic_merge): Add n_ops from both operands into the new n_ops. (find_bswap_or_nop): Don't consider n->n == cmpnop computations without base_addr as useless if they need more than one operation. (bswap_replace): Handle !bswap case for NULL base_addr. * gcc.dg/tree-ssa/pr81396.c: New test. Added: trunk/gcc/testsuite/gcc.dg/tree-ssa/pr81396.c Modified: trunk/gcc/ChangeLog trunk/gcc/testsuite/ChangeLog trunk/gcc/tree-ssa-math-opts.c