https://gcc.gnu.org/bugzilla/show_bug.cgi?id=81082
Richard Biener <rguenth at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |ASSIGNED Assignee|unassigned at gcc dot gnu.org |rguenth at gcc dot gnu.org --- Comment #5 from Richard Biener <rguenth at gcc dot gnu.org> --- So I think the solution will be to remove this transform from early folding and make reassoc do this transform - which it already can do, but only for unsigned arithmetic. I'll give teaching reassoc to operate on signed arithmetic a quick shot...