Fix bootstrap with -mno-accumulate-outgoing-args

Richard Henderson rth@redhat.com
Wed Feb 5 15:40:00 GMT 2014


On 02/04/2014 09:35 AM, Jan Hubicka wrote:
>> On 02/04/2014 08:48 AM, Jan Hubicka wrote:
>>> How things are supposed to work in this case? So perhaps we need scheduler to
>>> understand and move around the ARGS_SIZE note?
>>
>> I believe we do need to have the scheduler move the notes around.
> 
> If we need notes on non-stack adjusting insns as you seem to show in your testcase,
> I guess it is the only way around.  Still combine stack adjust may be smart enough
> to not produce redundant note in the case of go's ICE.
> 
> I am not terribly familiar with the code, will you look into it or shall I give it a try?

I had a brief look at find_modifiable_mems, which seems to be the only kind of
schedule-time dependency breaking that we do.  I started writing some new code
that would handle REG_ARGS_SIZE, but then considered that wasn't terribly
appropriate for stage4.

So I've left off with just the dependency links between the insns.  We'd need
these for the schedule-time adjustments anyway, and with them in place the
scheduler does not re-order the insns in a way that causes problems.

Testing for x86_64 has finished; i686 is nearly done.  I suppose the only
question I have is if anyone disagrees that OUTPUT is incorrect as the
dependency type.


r~



More information about the Gcc-patches mailing list