aboutsummaryrefslogtreecommitdiff
path: root/gcc/dse.c
diff options
context:
space:
mode:
authorJakub Jelinek <jakub@redhat.com>2019-07-16 13:37:05 +0200
committerJakub Jelinek <jakub@gcc.gnu.org>2019-07-16 13:37:05 +0200
commit7f5ddfcb3cb9e5d89d08e08d2a3aaed948aaf1af (patch)
tree6a05505129d512cd2a580e44b5462b7ea8038bb0 /gcc/dse.c
parentf6bbf1ca1d4f8f81b5fd439a36318079f7fa73a8 (diff)
downloadgcc-7f5ddfcb3cb9e5d89d08e08d2a3aaed948aaf1af.zip
gcc-7f5ddfcb3cb9e5d89d08e08d2a3aaed948aaf1af.tar.gz
gcc-7f5ddfcb3cb9e5d89d08e08d2a3aaed948aaf1af.tar.bz2
re PR rtl-optimization/91164 (ICE in verify_dominators, at dominance.c:1184 (error: dominator of 114 should be 112, not 16))
PR rtl-optimization/91164 * dse.c (rest_of_handle_dse): If dead edges have been purged, invalidate dominance info. * g++.dg/opt/pr91164.C: New test. From-SVN: r273522
Diffstat (limited to 'gcc/dse.c')
-rw-r--r--gcc/dse.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/gcc/dse.c b/gcc/dse.c
index a1c7e3b..8d7358d 100644
--- a/gcc/dse.c
+++ b/gcc/dse.c
@@ -3621,7 +3621,10 @@ rest_of_handle_dse (void)
if ((locally_deleted || globally_deleted)
&& cfun->can_throw_non_call_exceptions
&& purge_all_dead_edges ())
- cleanup_cfg (0);
+ {
+ free_dominance_info (CDI_DOMINATORS);
+ cleanup_cfg (0);
+ }
return 0;
}