From 9e94dc88d3ec245c45cfdb4575ccb6132bc9a207 Mon Sep 17 00:00:00 2001 From: Jim Wilson Date: Fri, 24 Feb 1995 18:40:03 -0800 Subject: [PATCH] (relax_delay_slots): When searching for next CODE_LABEL, use next_real_insn not next_active_insn. From-SVN: r9075 --- gcc/reorg.c | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/gcc/reorg.c b/gcc/reorg.c index 653c477235c..6c72f4c32af 100644 --- a/gcc/reorg.c +++ b/gcc/reorg.c @@ -3865,7 +3865,12 @@ relax_delay_slots (first) /* If this jump goes to another unconditional jump, thread it, but don't convert a jump into a RETURN here. */ trial = follow_jumps (target_label); - trial = prev_label (next_active_insn (trial)); + /* We use next_real_insn instead of next_active_insn, so that + the special USE insns emitted by reorg won't be ignored. + If they are ignored, then they will get deleted if target_label + is now unreachable, and that would cause mark_target_live_regs + to fail. */ + trial = prev_label (next_real_insn (trial)); if (trial == 0 && target_label != 0) trial = find_end_label (); -- 2.30.2