reload.c (find_reloads_address_1): Handle PLUS expressions resulting from register...
authorUlrich Weigand <uweigand@de.ibm.com>
Sun, 25 Feb 2007 20:56:46 +0000 (20:56 +0000)
committerUlrich Weigand <uweigand@gcc.gnu.org>
Sun, 25 Feb 2007 20:56:46 +0000 (20:56 +0000)
commitb098aaf2ae8a6323bcc18933a6269e6846a634e0
treef43a6eb2bfabc2b51c7f153a8a2a49f931ad9e74
parentae19c0415ca51979541adc2baab05383f41e5284
reload.c (find_reloads_address_1): Handle PLUS expressions resulting from register elimination as PRE_MODIFY /...

* reload.c (find_reloads_address_1): Handle PLUS expressions resulting
from register elimination as PRE_MODIFY / POST_MODIFY increments.
Do not attempt to handle MEM inside auto-inc expressions.
* reload1.c (eliminate_regs_1): Do not attempt to handle elimination
of a register modified by an auto-inc expression.  However, do handle
elimination of a register used as PRE_MODIFY / POST_MODIFY increment.
(elimination_effects): Prohibit elimination of a register modified
by an auto-inc expression.  Disable register elimination rules whose
target register is modified by an auto-inc expression with variable
increment.

From-SVN: r122318
gcc/ChangeLog
gcc/reload.c
gcc/reload1.c