diff options
author | Tom de Vries <tom@codesourcery.com> | 2017-07-03 07:20:49 +0000 |
---|---|---|
committer | Tom de Vries <tom@codesourcery.com> | 2017-07-03 07:20:49 +0000 |
commit | 48df7e69190f6f7f9a825269225e534246b845ce (patch) | |
tree | 6b9e26dc612c92752cb02a9f4d674fe6ced5563f /gcc/tree-ssa-tail-merge.c | |
parent | af67cc4b12765cb51f345bf2752ce5150f77ce4f (diff) |
Fix sigsegv in find_same_succ_bb
2017-07-03 Tom de Vries <tom@codesourcery.com>
PR tree-optimization/81192
* tree-ssa-tail-merge.c (same_succ_flush_bb): Handle
BB_SAME_SUCC (bb) == NULL.
* gcc.dg/pr81192.c: New test.
git-svn-id: https://gcc.gnu.org/svn/gcc/trunk@249893 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/tree-ssa-tail-merge.c')
-rw-r--r-- | gcc/tree-ssa-tail-merge.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/gcc/tree-ssa-tail-merge.c b/gcc/tree-ssa-tail-merge.c index db836f7187f..e88072c1836 100644 --- a/gcc/tree-ssa-tail-merge.c +++ b/gcc/tree-ssa-tail-merge.c @@ -809,6 +809,9 @@ static void same_succ_flush_bb (basic_block bb) { same_succ *same = BB_SAME_SUCC (bb); + if (! same) + return; + BB_SAME_SUCC (bb) = NULL; if (bitmap_single_bit_set_p (same->bbs)) same_succ_htab->remove_elt_with_hash (same, same->hashval); |