On Fri, Sep 29, 2017 at 6:18 AM, Richard Biener <rguent...@suse.de> wrote:
> The idea is that we'd transform the above to
> basically wrap each SCOP inside a loop that doesn't iterate.
>
> Does this look reasonable?

Yes, I think your solution looks good.

> 2017-09-29  Richard Biener  <rguent...@suse.de>
>
>         PR tree-optimization/82355
>         * graphite-isl-ast-to-gimple.c (build_iv_mapping): Also build
>         a mapping for the enclosing loop but avoid generating one for
>         the loop tree root.
>         (copy_bb_and_scalar_dependences): Remove premature codegen
>         error on PHIs in blocks duplicated into multiple places.
>         * graphite-scop-detection.c
>         (scop_detection::stmt_has_simple_data_refs_p): For a loop not
>         in the region use it as loop and nest to analyze the DR in.
>         (try_generate_gimple_bb): Likewise.
>         * graphite-sese-to-poly.c (extract_affine_chrec): Adjust.
>         (add_loop_constraints): For blocks in a loop not in the region
>         create a dimension with a single iteration.
>         * sese.h (gbb_loop_at_index): Remove assert.
>
>         * gcc.dg/graphite/fuse-1.c: Adjust.
>         * gcc.dg/graphite/fuse-2.c: Likewise.
>         * gcc.dg/graphite/pr82355.c: New testcase.

The change looks good to me.  Thank you!

Reply via email to