aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorBernd Schmidt <bernds@cygnus.co.uk>1999-11-03 11:23:27 +0000
committerBernd Schmidt <crux@gcc.gnu.org>1999-11-03 11:23:27 +0000
commit1b3b576549c1ad7f437f440dd517e880d72a69d6 (patch)
tree13ff5bd7b160b33b4bba3b0f1f6ef815b42cd31c /gcc
parent77355bd5f213c49c1c36c812a230cead2e20f83e (diff)
downloadgcc-1b3b576549c1ad7f437f440dd517e880d72a69d6.zip
gcc-1b3b576549c1ad7f437f440dd517e880d72a69d6.tar.gz
gcc-1b3b576549c1ad7f437f440dd517e880d72a69d6.tar.bz2
Copy reg notes in eliminate_regs_in_insn.
From-SVN: r30372
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog4
-rw-r--r--gcc/reload1.c6
2 files changed, 9 insertions, 1 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 6d327fa..5ee1cb0 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,7 @@
+Wed Nov 3 12:12:59 1999 Bernd Schmidt <bernds@cygnus.co.uk>
+
+ * reload1.c (eliminate_regs_in_insn): If copying insn, also copy notes.
+
Wed Nov 3 03:26:28 1999 Jeffrey A Law (law@cygnus.com)
* dwarf2out.c: Do not include ctype.h.
diff --git a/gcc/reload1.c b/gcc/reload1.c
index 98a246b..5291d9b 100644
--- a/gcc/reload1.c
+++ b/gcc/reload1.c
@@ -3515,7 +3515,11 @@ eliminate_regs_in_insn (insn, replace)
and one is inside RTL that has been copied while the other is not. */
new_body = old_body;
if (! replace)
- new_body = copy_insn (old_body);
+ {
+ new_body = copy_insn (old_body);
+ if (REG_NOTES (insn))
+ REG_NOTES (insn) = copy_insn_1 (REG_NOTES (insn));
+ }
PATTERN (insn) = new_body;
/* If we had a move insn but now we don't, rerecognize it. This will