diff options
author | Ian Piumarta <piumarta@prof.inria.fr> | 1999-09-08 06:59:10 +0200 |
---|---|---|
committer | Geoffrey Keating <geoffk@gcc.gnu.org> | 1999-09-08 04:59:10 +0000 |
commit | 7d617b67c06b5bd615a20982da569aa1c563a00b (patch) | |
tree | 6464ede9e41ab1126ea5fbd1fc9829c3d8222935 | |
parent | c530479e15d804667c83dfb738ce9cae035de9f2 (diff) | |
download | gcc-7d617b67c06b5bd615a20982da569aa1c563a00b.zip gcc-7d617b67c06b5bd615a20982da569aa1c563a00b.tar.gz gcc-7d617b67c06b5bd615a20982da569aa1c563a00b.tar.bz2 |
rs6000.c (first_reg_to_save): Don't save fixed or call-used registers (call-saved registers must still be...
* 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).
Co-Authored-By: Geoff Keating <geoffk@cygnus.com>
Co-Authored-By: Melissa O'Neill <oneill@cs.sfu.ca>
From-SVN: r29181
-rw-r--r-- | gcc/ChangeLog | 8 | ||||
-rw-r--r-- | gcc/config/rs6000/rs6000.c | 2 |
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) |