reload.c (reg_overlap_mentioned_for_reload_p): Handle subregs of mems.

* reload.c (reg_overlap_mentioned_for_reload_p): Handle subregs of
mems.

From-SVN: r109792
This commit is contained in:
DJ Delorie 2006-01-16 19:58:06 -05:00
parent 2d6ae5d626
commit 838f78d63b
2 changed files with 8 additions and 1 deletions

View File

@ -1,3 +1,8 @@
2006-01-16 DJ Delorie <dj@redhat.com>
* reload.c (reg_overlap_mentioned_for_reload_p): Handle subregs of
mems.
2006-01-16 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
* pa.md: Disparage copies between general and floating-point registers
@ -31,7 +36,7 @@
* basic-block.h: Remove the prototype for
partition_hot_cold_basic_blocks.
2006-01-16 Rafael Ávila de Espíndola <rafael.espindola@gmail.com>
2006-01-16 Rafael <EFBFBD>」ila de Esp<73><70>ndola <rafael.espindola@gmail.com>
* cppspec.c (lang_specific_spec_functions): remove
* gcc.c (lookup_spec_function): use static_spec_functions directelly

View File

@ -6329,6 +6329,8 @@ reg_overlap_mentioned_for_reload_p (rtx x, rtx in)
/* If either argument is a constant, then modifying X can not affect IN. */
if (CONSTANT_P (x) || CONSTANT_P (in))
return 0;
else if (GET_CODE (x) == SUBREG && GET_CODE (SUBREG_REG (x)) == MEM)
return refers_to_mem_for_reload_p (in);
else if (GET_CODE (x) == SUBREG)
{
regno = REGNO (SUBREG_REG (x));