aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRichard Henderson <rth@cygnus.com>1999-10-14 16:28:50 -0700
committerRichard Henderson <rth@gcc.gnu.org>1999-10-14 16:28:50 -0700
commitd1abb9254b8e917820e4b8c31f7ec0cc1090b6f6 (patch)
treef0f3a9ecbfbb39bc5760b8948731f79b8d2392d7
parentf88b51fc392c185320a49205b95e6bb8e17081f2 (diff)
downloadgcc-d1abb9254b8e917820e4b8c31f7ec0cc1090b6f6.zip
gcc-d1abb9254b8e917820e4b8c31f7ec0cc1090b6f6.tar.gz
gcc-d1abb9254b8e917820e4b8c31f7ec0cc1090b6f6.tar.bz2
flow.c (propagate_block): Add call-clobbered registers to significant too.
* flow.c (propagate_block): Add call-clobbered registers to significant too. From-SVN: r29989
-rw-r--r--gcc/ChangeLog5
-rw-r--r--gcc/flow.c6
2 files changed, 10 insertions, 1 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 0912479..6fe5822 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -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.
diff --git a/gcc/flow.c b/gcc/flow.c
index 3619e28..409f8ba 100644
--- a/gcc/flow.c
+++ b/gcc/flow.c
@@ -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);