https://gcc.gnu.org/bugzilla/show_bug.cgi?id=78633
--- Comment #18 from Jakub Jelinek <jakub at gcc dot gnu.org> --- If the original insn that has the op.set_src rtx in it is not removed by the splitter (which it seems it is not), and it is just expected to be removed during DCE later, then doing copy_rtx is the right thing to do there, sharing non-shareable RTXes between multiple instructions, even when it is just for a couple of passes, is invalid.