https://gcc.gnu.org/bugzilla/show_bug.cgi?id=90178
--- Comment #6 from H.J. Lu <hjl.tools at gmail dot com> --- (In reply to H.J. Lu from comment #3) > It is caused by r266358. The nop INSN can be removed by split_all_insns later: if (INSN_P (insn)) { rtx set = single_set (insn); /* Don't split no-op move insns. These should silently disappear later in final. Splitting such insns would break the code that handles LIBCALL blocks. */ if (set && set_noop_p (set)) { /* Nops get in the way while scheduling, so delete them now if register allocation has already been done. It is too risky to try to do this before register allocation, and there are unlikely to be very many nops then anyways. */ if (reload_completed) delete_insn_and_edges (insn);