This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [patch] Fix the vectorization part of PR tree-optimization/32377
- From: "Richard Guenther" <richard dot guenther at gmail dot com>
- To: "Ira Rosen" <IRAR at il dot ibm dot com>
- Cc: gcc-patches at gcc dot gnu dot org, "Sebastian Pop" <sebpop at gmail dot com>
- Date: Wed, 12 Sep 2007 10:35:14 +0200
- Subject: Re: [patch] Fix the vectorization part of PR tree-optimization/32377
- References: <OFE58E9CE3.E3292D8D-ONC2257354.002C0935-C2257354.002E35AF@il.ibm.com>
On 9/12/07, Ira Rosen <IRAR@il.ibm.com> wrote:
>
> With Sebastian's patch
> http://gcc.gnu.org/ml/gcc-patches/2007-07/msg00330.html we are now able to
> distinguish between positive and negative dependence distance.
>
> In this loop the distance is 1 (positive) and the loop is not vectorizable:
>
> for (i = 0; i < N; i++){
> ia[i+1] = ia[i] * 4;
> }
>
> Here the dependence distance is negative (-1) and the loop is vectorizable:
>
> for (i = 0; i < N; i++){
> ia[i] = ia[i+1] * 4;
> }
>
> This patch takes the value of DDR_REVERSED_P into account to decide whether
> the distance is negative or positive.
>
> This patch still doesn't make the loop in the PR to get vectorized due to
> another problem:
> the analysis now fails with "affine-affine test failed: missing iteration
> counts". (See PR 32377 for more details).
>
> Testcases are attached.
> Bootstrapped with vectorization enabled and regtested on x86_64-linux.
> O.K. for mainline?
This is ok.
Thanks,
Richard.