[Bug tree-optimization/91355] [8/9/10 Regression] optimized code does not call destructor while unwinding after exception

jakub at gcc dot gnu.org gcc-bugzilla@gcc.gnu.org
Wed Nov 20 13:00:00 GMT 2019


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

--- Comment #4 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
bb 10 into which it is sunk has been created by split_critical_edges, although
the edge from the resx 4; bb to the landing pad is not critical, there is:
          /* PRE inserts statements to edges and expects that
             since split_critical_edges was done beforehand, committing edge
             insertions will not split more edges.  In addition to critical
             edges we must split edges that have multiple successors and
             end by control flow statements, such as RESX.
             Go ahead and split them too.  This matches the logic in
             gimple_find_edge_insert_loc.  */


More information about the Gcc-bugs mailing list