https://gcc.gnu.org/bugzilla/show_bug.cgi?id=90813
Michael Meissner <meissner at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |meissner at gcc dot gnu.org --- Comment #19 from Michael Meissner <meissner at gcc dot gnu.org> --- Power8 fusion is meant to transform: ADDIS tmp,2,foo@toc@ha LD reg,foo@toc@l(tmp) into: ADDIS reg,2,foo@toc@ha LD reg,foo@toc@l(reg) I.e. instead of using a random register for the upper 16-bits, it uses the same register that is being loaded. I haven't looked into detail at why this is failing.