Commit 592a6d1d by Jan Hubicka Committed by Jan Hubicka

* combine.c (try_combine): Avoid barrier after noop jumps

From-SVN: r44470
parent 60e19e8b
Mon Jul 30 12:52:11 CEST 2001 Jan Hubicka <jh@suse.cz>
* combine.c (try_combine): Avoid barrier after noop jumps.
2001-07-29 Neil Booth <neil@cat.daikokuya.demon.co.uk>
* cpphash.h (struct cpp_reader): Remove import_warning.
......
......@@ -2763,10 +2763,7 @@ try_combine (i3, i2, i1, new_direct_jump_p)
BARRIER following it since it may have initially been a
conditional jump. It may also be the last nonnote insn. */
if (GET_CODE (newpat) == RETURN || any_uncondjump_p (i3)
|| (GET_CODE (newpat) == SET
&& SET_SRC (newpat) == pc_rtx
&& SET_DEST (newpat) == pc_rtx))
if (GET_CODE (newpat) == RETURN || any_uncondjump_p (i3))
{
*new_direct_jump_p = 1;
......@@ -2774,6 +2771,12 @@ try_combine (i3, i2, i1, new_direct_jump_p)
|| GET_CODE (temp) != BARRIER)
emit_barrier_after (i3);
}
/* An NOOP jump does not need barrier, but it does need cleaning up
of CFG. */
if (GET_CODE (newpat) == SET
&& SET_SRC (newpat) == pc_rtx
&& SET_DEST (newpat) == pc_rtx)
*new_direct_jump_p = 1;
}
combine_successes++;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment