From dc8842bf9bae4830019211c27eb57637983a0e9c Mon Sep 17 00:00:00 2001 From: Andrew Haley Date: Tue, 9 Nov 1999 16:52:19 +0000 Subject: [PATCH] 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 * reload1.c (reload_reg_free_for_value_p): Don't use a register that is in reload_reg_used. From-SVN: r30461 --- gcc/ChangeLog | 5 +++++ gcc/reload1.c | 7 +++++++ 2 files changed, 12 insertions(+) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 5870287d399..9bd5f08a21b 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +Thu Nov 4 15:52:35 1999 Andrew Haley + + * 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 * config/arm/arm-protos.h: New file: Prototypes for functions diff --git a/gcc/reload1.c b/gcc/reload1.c index 3526ae9f134..09044c9c55a 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; -- 2.30.2