From 252f342a37a49c09dc2c292e02f3c4697b76318c Mon Sep 17 00:00:00 2001 From: Michael Hayes Date: Wed, 19 Aug 1998 12:49:17 +0000 Subject: [PATCH] regclass.c: Changed register set documentation to be consistent with GCC behaviour. * regclass.c: Changed register set documentation to be consistent with GCC behaviour. * final.c (final_start_function) Removed redundant test for call_fixed_regs. From-SVN: r21847 --- gcc/ChangeLog | 8 ++++++++ gcc/final.c | 2 +- gcc/regclass.c | 12 ++++++------ 3 files changed, 15 insertions(+), 7 deletions(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 31bd3d1..ef587f6 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,11 @@ +1998-08-19 Michael Hayes + + * regclass.c: Changed register set documentation to be consistent + with GCC behaviour. + + * final.c (final_start_function) Removed redundant test for + call_fixed_regs. + Wed Aug 19 13:28:41 1998 Mark Mitchell * rtl.h (rtx_function): New type. diff --git a/gcc/final.c b/gcc/final.c index e6a1d53..621f61f 100644 --- a/gcc/final.c +++ b/gcc/final.c @@ -1597,7 +1597,7 @@ final_start_function (first, file, optimize) int i; for (i = 0; i < FIRST_PSEUDO_REGISTER; i++) - if (!call_used_regs[i] && !call_fixed_regs[i]) + if (!call_used_regs[i]) regs_ever_live[i] = 1; } #endif diff --git a/gcc/regclass.c b/gcc/regclass.c index 40bdc72..293b7c3 100644 --- a/gcc/regclass.c +++ b/gcc/regclass.c @@ -56,7 +56,7 @@ Boston, MA 02111-1307, USA. */ /* Indexed by hard register number, contains 1 for registers that are fixed use (stack pointer, pc, frame pointer, etc.). These are the registers that cannot be used to allocate - a pseudo reg whose life does not cross calls. */ + a pseudo reg for general use. */ char fixed_regs[FIRST_PSEUDO_REGISTER]; @@ -71,7 +71,8 @@ static char initial_fixed_regs[] = FIXED_REGISTERS; /* Indexed by hard register number, contains 1 for registers that are fixed use or are clobbered by function calls. These are the registers that cannot be used to allocate - a pseudo reg whose life crosses calls. */ + a pseudo reg whose life crosses calls unless we are able + to save/restore them across the calls. */ char call_used_regs[FIRST_PSEUDO_REGISTER]; @@ -87,10 +88,9 @@ HARD_REG_SET losing_caller_save_reg_set; static char initial_call_used_regs[] = CALL_USED_REGISTERS; /* Indexed by hard register number, contains 1 for registers that are - fixed use -- i.e. in fixed_regs -- or a function value return register - or STRUCT_VALUE_REGNUM or STATIC_CHAIN_REGNUM. These are the - registers that cannot hold quantities across calls even if we are - willing to save and restore them. */ + fixed use or call used registers that cannot hold quantities across + calls even if we are willing to save and restore them. call fixed + registers are a subset of call used registers. */ char call_fixed_regs[FIRST_PSEUDO_REGISTER]; -- 2.7.4