From ce73761f15fce4c1e116ca3975db3443ac5013ef Mon Sep 17 00:00:00 2001
From: Richard Henderson <rth@redhat.com>
Date: Sat, 28 Oct 2000 22:41:44 -0700
Subject: [PATCH] regrename.c (scan_rtx_address): Frob action, not class, when
 trying to disable optimization.

        * regrename.c (scan_rtx_address): Frob action, not class,
        when trying to disable optimization.

From-SVN: r37117
---
 gcc/ChangeLog   | 5 +++++
 gcc/regrename.c | 4 +++-
 2 files changed, 8 insertions(+), 1 deletion(-)

diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 876b6671bafa..9472fa0df4c0 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 ffe6d422b390..5078585647ee 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;
 
-- 
GitLab