diff options
author | Andrew Haley <aph@cygnus.com> | 1999-11-09 16:52:19 +0000 |
---|---|---|
committer | Andrew Haley <aph@gcc.gnu.org> | 1999-11-09 16:52:19 +0000 |
commit | dc8842bf9bae4830019211c27eb57637983a0e9c (patch) | |
tree | 2100a11c21a71613032b423f4bc0b8987d5543af /gcc | |
parent | eb3921e89a276761fba9562652ec83cbe03f25a9 (diff) | |
download | gcc-dc8842bf9bae4830019211c27eb57637983a0e9c.zip gcc-dc8842bf9bae4830019211c27eb57637983a0e9c.tar.gz gcc-dc8842bf9bae4830019211c27eb57637983a0e9c.tar.bz2 |
reload1.c (reload_reg_free_for_value_p): Don't use a register that is in reload_reg_used.
Thu Nov 4 15:52:35 1999 Andrew Haley <aph@cygnus.com>
* reload1.c (reload_reg_free_for_value_p): Don't use a register
that is in reload_reg_used.
From-SVN: r30461
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/reload1.c | 7 |
2 files changed, 12 insertions, 0 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 5870287..9bd5f08 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +Thu Nov 4 15:52:35 1999 Andrew Haley <aph@cygnus.com> + + * reload1.c (reload_reg_free_for_value_p): Don't use a register + that is in reload_reg_used. + Tue Nov 9 16:43:00 1999 Nick Clifton <nickc@cygnus.com> * config/arm/arm-protos.h: New file: Prototypes for functions diff --git a/gcc/reload1.c b/gcc/reload1.c index 3526ae9..09044c9 100644 --- a/gcc/reload1.c +++ b/gcc/reload1.c @@ -5307,6 +5307,13 @@ reload_reg_free_for_value_p (regno, opnum, type, value, out, reloadnum, int i; int copy = 0; + /* ??? reload_reg_used is abused to hold the registers that are not + available as spill registers, including hard registers that are + earlyclobbered in asms. As a temporary measure, reject anything + in reload_reg_used. */ + if (TEST_HARD_REG_BIT (reload_reg_used, regno)) + return 0; + if (out == const0_rtx) { copy = 1; |