https://gcc.gnu.org/bugzilla/show_bug.cgi?id=121762
--- Comment #3 from Andrew Pinski <pinskia at gcc dot gnu.org> --- >BUILT_IN_UNREACHABLE -> forwprop with late set I am not even positive this is needed any more can be just removed. So basically both VRP and DOM do something about this. DOM does it via dom_opt_dom_walker::set_global_ranges_from_unreachable_edges . And then VRP cleans up the edge. VRP does it via m_unreachable.maybe_register . Let me think about this and try to remove it.