diff options
author | kkojima <kkojima@138bc75d-0d04-0410-961f-82ee72b054a4> | 2008-10-24 23:09:00 +0000 |
---|---|---|
committer | kkojima <kkojima@138bc75d-0d04-0410-961f-82ee72b054a4> | 2008-10-24 23:09:00 +0000 |
commit | ab9e6ffd1010b6d4a01e42bbd78d35f71b15fff6 (patch) | |
tree | 8b53e75f73b5a11041aa660906532cc294a55a58 /gcc/regmove.c | |
parent | 81298e5c76b8ebf718a01c441c50d7bb416ebc9b (diff) | |
download | ppe42-gcc-ab9e6ffd1010b6d4a01e42bbd78d35f71b15fff6.tar.gz ppe42-gcc-ab9e6ffd1010b6d4a01e42bbd78d35f71b15fff6.zip |
PR rtl-optimization/37769
* regmove.c (optimize_reg_copy_2): Update REG_INC note if needed.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@141354 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/regmove.c')
-rw-r--r-- | gcc/regmove.c | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/gcc/regmove.c b/gcc/regmove.c index e25dbec7fe9..12b93fc2ff8 100644 --- a/gcc/regmove.c +++ b/gcc/regmove.c @@ -685,7 +685,15 @@ optimize_reg_copy_2 (rtx insn, rtx dest, rtx src) { if (reg_mentioned_p (dest, PATTERN (q))) { + rtx note; + PATTERN (q) = replace_rtx (PATTERN (q), dest, src); + note = FIND_REG_INC_NOTE (q, dest); + if (note) + { + remove_note (q, note); + add_reg_note (q, REG_INC, src); + } df_insn_rescan (q); } |