[patch, 4.1.2, 4.2.1, 4.3] Fix a bug in pointer dependency test

Ira Rosen IRAR@il.ibm.com
Mon Feb 19 11:36:00 GMT 2007



Roger Sayle <roger@eyesopen.com> wrote on 18/02/2007 22:46:06:

>
> Hi Ira (and Diego),
>
> Re: http://gcc.gnu.org/ml/gcc-patches/2007-01/msg01228.html
> Re: http://gcc.gnu.org/ml/gcc-patches/2007-02/msg00230.html
>
> On Fri, 2 Feb 2007, Diego Novillo wrote:
> > Ira Rosen wrote on 01/15/07 05:49:
> >>      * tree-ssa-alias.c (may_aliases_intersect): New function.
> >>      * tree-data-ref.c (ptr_ptr_may_alias_p): Call
> >>   may_aliases_intersect for different tags.
> >>      * tree-flow.h (may_aliases_intersect): Add function declaration.
> >
> > In mainline you no longer need this after Dan's bitmap conversion for
> > alias sets.
> >
> > The rest is OK everywhere.
>
>
> It looks like this patch is responsible for today's regression of three
> gfortran test cases in the dejagnu testsuite on the 4.1 branch, namely
> gfortran.dg/vect/vect-2.c on x86_64-unknown-linux-gnu.
>
> Instead of:
>
> ! vect-2.f90:7: note: LOOP VECTORIZED.
> ! vect-2.f90:7: note: vectorized 3 loops in function.
>
> we now get
>
>   vect-2.f90:7: note: LOOP VECTORIZED.
> ! vect-2.f90:7: note: not vectorized: can't determine dependence between
> (*a_27)[D.955_25] and (*c_23)[D.955_25]
> ! vect-2.f90:7: note: vectorized 2 loops in function.
>

Yes, I somehow missed these yesterday. It happens on powerpc too. I will
change the test case on 4.1, if there is no objection.

> Interestingly, this test case is unchanged on mainline, where it
currently
> passes.  I'm wondering are there other alias related patches that need to
> be backported together with this fix?

I haven't committed the fix to mainline yet, so it does not surprise me.

However, on 4.2 after the fix the test passes too (and on mainline if I add
the fix), due to the fact that all the function arguments get different
PARM_NOALIAS values, and their may_alias sets does not intersect. Is this
the correct behavior? Are function arguments supposed to be not aliased?
(I attached the alias analysis dump for this testcase).

>
> Roger
> --
>

Thanks,
Ira


(See attached file: vect-2.f90.084t.alias6.txt)
-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: vect-2.f90.084t.alias6.txt
URL: <http://gcc.gnu.org/pipermail/gcc-patches/attachments/20070219/384f7352/attachment.txt>


More information about the Gcc-patches mailing list