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

Jeffrey A. Law <law at redhat dot com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |law at redhat dot com

--- Comment #7 from Jeffrey A. Law <law at redhat dot com> ---
So I went and found pr68548 which is related, but clearly different.

Just thinking out loud here, I think we can pick up this missed jump thread by
recording _1 & 1 == 0 on the false edge of the first conditional (when we know
that _1 & 3 == 0).  It doesn't scale well in the general case, but when there's
just a few bits in the mask it might be reasonable.

That ought to allow us to determine that _4 == 0 when bb4 is reached via bb2
and thread the jump.  Not planning to look at any implementation for gcc-8
though.

Reply via email to