aboutsummaryrefslogtreecommitdiff
path: root/gcc/flow.c
diff options
context:
space:
mode:
authorJ"orn Rennecke <amylaar@cygnus.co.uk>1998-07-06 22:53:34 +0000
committerJeff Law <law@gcc.gnu.org>1998-07-06 16:53:34 -0600
commit6186ed06d2f4294816b5514bb01383d7dc2b2045 (patch)
treec85be3c0128c21f521e65f94c04b2ed93230a614 /gcc/flow.c
parent979e20e973b8ca7ccc0e9065d1e99149af7efaae (diff)
downloadgcc-6186ed06d2f4294816b5514bb01383d7dc2b2045.zip
gcc-6186ed06d2f4294816b5514bb01383d7dc2b2045.tar.gz
gcc-6186ed06d2f4294816b5514bb01383d7dc2b2045.tar.bz2
flow.c (find_auto_inc): Clear UNCHANGING bit of register that is changed.
* flow.c (find_auto_inc): Clear UNCHANGING bit of register that is changed. From-SVN: r20974
Diffstat (limited to 'gcc/flow.c')
-rw-r--r--gcc/flow.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/gcc/flow.c b/gcc/flow.c
index 43ea11d..aecd1b0 100644
--- a/gcc/flow.c
+++ b/gcc/flow.c
@@ -2386,6 +2386,10 @@ find_auto_inc (needed, x, insn)
Then fall into the usual case. */
rtx insns, temp;
+ /* Since q is now changed, clear its UNCHANGING bit. Otherwise,
+ we would confuse alias.c when this pseudo ends up in a stack
+ slot. */
+ RTX_UNCHANGING_P (q) = 0;
start_sequence ();
emit_move_insn (q, addr);
insns = get_insns ();