Commit ef3e9886 by Richard Henderson Committed by Richard Henderson

cfgcleanup.c (try_optimize_cfg): Allow merging of tablejumps before flow2.

        * cfgcleanup.c (try_optimize_cfg): Allow merging of tablejumps
        before flow2.
        * cfgrtl.c (try_redirect_by_replacing_jump): Similarly.

From-SVN: r64754
parent ac514408
2003-03-23 Richard Henderson <rth@redhat.com> 2003-03-23 Richard Henderson <rth@redhat.com>
* cfgcleanup.c (try_optimize_cfg): Allow merging of tablejumps
before flow2.
* cfgrtl.c (try_redirect_by_replacing_jump): Similarly.
2003-03-23 Richard Henderson <rth@redhat.com>
PR opt/10116 PR opt/10116
* ifcvt.c (find_if_block): Disallow tablejump insns outgoing * ifcvt.c (find_if_block): Disallow tablejump insns outgoing
from then_bb or else_bb after flow2. from then_bb or else_bb after flow2.
......
...@@ -1791,7 +1791,9 @@ try_optimize_cfg (mode) ...@@ -1791,7 +1791,9 @@ try_optimize_cfg (mode)
/* If the jump insn has side effects, /* If the jump insn has side effects,
we can't kill the edge. */ we can't kill the edge. */
&& (GET_CODE (b->end) != JUMP_INSN && (GET_CODE (b->end) != JUMP_INSN
|| simplejump_p (b->end)) || (flow2_completed
? simplejump_p (b->end)
: onlyjump_p (b->end)))
&& (next = merge_blocks (s, b, c, mode))) && (next = merge_blocks (s, b, c, mode)))
{ {
b = next; b = next;
......
...@@ -684,7 +684,7 @@ try_redirect_by_replacing_jump (e, target) ...@@ -684,7 +684,7 @@ try_redirect_by_replacing_jump (e, target)
if (tmp || !onlyjump_p (insn)) if (tmp || !onlyjump_p (insn))
return false; return false;
if (reload_completed && JUMP_LABEL (insn) if (flow2_completed && JUMP_LABEL (insn)
&& (table = NEXT_INSN (JUMP_LABEL (insn))) != NULL_RTX && (table = NEXT_INSN (JUMP_LABEL (insn))) != NULL_RTX
&& GET_CODE (table) == JUMP_INSN && GET_CODE (table) == JUMP_INSN
&& (GET_CODE (PATTERN (table)) == ADDR_VEC && (GET_CODE (PATTERN (table)) == ADDR_VEC
......
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