https://gcc.gnu.org/bugzilla/show_bug.cgi?id=80453
--- Comment #6 from Jakub Jelinek <jakub at gcc dot gnu.org> --- So, for the #c0 testcase with r246965 reverted on x86_64-linux, the ugly thing is that -fdump-tree-all makes the -fcompare-debug failure go away, but trying individual -fdump-tree-* usually works. The retslot dump is still pretty much the same except for added DEBUG stmts and some minor changes in decl uids (that is fine), but fre3 already in one function has different number of basic blocks and major changes like that. The first change in -fdump-tree-fre3-all when I ignore decl numbers, # DEBUG stmts and <Tnnnnn> differences is: Value numbering iftmp.63_180 stmt = iftmp.63_180 = PHI <iftmp.63_175(75), iftmp.63_179(76)> -Setting value number of iftmp.63_180 to iftmp.63_169 (changed) +Setting value number of iftmp.63_180 to iftmp.63_73 (changed) Starting iteration 2 Value numbering iftmp.63_180 stmt = iftmp.63_180 = PHI <iftmp.63_175(75), iftmp.63_179(76)> -Setting value number of iftmp.63_180 to iftmp.63_169 +Setting value number of iftmp.63_180 to iftmp.63_73 Processing SCC needed 2 iterations Visiting control stmt ending BB 77: if (iftmp.63_73 == iftmp.63_180) -Visiting BB 78 -Recording temporarily iftmp.63_73 eq_expr iftmp.63_180 == false -Recording temporarily iftmp.63_73 ne_expr iftmp.63_180 == true +Applying pattern match.pd:2342, gimple-match.c:6143 +Marking all edges out of BB 77 but (77 -> 79) as not executable +Marking all outgoing edges of unreachable BB 78 as not executable Visiting BB 79