aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog8
-rw-r--r--gcc/config/rs6000/rs6000.c2
2 files changed, 9 insertions, 1 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 5770cfd..15b8fbb 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,11 @@
+Wed Sep 8 14:34:42 1999 Ian Piumarta <piumarta@prof.inria.fr>
+ Melissa O'Neill <oneill@cs.sfu.ca>
+ Geoffrey Keating <geoffk@cygnus.com>
+
+ * config/rs6000/rs6000.c (first_reg_to_save): Don't save fixed or
+ call-used registers (call-saved registers must still be contiguous
+ and end with r31, of course).
+
Tue Sep 7 21:41:38 1999 Richard Henderson <rth@cygnus.com>
* c-typeck.c (type_lists_compatible_p): Use simple_type_promotes_to.
diff --git a/gcc/config/rs6000/rs6000.c b/gcc/config/rs6000/rs6000.c
index 2594863..db0bbb4 100644
--- a/gcc/config/rs6000/rs6000.c
+++ b/gcc/config/rs6000/rs6000.c
@@ -3414,7 +3414,7 @@ first_reg_to_save ()
/* Find lowest numbered live register. */
for (first_reg = 13; first_reg <= 31; first_reg++)
- if (regs_ever_live[first_reg])
+ if (regs_ever_live[first_reg] && ! call_used_regs[first_reg])
break;
if (profile_flag)