> 
> 
> ------------------------------------------------------------------
> Sender:Richard Biener <richard.guent...@gmail.com>
> Sent At:2019 Apr. 1 (Mon.) 21:07
> Recipient:bin.cheng <bin.ch...@linux.alibaba.com>
> Cc:GCC Patches <gcc-patches@gcc.gnu.org>
> Subject:Re: [PATCH PR89725]Handle DR's access functions of loops not in DDR's 
> loop_nest
> 
> 
> On Mon, Apr 1, 2019 at 5:10 AM bin.cheng <bin.ch...@linux.alibaba.com> wrote:
> >
> > Hi,
> >
> > As described in comments of PR89725, this patch fixes out-of-bound access 
> > during
> > computing classic dist/dir vector for DDR.  Basically it does two things: 
> > A) Handle
> > relevant chrec of outer loop in multivariate access function as invariant 
> > symbol during
> > DDR analysis; B) Bypass relevant univariate access functions.
> >
> > Bootstrap and test on x86_64, any comments?
> 
> LGTM, as Jakub said elsewhere index_in_loop_nest is better written as
> 
> static inline int
> index_in_loop_nest (int var, vec<loop_p> loop_nest)
> {
>   struct loop *loopi;
>   int var_index;
> 
>   for (var_index = 0; loop_nest.iterate (var_index, &loopi);
>        var_index++)
>     if (loopi->num == var)
>       return var_index;
> 
>   gcc_unreachable ();
> }
> 
> OK with that change.

Updated patch according to this review.  Also, could anyone help me commit this 
please?  Write-access on my system seems broken.  Thanks.

Thanks,
bin
2019-04-01  Bin Cheng  <bin.ch...@linux.alibaba.com>

        PR tree-optimization/89725
        * tree-chrec.c (chrec_contains_symbols): New parameter.  Handle outer
        loop's chrec as invariant symbol.
        * tree-chrec.h (chrec_contains_symbols): New parameter.
        * tree-data-ref.c (analyze_miv_subscript): Pass new argument.
        (build_classic_dist_vector_1, add_other_self_distances): Bypass access
        function of loops not in DDR's loop_nest.
        * tree-data-ref.h (index_in_loop_nest): Add unreachable check.

2018-04-01  Bin Cheng  <bin.ch...@linux.alibaba.com>

        PR tree-optimization/89725
        * gcc/testsuite/gcc.dg/tree-ssa/pr89725.c: New test.

Attachment: 0001-pr89725.patch
Description: Binary data

Reply via email to