OSDN Git Service

* reload.c (find_reloads_address_1): Handle PLUS expressions resulting
authoruweigand <uweigand@138bc75d-0d04-0410-961f-82ee72b054a4>
Sun, 25 Feb 2007 20:56:46 +0000 (20:56 +0000)
committeruweigand <uweigand@138bc75d-0d04-0410-961f-82ee72b054a4>
Sun, 25 Feb 2007 20:56:46 +0000 (20:56 +0000)
commitcc6757ec825d05ba36419234bdcfea6bf03079d1
treef43a6eb2bfabc2b51c7f153a8a2a49f931ad9e74
parent46cdddaa43b816c9fef2072dbab9d0dbc214e918
* 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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@122318 138bc75d-0d04-0410-961f-82ee72b054a4
gcc/ChangeLog
gcc/reload.c
gcc/reload1.c