https://gcc.gnu.org/bugzilla/show_bug.cgi?id=93131
--- Comment #19 from Andrew Pinski <pinskia at gcc dot gnu.org> --- (In reply to Jakub Jelinek from comment #17) > Dunno about others, but this particular optimization could be done in a new > function called next to optimize_range_tests_cmp_bitwise and > optimize_range_tests_var_bound because reassoc already has a framework to > deal with the && and || across different bbs as well as inside of them. ok, I will take a look in a little bit. But yes this is much better. I did not realize reassoc added this support yet. It is not mentioned in the comment in the begining of the file either :).