an edge to the new destination block.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@152310
138bc75d-0d04-0410-961f-
82ee72b054a4
+2009-09-29 Richard Henderson <rth@redhat.com>
+
+ * tree-eh.c (unsplit_eh): Do not unsplit if there's already
+ an edge to the new destination block.
+
2009-09-29 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
PR target/41393
return false;
}
+ /* The new destination block must not already be a destination of
+ the source block, lest we merge fallthru and eh edges and get
+ all sorts of confused. */
+ if (find_edge (e_in->src, e_out->dest))
+ return false;
+
/* ??? I can't imagine there would be PHI nodes, since by nature
of critical edge splitting this block should never have been
a dominance frontier. If cfg cleanups somehow confuse this,