cfgrtl.c (try_redirect_by_replacing_jump): Optimize tablejumps even after reload, just don't remove the actual jump tables.
* cfgrtl.c (try_redirect_by_replacing_jump): Optimize tablejumps even after reload, just don't remove the actual jump tables. From-SVN: r76028
This commit is contained in:
parent
53dd3be37f
commit
ab530ea8b8
2 changed files with 7 additions and 2 deletions
|
@ -1,3 +1,8 @@
|
|||
2004-01-16 Geoffrey Keating <geoffk@apple.com>
|
||||
|
||||
* cfgrtl.c (try_redirect_by_replacing_jump): Optimize tablejumps
|
||||
even after reload, just don't remove the actual jump tables.
|
||||
|
||||
2004-01-17 J. Brobecker <brobecker@gnat.com>
|
||||
|
||||
* dwarf2out.c (is_subrange_type): Renamed from is_ada_subrange_type().
|
||||
|
|
|
@ -703,7 +703,7 @@ try_redirect_by_replacing_jump (edge e, basic_block target, bool in_cfglayout)
|
|||
|
||||
if (tmp || !onlyjump_p (insn))
|
||||
return false;
|
||||
if ((!optimize || reload_completed) && tablejump_p (insn, NULL, NULL))
|
||||
if ((!optimize || flow2_completed) && tablejump_p (insn, NULL, NULL))
|
||||
return false;
|
||||
|
||||
/* Avoid removing branch with side effects. */
|
||||
|
@ -793,7 +793,7 @@ try_redirect_by_replacing_jump (edge e, basic_block target, bool in_cfglayout)
|
|||
/* Recognize a tablejump that we are converting to a
|
||||
simple jump and remove its associated CODE_LABEL
|
||||
and ADDR_VEC or ADDR_DIFF_VEC. */
|
||||
if (tablejump_p (insn, &label, &table))
|
||||
if (! reload_completed && tablejump_p (insn, &label, &table))
|
||||
delete_insn_chain (label, table);
|
||||
|
||||
barrier = next_nonnote_insn (BB_END (src));
|
||||
|
|
Loading…
Add table
Reference in a new issue