re PR target/18329 (mmix-knuth-mmixware testsuite failure: execute/920501-7.c, execute/comp-goto-2.c)
PR target/18329 PR target/18330 * reload1.c (delete_output_reload): Don't delete an output reload if the pseudo lives longer than a single basic block. Adjust and improve wording of comment. From-SVN: r93250
This commit is contained in:
parent
af708001cd
commit
0149f412ec
2 changed files with 11 additions and 3 deletions
|
@ -1,3 +1,11 @@
|
|||
2005-01-13 Hans-Peter Nilsson <hp@bitrange.com>
|
||||
|
||||
PR target/18329
|
||||
PR target/18330
|
||||
* reload1.c (delete_output_reload): Don't delete an output reload
|
||||
if the pseudo lives longer than a single basic block. Adjust and
|
||||
improve wording of comment.
|
||||
|
||||
2005-01-12 Andrew Pinski <pinskia@physics.uc.edu>
|
||||
|
||||
PR target/19334
|
||||
|
|
|
@ -7624,13 +7624,13 @@ delete_output_reload (rtx insn, int j, int last_reload_reg)
|
|||
|
||||
/* If the pseudo-reg we are reloading is no longer referenced
|
||||
anywhere between the store into it and here,
|
||||
and no jumps or labels intervene, then the value can get
|
||||
here through the reload reg alone.
|
||||
and we're within the same basic block, then the value can only
|
||||
pass through the reload reg and end up here.
|
||||
Otherwise, give up--return. */
|
||||
for (i1 = NEXT_INSN (output_reload_insn);
|
||||
i1 != insn; i1 = NEXT_INSN (i1))
|
||||
{
|
||||
if (LABEL_P (i1) || JUMP_P (i1))
|
||||
if (NOTE_INSN_BASIC_BLOCK_P (i1))
|
||||
return;
|
||||
if ((NONJUMP_INSN_P (i1) || CALL_P (i1))
|
||||
&& reg_mentioned_p (reg, PATTERN (i1)))
|
||||
|
|
Loading…
Add table
Reference in a new issue