re PR rtl-optimization/40086 (cris-elf gfortran.dg/forall_1.f90 -O1 execution)

PR rtl-optimization/40086
	* reorg.c (relax_delay_slots): When looking for redundant insn at
	the branch target, use next_real_insn, not next_active_insn.

From-SVN: r154751
This commit is contained in:
Hans-Peter Nilsson 2009-11-30 07:13:21 +00:00 committed by Hans-Peter Nilsson
parent 360d4522c4
commit da55c6dac1
2 changed files with 11 additions and 2 deletions

View File

@ -1,3 +1,9 @@
2009-11-30 Hans-Peter Nilsson <hp@axis.com>
PR rtl-optimization/40086
* reorg.c (relax_delay_slots): When looking for redundant insn at
the branch target, use next_real_insn, not next_active_insn.
2009-11-30 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
* doc/install.texi: Update minimum MPC version to 0.8.

View File

@ -3506,8 +3506,11 @@ relax_delay_slots (rtx first)
}
/* If the first insn at TARGET_LABEL is redundant with a previous
insn, redirect the jump to the following insn process again. */
trial = next_active_insn (target_label);
insn, redirect the jump to the following insn and process again.
We use next_real_insn instead of next_active_insn so we
don't skip USE-markers, or we'll end up with incorrect
liveness info. */
trial = next_real_insn (target_label);
if (trial && GET_CODE (PATTERN (trial)) != SEQUENCE
&& redundant_insn (trial, insn, 0)
&& ! can_throw_internal (trial))