flow.c (propagate_block): Add call-clobbered registers to significant too.
authorRichard Henderson <rth@cygnus.com>
Thu, 14 Oct 1999 23:28:50 +0000 (16:28 -0700)
committerRichard Henderson <rth@gcc.gnu.org>
Thu, 14 Oct 1999 23:28:50 +0000 (16:28 -0700)
        * flow.c (propagate_block): Add call-clobbered registers to
        significant too.

From-SVN: r29989

gcc/ChangeLog
gcc/flow.c

index 0912479d31cc843508bb5db2431ef3bcf32833f2..6fe58227d7043f2ff60e15edfcc150305e257992 100644 (file)
@@ -1,3 +1,8 @@
+Thu Oct 14 16:27:50 1999  Richard Henderson  <rth@cygnus.com>
+
+       * flow.c (propagate_block): Add call-clobbered registers to
+       significant too.
+
 Thu Oct 14 13:54:25 1999  Jason Merrill  <jason@yorick.cygnus.com>
 
        * toplev.c (main): Don't complain about options for other languages.
index 3619e28334120cc63880ef75031c2bc6a4c18740..409f8baacf89aa0bfb389bf6c1dd314617f5a140 100644 (file)
@@ -3433,7 +3433,11 @@ propagate_block (old, first, last, significant, bnum, flags)
                  for (i = 0; i < FIRST_PSEUDO_REGISTER; i++)
                    if (call_used_regs[i] && ! global_regs[i]
                        && ! fixed_regs[i])
-                     SET_REGNO_REG_SET (dead, i);
+                     {
+                       SET_REGNO_REG_SET (dead, i);
+                       if (significant)
+                         SET_REGNO_REG_SET (significant, i);
+                     }
 
                  /* The stack ptr is used (honorarily) by a CALL insn.  */
                  SET_REGNO_REG_SET (live, STACK_POINTER_REGNUM);