This is the mail archive of the gcc@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Semi-Latent Bug in tree vectorizer


On Fri, 2005-04-08 at 13:27 -0400, Andrew MacLeod wrote:

> 
> 
> What are these uses? 
The later uses are scalar reads from the same memory location.

>  If they are references to things that aliased
> *D.1470_8, we should eliminate the VUSE/MAYDEF, shouldnt we? I presume
> they arent relevant any more if vec_px.17 isnt in the same alias set.
I would expect them to be relevant -- we're hitting the precise same
memory location --  just in vector form rather than in scalar form.

For the alias not to be relevant would indicate that vectorization 
actually improved alias analysis.

> And if they are relevant, then we need to find out what the new variable
> is, and change all the uses to the new one
I'm not sure I follow.  What needs to happen is that we either need to
ensure that the vector memory dereference has the same alias sets as
the scalar dereference, rewrite all the downstream users to some
aggregate alias set, or carry the V_MAY_DEF operands forward, even if
it's not obvious to the operand code that the statement uses/sets a
particular V_MAY_DEF anymore.

jeff





Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]