diff options
author | Vladimir Makarov <vmakarov@redhat.com> | 2014-11-09 16:45:15 +0000 |
---|---|---|
committer | Vladimir Makarov <vmakarov@gcc.gnu.org> | 2014-11-09 16:45:15 +0000 |
commit | 8160cd3ee4a5840db17416092f2d808187b7e872 (patch) | |
tree | 1cde2f4fc77823a9e058d48a80d31252d0b0cc29 /libgfortran/io/unit.c | |
parent | 205e92689198d4718a07adfb0077821cfa93e761 (diff) | |
download | gcc-8160cd3ee4a5840db17416092f2d808187b7e872.zip gcc-8160cd3ee4a5840db17416092f2d808187b7e872.tar.gz gcc-8160cd3ee4a5840db17416092f2d808187b7e872.tar.bz2 |
re PR rtl-optimization/63620 (RELOAD lost SET_GOT dependency on Darwin)
2014-11-09 Vladimir Makarov <vmakarov@redhat.com>
PR rtl-optimization/63620
* lra-constraints.c (substitute_pseudo): Add prefix lra_ to the
name. Move to lra.c. Make it external.
(substitute_pseudo_within_insn): Ditto.
(inherit_reload_reg, split_reg, remove_inheritance_pseudos): Use
the new names.
(undo_optional_reloads): Ditto.
* lra-int.h (lra_dump_bitmap_with_title, lra_substitute_pseudo):
New prototypes.
(lra_substitute_pseudo_within_insn): Ditto.
* lra-lives.c (bb_killed_pseudos, bb_gen_pseudos): New.
(mark_regno_live): Add parameter. Update bb_gen_pseudos.
(mark_regno_dead): Add parameter. Update bb_gen_pseudos and
bb_killed_pseudos.
(struct bb_data, bb_data_t, bb_data): New.
(get_bb_data, get_bb_data_by_index): Ditto.
(all_hard_regs_bitmap): New.
(live_trans_fun, live_con_fun_0, live_con_fun_n, all_blocks): New.
(initiate_live_solver, finish_live_solver): New.
(process_bb_lives): Change return type. Add code updating local
live data and removing dead insns. Pass new argument to
mark_regno_live and mark_regno_dead. Check changing bb pseudo
life info. Return the result.
(lra_create_live_ranges): Add code to do global pseudo live
analysis.
(lra_live_ranges_init): Call initiate_live_solver.
(lra_live_ranges_finish): Call finish_live_solver.
* lra.c (lra_dump_bitmap_with_title): New.
(lra_substitute_pseudo, lra_substitute_pseudo_within_insn): Move
from lra-constraints.c.
From-SVN: r217265
Diffstat (limited to 'libgfortran/io/unit.c')
0 files changed, 0 insertions, 0 deletions