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

Richard Biener <rguenth at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |hubicka at gcc dot gnu.org,
                   |                            |rguenth at gcc dot gnu.org

--- Comment #2 from Richard Biener <rguenth at gcc dot gnu.org> ---
I think this should be done in the CFG cleanup stage - the whole point of
defering CFG updates is so that passes need not worry about such things as
profile updates.

I see how it's convenient to be able to use the EDGE_EXECUTABLE flag from
within FRE/PRE to see whether the loop still iterates, but as you figured
when FRE doesn't run in 'iterate' mode we do not have loops arranged to
have only a single latch.

You definitely want to guard the update with && !do_region since otherwise
you do O(function-size) work (in practice we don't support iteration in region
mode).

Reply via email to