https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88964
--- Comment #7 from Jakub Jelinek <jakub at gcc dot gnu.org> --- Actually no, with HONOR_SIGNED_ZEROS it shouldn't be optimized out. So, if we don't have other way how to make distinction between a normal chrec with step +0.0 and loop invariant var, we should punt at least for HONOR_SIGNED_ZEROS.