https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105338
--- Comment #5 from Richard Biener <rguenth at gcc dot gnu.org> --- (In reply to Jakub Jelinek from comment #3) > Before fwprop1, the code looks roughly the same except for the swapped > branches, > so in C > if (tmp83 != 0) > tmp82 = 5; > else > tmp82 = tmp83; > vs. > if (tmp83 == 0) > tmp82 = tmp83; > else > tmp82 = 5; Specifically for this we could also look to canonicalize this in uncprop which introduces the copies, making sure to rewrite this into an equality compare?