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

--- Comment #8 from Andrew Pinski <pinskia at gcc dot gnu.org> ---
(In reply to Eric Botcazou from comment #7)
> > Does go use sjlj EH "manually"?  EH shouldn't result in EDGE_ABNORMAL ...
> 
> /* Strange flow, like a computed jump or exception handling.  Usually
>    this means that the edge cannot be split.  */
> DEF_EDGE_FLAG(ABNORMAL, 1)
> 
> rtl_make_eh_edge does set it for EH.

And even more, see EDGE_EH:
```
/* Exception edge.  Exception handling edges represent possible control
   transfers from a trapping instruction to an exception handler.
   EH edges also have ABNORMAL set for the RTL CFG.  */
DEF_EDGE_FLAG(EH, 3)

```
Specifically: "EH edges also have ABNORMAL set for the RTL CFG" :).

Reply via email to