This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: Fix bootstrap with -mno-accumulate-outgoing-args
- From: Richard Henderson <rth at redhat dot com>
- To: gcc-patches at gcc dot gnu dot org
- Cc: Jan Hubicka <hubicka at ucw dot cz>, Jakub Jelinek <jakub at redhat dot com>, Vladimir Makarov <vmakarov at redhat dot com>
- Date: Wed, 05 Feb 2014 07:40:29 -0800
- Subject: Re: Fix bootstrap with -mno-accumulate-outgoing-args
- Authentication-results: sourceware.org; auth=none
- References: <20140101142311 dot GC26209 at kam dot mff dot cuni dot cz> <52F113EE dot 3010308 at redhat dot com> <20140204164851 dot GB9877 at kam dot mff dot cuni dot cz> <52F11DFE dot 1090503 at redhat dot com> <20140204173509 dot GA16580 at kam dot mff dot cuni dot cz>
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~