OSDN Git Service

* reload1.c (gen_reload): Create REG_EQUIV notes.
authoramylaar <amylaar@138bc75d-0d04-0410-961f-82ee72b054a4>
Tue, 12 May 1998 19:28:01 +0000 (19:28 +0000)
committeramylaar <amylaar@138bc75d-0d04-0410-961f-82ee72b054a4>
Tue, 12 May 1998 19:28:01 +0000 (19:28 +0000)
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@19703 138bc75d-0d04-0410-961f-82ee72b054a4

gcc/ChangeLog
gcc/reload1.c

index fcb7146..5b40273 100644 (file)
@@ -1,3 +1,7 @@
+Wed May 13 03:23:45 1998  J"orn Rennecke <amylaar@cygnus.co.uk>
+
+       * reload1.c (gen_reload): Create REG_EQUIV notes.
+
 Tue May 12 22:21:07 1998  J"orn Rennecke <amylaar@cygnus.co.uk>
 
        * reload1.c (reload): Fix check for USEs to use code of pattern.
index fe0c7b2..02b9087 100644 (file)
@@ -7244,13 +7244,19 @@ gen_reload (out, in, opnum, type)
             its validity determination, i.e., the way it would after reload
             has completed.  */
          if (constrain_operands (code, 1))
-           return insn;
+           {
+             /* Add a REG_EQUIV note so that find_equiv_reg can find it.  */
+             REG_NOTES (insn)
+               = gen_rtx (EXPR_LIST, REG_EQUIV, in, REG_NOTES (insn));
+             return insn;
+           }
        }
 
       delete_insns_since (last);
 
       gen_reload (out, op1, opnum, type);
-      emit_insn (gen_add2_insn (out, op0));
+      insn = emit_insn (gen_add2_insn (out, op0));
+      REG_NOTES (insn) = gen_rtx (EXPR_LIST, REG_EQUIV, in, REG_NOTES (insn));
     }
 
 #ifdef SECONDARY_MEMORY_NEEDED