caller-save.c (insert_one_insn): Take into account REG_INC notes for the liveness computation of the new insn.
* caller-save.c (insert_one_insn): Take into account REG_INC notes for the liveness computation of the new insn. From-SVN: r142099
This commit is contained in:
parent
015e1120e8
commit
0e51e769b5
@ -1,3 +1,8 @@
|
||||
2008-11-21 Eric Botcazou <ebotcazou@adacore.com>
|
||||
|
||||
* caller-save.c (insert_one_insn): Take into account REG_INC notes
|
||||
for the liveness computation of the new insn.
|
||||
|
||||
2008-11-21 DJ Delorie <dj@redhat.com>
|
||||
|
||||
* config/stormy16/stormy16.md (movqi_internal, movhi_internal):
|
||||
|
@ -1216,10 +1216,12 @@ insert_one_insn (struct insn_chain *chain, int before_p, int code, rtx pat)
|
||||
/* ??? It would be nice if we could exclude the already / still saved
|
||||
registers from the live sets. */
|
||||
COPY_REG_SET (&new_chain->live_throughout, &chain->live_throughout);
|
||||
/* Registers that die in CHAIN->INSN still live in the new insn. */
|
||||
/* Registers that die in CHAIN->INSN still live in the new insn.
|
||||
Likewise for those which are autoincremented or autodecremented. */
|
||||
for (link = REG_NOTES (chain->insn); link; link = XEXP (link, 1))
|
||||
{
|
||||
if (REG_NOTE_KIND (link) == REG_DEAD)
|
||||
enum reg_note kind = REG_NOTE_KIND (link);
|
||||
if (kind == REG_DEAD || kind == REG_INC)
|
||||
{
|
||||
rtx reg = XEXP (link, 0);
|
||||
int regno, i;
|
||||
|
Loading…
Reference in New Issue
Block a user