This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: [Autovect]dependencies of virtual defs/uses
- From: Dorit Nuzman <DORIT at il dot ibm dot com>
- To: "Daniel Berlin" <dberlin at dberlin dot org>
- Cc: gcc at gnu dot org, "Jiahua He" <jiahua_he at ustc dot edu>
- Date: Mon, 12 Feb 2007 22:24:03 +0200
- Subject: Re: [Autovect]dependencies of virtual defs/uses
> On 2/12/07, Jiahua He <jiahua_he@ustc.edu> wrote:
> > Hi,
> >
> > I am reading the code of autovect branch and curious about how to deal
> > with the dependencies of virtual defs/uses. In the function
> > vect_analyze_scalar_cycles( ), I found the statement "Skip virtual
> > phi's. The data dependences that are associated with virtual defs/uses
> > ( i.e., memory accesses) are analyzed elsewhere." But where is the
> > code? I tried to search for "vect_induction_def" and
> > "vect_reduction_def" and found that they are not used to assign
> > elsewhere. Is the analysis not implemented yet? Thanks in advance!
>
> They show up as data references because of tree-data-reference.c marking
them.
> At lets, that's how other linear loop transforms handles it.
> Not sure about how vectorizer deals with it specifically
>
We don't analyze the def-use cycles created by virtual defs/uses. We make
sure that any stmt in the loop that has virtual defs/uses associated with
it is a load/store stmt (i.e. has a dataref in its rhs/lhs), and then,
separately, we make sure we can analyze all the datarefs in the loop and
compute the dependence relations between them.
dorit
> >
> > Jiahua
> >