[PATCH PR94969]Add unit distant vector to DDR in case of invariant access functions

Christophe Lyon christophe.lyon@linaro.org
Wed May 13 12:00:11 GMT 2020


Hi Bin,


On Mon, 11 May 2020 at 14:54, Richard Biener via Gcc-patches
<gcc-patches@gcc.gnu.org> wrote:
>
> On Mon, May 11, 2020 at 7:52 AM bin.cheng via Gcc-patches
> <gcc-patches@gcc.gnu.org> wrote:
> >
> > Hi,
> > As analyzed in PR94969, data dependence analysis now misses dependence vector for specific case in which DRs in DDR have the same invariant access functions.  This simple patch fixes the issue by also covering invariant cases.  Bootstrap and test on x86_64, is it OK?
>
> OK.
>
> Thanks,
> Richard.
>
> > Thanks,
> > bin
> >
> > 2020-05-11  Bin Cheng  <bin.cheng@linux.alibaba.com>
> >
> >         PR tree-optimization/94969
> >         * tree-data-dependence.c (constant_access_functions): Rename to...
> >         (invariant_access_functions): ...this.  Add parameter.  Check for
> >         invariant access function, rather than constant.
> >         (build_classic_dist_vector): Call above function.
> >         * tree-loop-distribution.c (pg_add_dependence_edges): Add comment.
> >
> > gcc/testsuite
> > 2020-05-11  Bin Cheng  <bin.cheng@linux.alibaba.com>
> >
> >         PR tree-optimization/94969
> >         * gcc.dg/tree-ssa/pr94969.c: New test.

The new test fails on arm and aarch64 and probably everywhere:
gcc.dg/tree-ssa/pr94969.c: dump file does not exist
UNRESOLVED: gcc.dg/tree-ssa/pr94969.c scan-tree-dump-not Loop 1
distributed: split to 3 loops "ldist"

Can you fix this?

Thanks


More information about the Gcc-patches mailing list