aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorJ"orn Rennecke <amylaar@cygnus.co.uk>1998-05-12 19:28:01 +0000
committerJoern Rennecke <amylaar@gcc.gnu.org>1998-05-12 20:28:01 +0100
commit4117a96b0138514a300f79c3deb1b4145ea03e2a (patch)
tree2bea29eb121405070139331e590934bbe77162aa /gcc
parent4d3eb414211002db7af3142840b76c1f04f1b4c9 (diff)
downloadgcc-4117a96b0138514a300f79c3deb1b4145ea03e2a.zip
gcc-4117a96b0138514a300f79c3deb1b4145ea03e2a.tar.gz
gcc-4117a96b0138514a300f79c3deb1b4145ea03e2a.tar.bz2
* reload1.c (gen_reload): Create REG_EQUIV notes.
From-SVN: r19703
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog4
-rw-r--r--gcc/reload1.c10
2 files changed, 12 insertions, 2 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index fcb7146..5b40273 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -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.
diff --git a/gcc/reload1.c b/gcc/reload1.c
index fe0c7b2..02b9087 100644
--- a/gcc/reload1.c
+++ b/gcc/reload1.c
@@ -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