Commit f926a256 by Jeffrey A Law Committed by Jeff Law

ifcvt.c (merge_if_block): Use any_uncondjump_p...

        * ifcvt.c (merge_if_block): Use any_uncondjump_p, not simplejump_p
        to determine if a block has an unconditional jump at its end.

        * jump.c (jump_optimize_1): When converting a conditional jump
        to an unconditional jump, build the jump using gen_jump instead
        of just modify operands in-place.

From-SVN: r41939
parent 8850521b
Thu May 10 09:17:42 2001 Jeffrey A Law (law@cygnus.com)
* ifcvt.c (merge_if_block): Use any_uncondjump_p, not simplejump_p
to determine if a block has an unconditional jump at its end.
* jump.c (jump_optimize_1): When converting a conditional jump
to an unconditional jump, build the jump using gen_jump instead
of just modify operands in-place.
2001-05-09 Zack Weinberg <zackw@stanford.edu>
* cppinit.c (cpp_post_options): Shut off macro expansion if
......
......@@ -1745,7 +1745,7 @@ merge_if_block (test_bb, then_bb, else_bb, join_bb)
/* There should sill be a branch at the end of the THEN or ELSE
blocks taking us to our final destination. */
if (! simplejump_p (combo_bb->end)
if (! any_uncondjump_p (combo_bb->end)
&& ! returnjump_p (combo_bb->end))
abort ();
}
......
......@@ -608,8 +608,9 @@ jump_optimize_1 (f, cross_jump, noop_moves, after_regscan,
do_cross_jump (insn, newjpos, newlpos);
/* Make the old conditional jump
into an unconditional one. */
SET_SRC (PATTERN (insn))
= gen_rtx_LABEL_REF (VOIDmode, JUMP_LABEL (insn));
PATTERN (insn)
= gen_jump (gen_rtx_LABEL_REF (VOIDmode,
JUMP_LABEL (insn)));
INSN_CODE (insn) = -1;
emit_barrier_after (insn);
/* Add to jump_chain unless this is a new label
......
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