r179942 - in /branches/lra/gcc: ChangeLog haifa...
vmakarov@gcc.gnu.org
vmakarov@gcc.gnu.org
Thu Oct 13 20:11:00 GMT 2011
Author: vmakarov
Date: Thu Oct 13 20:11:42 2011
New Revision: 179942
URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=179942
Log:
2011-10-13 Vladimir Makarov <vmakarov@redhat.com>
* lra-assign.c (process_copy_to_form_allocno): Rename to
process_copy_to_form_thread.
(conflict_reload_pseudos): Rename to
conflict_reload_and_inheritance_pseudos.
(live_reload_pseudos): Rename to
live_reload_and_inheritance_pseudos.
(init_live_reload_pseudos): Rename to
init_live_reload_and_inheritance_pseudos.
(finish_live_reload_and_inheritance_pseudos): Rename to
finish_live_reload_pseudos.
(find_hard_regno_for): Add new argument try_only_hard_regno. Use
live_pseudos_reg_renumber instead of reg_renumber. Check
live_pseudos_reg_renumber when adding to
conflict_reload_and_inheritance_pseudos. Process
preferred_hard_regno2 only if preferred_hard_regno1 is
non-negative.
(setup_try_hard_regno_pseudos): Use live_pseudos_reg_renumber
instead of reg_renumber.
(spill_for): Ditto. Pass new parameter to find_hard_regno_for.
(assign_temporarily): Don't change reg_renumber.
(setup_live_pseudos_and_spill_after_equiv_moves): Only call
update_lives if lra_risky_equiv_subst_p is false.
(improve_inheritance): New function.
(assign_by_spills): Call improve_inheritance.
* lra.c (lra): Call lra_eliminate after lra_constraints.
* lra-constraints.c (contains_pseudo_p): Rename to contains_reg_p.
Add a new argument. Modify it for new semantics.
(lra_risky_equiv_subst_p): New global var.
(lra_constraints): Set up lra_risky_equiv_subst_p. Compare
get_equiv_substitution with right value.
* lra-eliminations.c (eliminate_regs_in_insn): Remove a dead
code.
(spill_pseudos): Clear to_process after its processing.
(update_reg_eliminate): Add a new argument. Set it up. Modify
lra_no_alloc_regs and eliminable_regset.
(init_elim_table): Remove the argument. Permit elimination from a
register to itself.
(lra_init_elimination): Add a new argument. Set it up. Don't set
up liveness fo HARD_FRAME_POINTER_REGNUM.
(lra_eliminate): Rename to_process to insns_with_changed_offsets.
Call update_reg_eliminate with insns_with_changed_offsets.
Restructure code. Add additional assertion on
insns_with_changed_offsets.
* lra.h (lra_init_elimination): New argument.
* lra-int.h (lra_risky_equiv_subst_p): New flag declaration.
* ira.c (ira_setup_eliminable_regset): Add a new argument. Set
up liveness fo HARD_FRAME_POINTER_REGNUM if necessary.
(ira): Call ira_setup_eliminable_regset with a new parameter.
* ira.h (ira_setup_eliminable_regset): New argument.
* loop-invariant.c (calculate_loop_reg_pressure): Call
ira_setup_eliminable_regset with a new parameter.
* haifa-sched.c (sched_init): Ditto.
Modified:
branches/lra/gcc/ChangeLog
branches/lra/gcc/haifa-sched.c
branches/lra/gcc/ira.c
branches/lra/gcc/ira.h
branches/lra/gcc/loop-invariant.c
branches/lra/gcc/lra-assigns.c
branches/lra/gcc/lra-constraints.c
branches/lra/gcc/lra-eliminations.c
branches/lra/gcc/lra-int.h
branches/lra/gcc/lra.c
branches/lra/gcc/lra.h
More information about the Gcc-cvs
mailing list