From 98181563dc4c65c9d23eaa99134e18876b6ec671 Mon Sep 17 00:00:00 2001 From: Jeff Law Date: Fri, 24 Jan 2020 17:44:10 -0500 Subject: Fix ICE due to invalid jump threading request PR tree-optimization/92788 * tree-ssa-threadedge.c (thread_across_edge): Check EDGE_COMPLEX not EDGE_ABNORMAL. PR tree-optimization/92788 * g++.dg/pr92788.C: New test. --- gcc/tree-ssa-threadedge.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'gcc/tree-ssa-threadedge.c') diff --git a/gcc/tree-ssa-threadedge.c b/gcc/tree-ssa-threadedge.c index 35440b0..c7c0821 100644 --- a/gcc/tree-ssa-threadedge.c +++ b/gcc/tree-ssa-threadedge.c @@ -1323,7 +1323,7 @@ thread_across_edge (gcond *dummy_cond, /* If E->dest has abnormal outgoing edges, then there's no guarantee we can safely redirect any of the edges. Just punt those cases. */ FOR_EACH_EDGE (taken_edge, ei, e->dest->succs) - if (taken_edge->flags & EDGE_ABNORMAL) + if (taken_edge->flags & EDGE_COMPLEX) { const_and_copies->pop_to_marker (); avail_exprs_stack->pop_to_marker (); -- cgit v1.1