https://gcc.gnu.org/bugzilla/show_bug.cgi?id=97071
--- Comment #5 from Richard Biener <rguenth at gcc dot gnu.org> --- Related and more difficult case where the add is first and we'd want to change the load of -3 to a load of 3 so we can CSE the 3 for the multiplication. double foo (double x) { return (x + -3.) * 3.; }