This is the mail archive of the
gcc-cvs@gcc.gnu.org
mailing list for the GCC project.
r168545 - /branches/reload-v2a/gcc/ira-reload.c
- From: law at gcc dot gnu dot org
- To: gcc-cvs at gcc dot gnu dot org
- Date: Thu, 06 Jan 2011 16:51:26 -0000
- Subject: r168545 - /branches/reload-v2a/gcc/ira-reload.c
Author: law
Date: Thu Jan 6 16:51:24 2011
New Revision: 168545
URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=168545
Log:
* ira-reload.c (regs_to_load_alt): New bitmap.
(regs_to_store_alt, alt_reg_map): Similarly.
(identify_singleton_uses): Accept bitmap of SUBREGs to decompose
and the DF flags for the current use. Do not record implicit uses
via assignments to SUBREGs.
(collect_loads): Similarly. Select between regs_to_load and
regs_to_load_alt for SUBREG expressions we are decomposing.
(emit_localizing_loads): Similarly for regs_to_load and reg_map.
Adjust the memory address as needed for decomposed SUBREG expressions.
if the pseudo is never used.
(rename_sets): Similarly for regs_to_store and reg_map.
(emit_localizing_stores): Similarly for regs_to_store and reg_map.
More aggressively replace an assigned pseudo with its memory location
(record_a_use_or_set): New.
(localize_pseudos): Allocate and intialize _alt variants of reg_map,
regs_to_store and regs_to_load. For each SUBREG in the region that
refers to an unallocated pseudo, record whether or not it used only
in partial modes within the region. Don't count uses/sets for
naked CLOBBERs. Handle "delete insn" return value from
emit_localizing_stores for naked CLOBBERs. Pass additional arguments
to emit_localizing_loads, emit_localizing_stores, collect_loads.
Handle decomposed SUBREGs.
Modified:
branches/reload-v2a/gcc/ira-reload.c