This is the mail archive of the 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: [lno] "no flow-sensitive alias info" warning to vectorizer

On Tue, 2004-02-24 at 10:59, Dorit Naishlos wrote:
> I've noticed a new warning is being generated against the vectorizer (I
> think it appeared after the recent merge with tree-ssa):
> "NOTE: no flow-sensitive alias info for vect_pX.5_14 in *vect_pX.5_14 =
> vect_cst_.6;"
These are mostly harmless.  They just inform you that a given SSA_NAME
has no alias information.

> for the following vectorized tree sequence:
> 1  vect_pX.1_11 = &X;
> 2  vect_iv_.3_12 = vect_iv_.2_15;
> 3  vect_iv_.4_13 = vect_iv_.3_12 * 16;
> 4  vect_pX.5_14 = vect_pX.1_11 + vect_iv_.4_13;
> 5  *vect_pX.5_14 = vect_cst_.6_18;
> Currently, I only set 'type_mem_tag' to vectorizer generated pointers,
> using:
> get_var_ann (ptr)->type_mem_tag = array_base;
Hmm, it would be better if you can call the alias analyzer to set memory
tags.  Ideally, only the alias analyzer should be assigning memory
tags.  In this case, I expect 'vect_pX.5_14' to have 'X' as its only

The net effect should be that you will only get virtual operands for 'X'
every time you emit a dereference of vect_pX.5.

> Can I (and should I) do something in order to not get this new warning?
> Should I set a 'name_mem_tag' as well? which API should I use?
Try scheduling a compute_may_aliases pass right after the vectorizer.
Oh, and try not to create memory tags manually.


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