common.opt (flra-remat): New.
2014-11-12 Vladimir Makarov <vmakarov@redhat.com> * common.opt (flra-remat): New. * opts.c (default_options_table): Add entry for flra_remat. * timevar_def (TV_LRA_REMAT): New. * doc/invoke.texi (-flra-remat): Add description of the new option. * doc/passes.texi (-flra-remat): Remove lra-equivs.c and lra-saves.c. Add lra-remat.c. * Makefile.in (OBJS): Add lra-remat.o. * lra-remat.c: New file. * lra.c: Add info about the rematerialization pass in the top comment. (collect_non_operand_hard_regs, add_regs_to_insn_regno_info): Process unallocatable regs too. (lra_constraint_new_insn_uid_start): Remove. (lra): Add code for calling rematerialization sub-pass. * lra-int.h (lra_constraint_new_insn_uid_start): Remove. (lra_constrain_insn, lra_remat): New prototypes. (lra_eliminate_regs_1): Add parameter. * lra-lives.c (make_hard_regno_born, make_hard_regno_dead): Process unallocatable hard regs too. (process_bb_lives): Ditto. * lra-spills.c (remove_pseudos): Add argument to lra_eliminate_regs_1 call. * lra-eliminations.c (lra_eliminate_regs_1): Add parameter. Use it for sp offset calculation. (lra_eliminate_regs): Add argument for lra_eliminate_regs_1 call. (eliminate_regs_in_insn): Add parameter. Use it for sp offset calculation. (process_insn_for_elimination): Add argument for eliminate_regs_in_insn call. * lra-constraints.c (get_equiv_with_elimination): Add argument for lra_eliminate_regs_1 call. (process_addr_reg): Add parameter. Use it. (process_address_1): Ditto. Add argument for process_addr_reg call. (process_address): Ditto. (curr_insn_transform): Add parameter. Use it. Add argument for process_address calls. (lra_constrain_insn): New function. (lra_constraints): Add argument for curr_insn_transform call. From-SVN: r217458
Showing
- gcc/ChangeLog 43 additions, 0 deletionsgcc/ChangeLog
- gcc/Makefile.in 1 addition, 0 deletionsgcc/Makefile.in
- gcc/common.opt 4 additions, 0 deletionsgcc/common.opt
- gcc/doc/invoke.texi 10 additions, 1 deletiongcc/doc/invoke.texi
- gcc/doc/passes.texi 4 additions, 4 deletionsgcc/doc/passes.texi
- gcc/lra-constraints.c 124 additions, 64 deletionsgcc/lra-constraints.c
- gcc/lra-eliminations.c 62 additions, 35 deletionsgcc/lra-eliminations.c
- gcc/lra-int.h 7 additions, 3 deletionsgcc/lra-int.h
- gcc/lra-lives.c 2 additions, 5 deletionsgcc/lra-lives.c
- gcc/lra-remat.c 1212 additions, 0 deletionsgcc/lra-remat.c
- gcc/lra-spills.c 1 addition, 1 deletiongcc/lra-spills.c
- gcc/lra.c 59 additions, 48 deletionsgcc/lra.c
- gcc/opts.c 1 addition, 0 deletionsgcc/opts.c
- gcc/timevar.def 1 addition, 0 deletionsgcc/timevar.def
Loading
Please register or sign in to comment