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:
Hans-Peter Nilsson 2005-01-13 01:18:58 +00:00 committed by Hans-Peter Nilsson
parent af708001cd
commit 0149f412ec
2 changed files with 11 additions and 3 deletions

View file

@ -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

View file

@ -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)))