This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: Scheduling automaton question
- From: Bernd Schmidt <bernds at codesourcery dot com>
- To: FrÃdÃric RISS <frederic dot riss at gmail dot com>
- Cc: GCC List <gcc at gcc dot gnu dot org>, "Vladimir N. Makarov" <vmakarov at redhat dot com>
- Date: Fri, 11 Feb 2011 20:21:35 +0100
- Subject: Re: Scheduling automaton question
- References: <4D552C9C.6090006@codesourcery.com> <1297449784.1777.2.camel@funkybook>
On 02/11/2011 07:43 PM, FrÃdÃric RISS wrote:
> Le vendredi 11 fÃvrier 2011 Ã 13:33 +0100, Bernd Schmidt a Ãcrit :
>> Suppose I have two insns, one reserving (A|B|C), and the other reserving
>> A. I'm observing that when the first one is scheduled in an otherwise
>> empty state, it reserves the A unit and blocks the second one from being
>> scheduled in the same cycle. This is a problem when there's an
>> anti-dependence of cost 0 between the two instructions.
>
> If you generate a NDFA ( using '(automata_option "ndfa")' ) it should
> allow you to schedule both instructions together as this should try all
> functional unit alternatives.
Ah, that seems to be exactly what I was looking for. Thanks!
I'd expect this won't work too well with define_query_cpu_unit, so I'll
need another method to assign units after scheduling.
Bernd