[Bug tree-optimization/54742] Switch elimination in FSM loop

law at redhat dot com gcc-bugzilla@gcc.gnu.org
Mon Mar 4 16:56:00 GMT 2013


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> 2013-03-04 16:55:27 UTC ---
WRT the second example in c#5.  See thread_across_edge where we refuse to
thread across a DFS_EDGE_BACK when one of the arguments in the conditional is
set in the block.

This is the equivalency problem I mentioned in IRC.

When you traverse the backedge, you have to be very careful because
equivalences created when you traversed from outside the loop into the loop are
no longer valid once you traverse the backedge.  Or at least that's my best
memory of the situation.

More information about the Gcc-bugs mailing list