alias.c (static_reg_base_value): New to hold RTL for items allocated once per functio...
authorJeff Law <law@redhat.com>
Mon, 10 Jun 2002 16:32:45 +0000 (10:32 -0600)
committerJeff Law <law@gcc.gnu.org>
Mon, 10 Jun 2002 16:32:45 +0000 (10:32 -0600)
commitbf1660a67066f9ad75d368466f5be15cc23a6ca1
treeb6731a46c8b99043d03fbda9812dc896be80aba5
parent8dc5848454ac4c24ce5a3fead6dd4e4ef4cb3a2f
alias.c (static_reg_base_value): New to hold RTL for items allocated once per function for the aliasing code.

* alias.c (static_reg_base_value): New to hold RTL for
items allocated once per function for the aliasing code.
(init_alias_once_per_function): Initialize static_reg_base_value.
(init_alias_analysis): Avoid throw-away allocations of RTL by
using pre-computed values in static_reg_base_value.
* function.c (prepare_function_start): Call
init_alias_once_per_function appropriately.
* rtl.h (init_alias_once_per_function): Declare.
* caller-save (init_caller_save): Restructure slightly to
avoid lots of silly RTL generation.
* expr.c (init_expr_once): Likewise.
* reload1.c (reload_cse_regs_1): Allocate throw-away register
RTL object here.  Pass it into children.
(reload_cse_simplify_operands): Use passed-in register RTL
object.
(reload_cse_simplify): Pass through throw-away register
RTL object.

From-SVN: r54442
gcc/ChangeLog
gcc/alias.c
gcc/caller-save.c
gcc/expr.c
gcc/function.c
gcc/reload1.c
gcc/rtl.h