From 7d617b67c06b5bd615a20982da569aa1c563a00b Mon Sep 17 00:00:00 2001 From: Ian Piumarta Date: Wed, 8 Sep 1999 06:59:10 +0200 Subject: [PATCH] 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 Co-Authored-By: Melissa O'Neill From-SVN: r29181 --- gcc/ChangeLog | 8 ++++++++ gcc/config/rs6000/rs6000.c | 2 +- 2 files changed, 9 insertions(+), 1 deletion(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 5770cfdb5ed..15b8fbb6306 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,11 @@ +Wed Sep 8 14:34:42 1999 Ian Piumarta + Melissa O'Neill + Geoffrey Keating + + * 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 * 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 2594863de85..db0bbb49ab4 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)