https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64853

--- Comment #2 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
I think the problem is that:


Visiting statement:
_15 = _56 & 1;
Applying pattern match.pd:312, gimple-match.c:13772
Applying pattern match.pd:235, gimple-match.c:13525
Match-and-simplified _56 & 1 to 0
Intersecting
  [0, 0]
and
  [0, 1]
to
  [0, 0]
Found new range for _15: [0, 0]


might be reasonable during iteration, when not yet considering the backedge as
executable, but we actually never visit this statement again, perhaps due to
match-and-simplify looking at earlier statements.  Richard, can you please have
a look?

Reply via email to