https://gcc.gnu.org/bugzilla/show_bug.cgi?id=100254
--- Comment #7 from CVS Commits <cvs-commit at gcc dot gnu.org> --- The releases/gcc-10 branch has been updated by Jakub Jelinek <ja...@gcc.gnu.org>: https://gcc.gnu.org/g:5a79a9043c2c8e07ab3165437a93d54cbbc9890d commit r10-9793-g5a79a9043c2c8e07ab3165437a93d54cbbc9890d Author: Jakub Jelinek <ja...@redhat.com> Date: Tue Apr 27 15:26:24 2021 +0200 cfgcleanup: Fix -fcompare-debug issue in outgoing_edges_match [PR100254] The following testcase fails with -fcompare-debug. The problem is that outgoing_edges_match behaves differently between -g0 and -g, if some load/store with REG_EH_REGION is followed by DEBUG_INSNs, the REG_EH_REGION check is not done, while when there are no DEBUG_INSNs, it is done. We already compute last1 and last2 as BB_END (bb{1,2}) with skipped debug insns and notes, so this patch just uses those. 2021-04-27 Jakub Jelinek <ja...@redhat.com> PR rtl-optimization/100254 * cfgcleanup.c (outgoing_edges_match): Check REG_EH_REGION on last1 and last2 insns rather than BB_END (bb1) and BB_END (bb2) insns. * g++.dg/opt/pr100254.C: New test. (cherry picked from commit e600df51a15b2ec7a72731921a2464ffe59cf5ab)