https://gcc.gnu.org/bugzilla/show_bug.cgi?id=89242
Bug ID: 89242 Summary: [7/8/9 Regression] ICE in verify_dominators, at dominance.c:1184 (error: dominator of 7 should be 5, not 2) Product: gcc Version: 9.0 Status: UNCONFIRMED Keywords: EH, ice-checking, ice-on-valid-code Severity: normal Priority: P3 Component: rtl-optimization Assignee: unassigned at gcc dot gnu.org Reporter: asolokha at gmx dot com Target Milestone: --- g++-9.0.0-alpha20190203 snapshot (r268503) ICEs when compiling gcc/testsuite/g++.dg/opt/pr47280.C w/ -O2 (-O3, -Ofast, -Os) -fdelete-dead-exceptions -fnon-call-exceptions -ftrapv -fno-rerun-cse-after-loop -fno-forward-propagate -fno-tree-loop-optimize: % g++-9.0.0-alpha20190203 -O2 -fdelete-dead-exceptions -fnon-call-exceptions -ftrapv -fno-rerun-cse-after-loop -fno-forward-propagate -fno-tree-loop-optimize -c gcc/testsuite/g++.dg/opt/pr47280.C gcc/testsuite/g++.dg/opt/pr47280.C: In function 'void bar(int, char*)': gcc/testsuite/g++.dg/opt/pr47280.C:14:1: error: dominator of 7 should be 5, not 2 14 | } | ^ during RTL pass: ce2 gcc/testsuite/g++.dg/opt/pr47280.C:14:1: internal compiler error: in verify_dominators, at dominance.c:1184 0x6b99b0 verify_dominators(cdi_direction) /var/tmp/portage/sys-devel/gcc-9.0.0_alpha20190203/work/gcc-9-20190203/gcc/dominance.c:1184 0xbbdcbe checking_verify_dominators /var/tmp/portage/sys-devel/gcc-9.0.0_alpha20190203/work/gcc-9-20190203/gcc/dominance.h:76 0xbbdcbe calculate_dominance_info(cdi_direction) /var/tmp/portage/sys-devel/gcc-9.0.0_alpha20190203/work/gcc-9-20190203/gcc/dominance.c:717 0xb52de2 flow_loops_find(loops*) /var/tmp/portage/sys-devel/gcc-9.0.0_alpha20190203/work/gcc-9-20190203/gcc/cfgloop.c:431 0xe0221e loop_optimizer_init(unsigned int) /var/tmp/portage/sys-devel/gcc-9.0.0_alpha20190203/work/gcc-9-20190203/gcc/loop-init.c:93 0x1820753 if_convert /var/tmp/portage/sys-devel/gcc-9.0.0_alpha20190203/work/gcc-9-20190203/gcc/ifcvt.c:5374 0x182315d execute /var/tmp/portage/sys-devel/gcc-9.0.0_alpha20190203/work/gcc-9-20190203/gcc/ifcvt.c:5553