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
This commit is contained in:
parent
ac514408f6
commit
ef3e988690
|
@ -1,3 +1,9 @@
|
|||
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
|
||||
|
|
|
@ -1791,7 +1791,9 @@ try_optimize_cfg (mode)
|
|||
/* If the jump insn has side effects,
|
||||
we can't kill the edge. */
|
||||
&& (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)))
|
||||
{
|
||||
b = next;
|
||||
|
|
|
@ -684,7 +684,7 @@ try_redirect_by_replacing_jump (e, target)
|
|||
|
||||
if (tmp || !onlyjump_p (insn))
|
||||
return false;
|
||||
if (reload_completed && JUMP_LABEL (insn)
|
||||
if (flow2_completed && JUMP_LABEL (insn)
|
||||
&& (table = NEXT_INSN (JUMP_LABEL (insn))) != NULL_RTX
|
||||
&& GET_CODE (table) == JUMP_INSN
|
||||
&& (GET_CODE (PATTERN (table)) == ADDR_VEC
|
||||
|
|
Loading…
Reference in New Issue