]> gcc.gnu.org Git - gcc.git/commitdiff
regmove.c (regmove_optimize): If we end up moving the original insn due to lifetime...
authorJeffrey A Law <law@cygnus.com>
Sun, 14 Sep 1997 17:11:52 +0000 (17:11 +0000)
committerJeff Law <law@gcc.gnu.org>
Sun, 14 Sep 1997 17:11:52 +0000 (11:11 -0600)
* regmove.c (regmove_optimize): If we end up moving the
original insn due to lifetime overlaps, make sure to move
REG_NOTES too.
Fixes x86 (and maybe h8) failure.

From-SVN: r15435

gcc/ChangeLog
gcc/regmove.c

index 25e632f0031fc347008ffd628be72f3cab1c94a2..1aa76275b5d3f18804df48d5b4503938eb86bb67 100644 (file)
@@ -1,3 +1,9 @@
+Sun Sep 14 11:11:05 1997  Jeffrey A Law  (law@cygnus.com)
+
+       * regmove.c (regmove_optimize): If we end up moving the
+       original insn due to lifetime overlaps, make sure to move
+       REG_NOTES too.
+
 Sat Sep 13 15:51:11 1997  Manfred Hollstein  <manfred@s-direktnet.de>
 
        * Makefile.in (INSTALL_{PROGRAM,DATA}): Use value found by configure.
index 1efb9ceed89f3f5d43b6fc0aef0705ec53c2d359..0530780a296810491e193d54fc2f2fb600fb6c12 100644 (file)
@@ -515,6 +515,8 @@ regmove_optimize (f, nregs, regmove_dump_file)
                              else
 #endif
                                {
+                                 rtx notes = REG_NOTES (insn);
+
                                  emit_insn_after_with_line_notes
                                    (pat, PREV_INSN (p), insn);
                                  PUT_CODE (insn, NOTE);
@@ -525,6 +527,8 @@ regmove_optimize (f, nregs, regmove_dump_file)
                                     for the new insn.  */
                                  for (insn = p; PATTERN (insn) != pat; )
                                    insn = PREV_INSN (insn);
+
+                                 REG_NOTES (insn) = notes;
                                }
                            }
                          /* Sometimes we'd generate src = const; src += n;
This page took 0.068862 seconds and 5 git commands to generate.