https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105263
--- Comment #5 from CVS Commits <cvs-commit at gcc dot gnu.org> --- The releases/gcc-11 branch has been updated by Richard Biener <rgue...@gcc.gnu.org>: https://gcc.gnu.org/g:b2557f9081e5bf440abe3fc184cbdaea0447ec64 commit r11-10017-gb2557f9081e5bf440abe3fc184cbdaea0447ec64 Author: Richard Biener <rguent...@suse.de> Date: Wed Apr 13 14:53:40 2022 +0200 tree-optimization/105263 - reassoc and DFP reassoc has certain tricks which in the end depend on the ability to undo them. For DFP creating a -1. constant is easy but re-identifying is appearantly not - real_minus_onep rejects those outright for DFP. So we have to disable (at least) this one trick. 2022-04-13 Richard Biener <rguent...@suse.de> PR tree-optimization/105263 * tree-ssa-reassoc.c (try_special_add_to_ops): Do not consume negates in multiplication chains with DFP. * gcc.dg/pr105263.c: New testcase. (cherry picked from commit ca145c6306f19272ac8756d88c4eba0bfdf01dfb)