------- Comment #13 from hp at gcc dot gnu dot org 2009-05-14 00:12 ------- By chance I stumbled upon an old fix I did some years ago in which I changed a use of next_active_insn to next_real insn (to avoid skipping USE insns). You can see it in comments referring to a now-deleted "main" use (the references gone stale). This PR is just the same bug in another place! I think I'll be going for the same solution; it will reduce the number of filled delay-slots or redirected jumps and removed redundant insns, but presumably safer as it will not include moving or duplicating the USE insns. It would also be solved by a reorg rewrite, in which USE insns wouldn't be sprinkled into the insn stream, sometimes ignored, sometimes incorrectly...
-- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=40086