From 19ca869b6dbfc8437cb4e2685b514ee586a4fbaa Mon Sep 17 00:00:00 2001 From: Joern Rennecke Date: Wed, 18 Oct 2000 02:26:26 +0000 Subject: [PATCH] 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 --- gcc/ChangeLog | 5 +++++ gcc/reload1.c | 14 ++++++++++++++ 2 files changed, 19 insertions(+) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index e613ec63084..762bf65e6cc 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2000-10-17 Joern Rennecke + + * reload1.c (move2add_note_store): Check for simple + auto-inc in destination. + 2000-10-17 Michael Chastain * config/i386/i386-aout.h: define INT_ASM_OP. diff --git a/gcc/reload1.c b/gcc/reload1.c index 5a919c4ee15..f90897adcac 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; -- 2.30.2