https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61481
Andrew Pinski <pinskia at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Resolution|--- |FIXED Status|NEW |RESOLVED Target Milestone|--- |10.0 --- Comment #4 from Andrew Pinski <pinskia at gcc dot gnu.org> --- The original testcase is all optimized in GCC 10. The second testcase is undefined and gets optimized down to __builtin_unreachable. File a well defined testcase for the other one and we can see what needs to be optimized. So closing as fixed for GCC 10, the late FRE which was added is exactly what optimizes this case.