summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorrth <rth@138bc75d-0d04-0410-961f-82ee72b054a4>2000-10-29 05:41:44 +0000
committerrth <rth@138bc75d-0d04-0410-961f-82ee72b054a4>2000-10-29 05:41:44 +0000
commit8f7583621634f0d25e25c4047ed37d9bb52ce23d (patch)
treebad41af96deb3bd6dbfff17257cb8ebc7be57132
parentc9c8f775a6992e5d0779d625004b302420ec24a2 (diff)
downloadppe42-gcc-8f7583621634f0d25e25c4047ed37d9bb52ce23d.tar.gz
ppe42-gcc-8f7583621634f0d25e25c4047ed37d9bb52ce23d.zip
* regrename.c (scan_rtx_address): Frob action, not class,
when trying to disable optimization. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@37117 138bc75d-0d04-0410-961f-82ee72b054a4
-rw-r--r--gcc/ChangeLog5
-rw-r--r--gcc/regrename.c4
2 files changed, 8 insertions, 1 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 876b6671baf..9472fa0df4c 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,8 @@
+2000-10-28 Richard Henderson <rth@redhat.com>
+
+ * regrename.c (scan_rtx_address): Frob action, not class,
+ when trying to disable optimization.
+
2000-10-28 Mark Mitchell <mark@codesourcery.com>
* c-semantics.c (make_rtl_for_local_static): Don't clobber
diff --git a/gcc/regrename.c b/gcc/regrename.c
index ffe6d422b39..5078585647e 100644
--- a/gcc/regrename.c
+++ b/gcc/regrename.c
@@ -475,7 +475,9 @@ scan_rtx_address (insn, loc, class, action, mode)
case PRE_DEC:
case PRE_MODIFY:
#ifndef AUTO_INC_DEC
- class = NO_REGS;
+ /* If the target doesn't claim to handle autoinc, this must be
+ something special, like a stack push. Kill this chain. */
+ action = terminate_all_read;
#endif
break;
OpenPOWER on IntegriCloud