diff options
author | Joern Rennecke <amylaar@redhat.co.uk> | 2000-10-18 02:26:26 +0000 |
---|---|---|
committer | Jeff Law <law@gcc.gnu.org> | 2000-10-17 20:26:26 -0600 |
commit | 19ca869b6dbfc8437cb4e2685b514ee586a4fbaa (patch) | |
tree | 8350d78ea08bb60ee7acaac8cca69990d8785e1e /gcc | |
parent | 2ddb1ca16110937641707c3180cc5394b853d2be (diff) | |
download | gcc-19ca869b6dbfc8437cb4e2685b514ee586a4fbaa.zip gcc-19ca869b6dbfc8437cb4e2685b514ee586a4fbaa.tar.gz gcc-19ca869b6dbfc8437cb4e2685b514ee586a4fbaa.tar.bz2 |
reload1.c (move2add_note_store): Check for simple auto-inc in destination.
* reload1.c (move2add_note_store): Check for simple
auto-inc in destination.
From-SVN: r36923
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/reload1.c | 14 |
2 files changed, 19 insertions, 0 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index e613ec6..762bf65 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2000-10-17 Joern Rennecke <amylaar@redhat.co.uk> + + * reload1.c (move2add_note_store): Check for simple + auto-inc in destination. + 2000-10-17 Michael Chastain <chastain@redhat.com> * config/i386/i386-aout.h: define INT_ASM_OP. diff --git a/gcc/reload1.c b/gcc/reload1.c index 5a919c4..f90897a 100644 --- a/gcc/reload1.c +++ b/gcc/reload1.c @@ -9024,6 +9024,20 @@ move2add_note_store (dst, set, data) dst = SUBREG_REG (dst); } + /* Some targets do argument pushes without adding REG_INC notes. */ + + if (GET_CODE (dst) == MEM) + { + dst = XEXP (dst, 0); + if (GET_CODE (dst) == PRE_INC || GET_CODE (dst) == POST_DEC + || GET_CODE (dst) == PRE_DEC || GET_CODE (dst) == POST_DEC) + { + regno = REGNO (XEXP (dst, 0)); + reg_set_luid[regno] = move2add_luid; + reg_offset[regno] = dst; + } + return; + } if (GET_CODE (dst) != REG) return; |