Commit 25963977 by J"orn Rennecke Committed by Joern Rennecke

reload1.c (reload_reg_free_for_value_p): When considered reload has an output...

	* reload1.c (reload_reg_free_for_value_p): When considered reload
	has an output, matching inputs are not sufficient to avoid conflict.

From-SVN: r23687
parent 7ddedda4
Tue Nov 17 22:25:16 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
* reload1.c (reload_reg_free_for_value_p): When considered reload
has an output, matching inputs are not sufficient to avoid conflict.
Tue Nov 17 11:51:16 1998 Mark Mitchell <mark@markmitchell.com> Tue Nov 17 11:51:16 1998 Mark Mitchell <mark@markmitchell.com>
* hash.h (hash_table_key): New type. * hash.h (hash_table_key): New type.
......
...@@ -5152,7 +5152,7 @@ reload_reg_free_for_value_p (regno, opnum, type, value, out, reloadnum, ...@@ -5152,7 +5152,7 @@ reload_reg_free_for_value_p (regno, opnum, type, value, out, reloadnum,
&& i != reloadnum) && i != reloadnum)
{ {
if (! reload_in[i] || ! rtx_equal_p (reload_in[i], value) if (! reload_in[i] || ! rtx_equal_p (reload_in[i], value)
|| reload_out[i]) || reload_out[i] || out)
{ {
int time2; int time2;
switch (reload_when_needed[i]) switch (reload_when_needed[i])
...@@ -5246,8 +5246,10 @@ reload_reg_free_for_value_p (regno, opnum, type, value, out, reloadnum, ...@@ -5246,8 +5246,10 @@ reload_reg_free_for_value_p (regno, opnum, type, value, out, reloadnum,
default: default:
return 0; return 0;
} }
if (time1 >= time2 if ((time1 >= time2
|| (out && time2 >= MAX_RECOG_OPERANDS * 4 + 4)) && (! reload_in[i] || reload_out[i]
|| ! rtx_equal_p (reload_in[i], value)))
|| (out && time2 >= MAX_RECOG_OPERANDS * 4 + 3))
return 0; return 0;
} }
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment