flow.c (flow_find_cross_jump): Don't consider unconditional return insns for commoning.

* flow.c (flow_find_cross_jump): Don't consider unconditional
        return insns for commoning.

From-SVN: r45101
This commit is contained in:
Richard Henderson 2001-08-22 01:13:00 -07:00 committed by Richard Henderson
parent ba7129555a
commit 687eccc06e
2 changed files with 7 additions and 2 deletions

View file

@ -1,5 +1,8 @@
2001-08-21 Richard Henderson <rth@redhat.com>
* flow.c (flow_find_cross_jump): Don't consider unconditional
return insns for commoning.
* final.c (compute_alignments): Fix typo.
* expmed.c (CODE_FOR_insv, gen_insv): Provide defaults.

View file

@ -3484,10 +3484,12 @@ flow_find_cross_jump (mode, bb1, bb2, f1, f2)
need to be compared for equivalence, which we'll do below. */
i1 = bb1->end;
if (onlyjump_p (i1))
if (onlyjump_p (i1)
|| (returnjump_p (i1) && !side_effects_p (PATTERN (i1))))
i1 = PREV_INSN (i1);
i2 = bb2->end;
if (onlyjump_p (i2))
if (onlyjump_p (i2)
|| (returnjump_p (i2) && !side_effects_p (PATTERN (i2))))
i2 = PREV_INSN (i2);
last1 = afterlast1 = last2 = afterlast2 = NULL_RTX;