This is the mail archive of the gcc-bugs@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Bug rtl-optimization/88018] [8/9 Regression] ICE in insert_insn_on_edge at cfgrtl.c:1952 since r255066


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

Jakub Jelinek <jakub at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |ASSIGNED
                 CC|                            |jakub at gcc dot gnu.org
           Assignee|unassigned at gcc dot gnu.org      |jakub at gcc dot gnu.org
     Ever confirmed|0                           |1

--- Comment #1 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
A latent issue before that I guess.

The problem is we have a call which can throw, isn't marked noreturn, but is
followed by __builtin_unreachable () call.  In RTL that is represented by the
bb having just EH edge and no fallthru edge.

The stack pass emits some insn(s) after such a call and calls
fixup_abnormal_edges to fix that up.  fixup_abnormal_edges relies on the
presence of the fallthru edge though.  I guess easiest would be just delete
those insns and not insert them on the fallthru edge (which doesn't exist).

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]