https://gcc.gnu.org/bugzilla/show_bug.cgi?id=110748
--- Comment #13 from Andrew Pinski <pinskia at gcc dot gnu.org> --- You could also look at how aarch64 implemented a similar thing (not just for -0.0 but for many other constants too): r8-2248-ga217096563e356fa03c .