diff options
author | Bernd Schmidt <bernds@codesourcery.com> | 2011-10-19 17:26:26 +0000 |
---|---|---|
committer | Bernd Schmidt <bernds@gcc.gnu.org> | 2011-10-19 17:26:26 +0000 |
commit | 1f234b83b85c579dabe9202bcd07cab448697a69 (patch) | |
tree | 4e8270a1658fafb2457bb5416e2aad0869b86a79 /gcc/cfgexpand.c | |
parent | 40f73edd0c35d53f57a1c05b1b4a59c4d7a70d60 (diff) | |
download | gcc-1f234b83b85c579dabe9202bcd07cab448697a69.zip gcc-1f234b83b85c579dabe9202bcd07cab448697a69.tar.gz gcc-1f234b83b85c579dabe9202bcd07cab448697a69.tar.bz2 |
regrename.h: New file.
* regrename.h: New file.
* regrename.c: Include it. Also include "emit-rtl.h".
(struct du_head, struct du_chain, du_head_p DEF_VEC and
DEF_VEC_ALLOC_P): Move to regrename.h.
(do_replace): Remove declaration.
(insn_rr): New variable.
(cur_operand): New static variable.
(regrename_chain_from_id): Renamed from chain_from_id and no longer
static. All callers changed.
(record_operand_use): New static function.
(scan_rtx_reg): Use it.
(find_best_rename_reg): New function, broken out of rename_chains.
(rename_chains): Use it. Don't update chain regno and nregs here, ...
(regrename_do_replace): ... do it here instead. Renamed from
do_replace, and no longer static. All callers changed.
(regrename_analyze): No longer static. New arg bb_mask.
All callers changed. If bb_mask is nonzero, use it to limit the
number of basic blocks we analyze. If we failed to analyze a block,
clear insn operand data.
(record_out_operands): New arg insn_info. Update cur_operand if it is
nonnull.
(build_def_use): If insn_rr is nonnull, pass an insn_info to
record_out_operands, and update cur_operand here as well.
(regrename_init, regrename_finish): New functions.
(regrename_optimize): Use them.
* Makefile.in (regrename.o): Adjust dependencies.
From-SVN: r180198
Diffstat (limited to 'gcc/cfgexpand.c')
0 files changed, 0 insertions, 0 deletions