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

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

           What    |Removed                     |Added
----------------------------------------------------------------------------
      Known to work|                            |15.0
   Target Milestone|15.0                        |14.2
            Summary|[15 Regression] ICE on      |[14 Regression] ICE on
                   |valid code at -O3 with      |valid code at -O3 with
                   |"-fno-inline -fno-tree-vrp  |"-fno-inline -fno-tree-vrp
                   |-fno-ipa-sra -fno-tree-dce  |-fno-ipa-sra -fno-tree-dce
                   |-fno-tree-ch" on            |-fno-tree-ch" on
                   |x86_64-linux-gnu:           |x86_64-linux-gnu:
                   |verify_ssa failed           |verify_ssa failed

--- Comment #4 from Richard Biener <rguenth at gcc dot gnu.org> ---
OK, so the issue is that the endless loop is a CFG sink that doesn't enforce a
VUSE so we "miss" virtual PHIs in BB 13 and BB 14 and that makes sinking
think it doesn't need to update VOPs.  This is a latent issue and IMO
a design bug of the virtual SSA net.  sinking now employs VOP_LIVE but
even that doesn't handle this situation because of a bug.  I'm testing a fix.

Fixed on trunk, queued for backporting.

Reply via email to