https://gcc.gnu.org/bugzilla/show_bug.cgi?id=107569
--- Comment #46 from Jakub Jelinek <jakub at gcc dot gnu.org> --- And another possibility might be try to keep __builtin_unreachable () in the IL more often; in this testcase nothing from the __builtin_unreachable () is really visible in any global ranges, they all are the same without/with the __builtin_unreachable. So, can't we remove those just in final_p case and not otherwise? Dom would then be able to optimize this.