reload1.c (reload_reg_free_before_p): RELOAD_FOR_OUTADDR_ADDRESS is earlier than RELOAD_FOR_OUTPUT_ADDRESS...

* reload1.c (reload_reg_free_before_p): RELOAD_FOR_OUTADDR_ADDRESS
	is earlier than RELOAD_FOR_OUTPUT_ADDRESS; RELOAD_FOR_INPADDR_ADDRESS
	is earlier than RELOAD_FOR_INPUT_ADDRESS.

From-SVN: r20526
This commit is contained in:
J"orn Rennecke 1998-06-16 15:35:50 +00:00 committed by Joern Rennecke
parent 42b82dd3b2
commit 75528b80dc
2 changed files with 14 additions and 0 deletions

View File

@ -1,3 +1,9 @@
Tue Jun 16 23:33:24 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
* reload1.c (reload_reg_free_before_p): RELOAD_FOR_OUTADDR_ADDRESS
is earlier than RELOAD_FOR_OUTPUT_ADDRESS; RELOAD_FOR_INPADDR_ADDRESS
is earlier than RELOAD_FOR_INPUT_ADDRESS.
Tue Jun 16 13:15:16 1998 Jim Wilson <wilson@cygnus.com>
* libgcc1-test.c (memcpy): Define.

View File

@ -4658,6 +4658,10 @@ reload_reg_free_before_p (regno, opnum, type)
the first place, since we know that it was allocated. */
case RELOAD_FOR_OUTPUT_ADDRESS:
/* Earlier reloads include RELOAD_FOR_INPADDR_ADDRESS reloads. */
if (TEST_HARD_REG_BIT (reload_reg_used_in_outaddr_addr[opnum], regno))
return 0;
/* ... fall through ... */
case RELOAD_FOR_OUTADDR_ADDRESS:
/* Earlier reloads are for earlier outputs or their addresses,
any RELOAD_FOR_INSN reloads, any inputs or their addresses, or any
@ -4738,6 +4742,10 @@ reload_reg_free_before_p (regno, opnum, type)
return ! TEST_HARD_REG_BIT (reload_reg_used_in_other_addr, regno);
case RELOAD_FOR_INPUT_ADDRESS:
/* Earlier reloads include RELOAD_FOR_INPADDR_ADDRESS reloads. */
if (TEST_HARD_REG_BIT (reload_reg_used_in_inpaddr_addr[opnum], regno))
return 0;
/* ... fall through ... */
case RELOAD_FOR_INPADDR_ADDRESS:
/* Similarly, all we have to check is for use in earlier inputs'
addresses. */