This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: RFC: mips SB-1 DFA scheduler
- From: Jim Wilson <wilson at specifixinc dot com>
- To: Nigel Stephens <nigel at mips dot com>
- Cc: Richard Sandiford <rsandifo at redhat dot com>, gcc-patches at gcc dot gnu dot org
- Date: 25 Mar 2004 20:53:40 -0800
- Subject: Re: RFC: mips SB-1 DFA scheduler
- References: <1077855776.1057.244.camel@leaf.tuliptree.org><87oerk4pm7.fsf@redhat.com> <405AFF96.9060503@mips.com>
On Fri, 2004-03-19 at 06:11, Nigel Stephens wrote:
> Will store_data_bypass_p in recog.c do the job?
Probably. Thanks for the pointer, I will have to look at this.
> Surely for a load an
> input dependency *must* be due to the address, since there's no data
> register input to a load.
Yes, but in practice, things are a lot more complicated than that. RTL
patterns can reference registers in different ways. They sometimes
reference registers that they don't actually use. RTL patterns can
match multiple operations. The scheduler can create fake dependencies
for a number of situations, volatile asms, volatile mems, flushing lists
when they get too long to avoid O(N^2) effects, etc. Thus a dependency
does not necessarily indicate an address-use. But perhaps I am worrying
about a non-issue here. I haven't looked at the details of what happens
in any of these cases, and most of these are going to be rare enough
that they may not matter. Also the fake dependencies are usually not
going to be data dependencies.
--
Jim Wilson, GNU Tools Support, http://www.SpecifixInc.com