On Tue, Jul 26, 2011 at 09:33, Richard Guenther <rguent...@suse.de> wrote: > On Tue, 26 Jul 2011, Sebastian Pop wrote: > >> Ping. >> Any opinions on this patch? > > Well, I don't think we should do this. Why does the user disable > scev-const-prop when enabling graphite? If he does so, fine - he > has to live with worse codegen.
Here is the patch. Ok for trunk after regstrap? Thanks, Sebastian
From 5c1f59fa7e9c5fb5e5960975153cd040d51baab2 Mon Sep 17 00:00:00 2001 From: Sebastian Pop <seb...@gmail.com> Date: Sat, 23 Jul 2011 23:29:30 -0500 Subject: [PATCH] Fix PR47691: do not run graphite if scev_const_prop has not run before 2011-07-23 Sebastian Pop <sebastian....@amd.com> PR middle-end/47691 * graphite.c (graphite_initialize): Return false when flag_tree_scev_cprop is not set. * gfortran.dg/graphite/id-pr47691.f: New. --- gcc/ChangeLog | 6 ++++++ gcc/graphite.c | 4 ++++ gcc/testsuite/ChangeLog | 5 +++++ gcc/testsuite/gfortran.dg/graphite/id-pr47691.f | 7 +++++++ 4 files changed, 22 insertions(+), 0 deletions(-) create mode 100644 gcc/testsuite/gfortran.dg/graphite/id-pr47691.f diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 9cfa21b..abb5f77 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2011-07-23 Sebastian Pop <sebastian....@amd.com> + + PR middle-end/47691 + * graphite.c (graphite_initialize): Return false when + flag_tree_scev_cprop is not set. + 2011-07-21 Sebastian Pop <sebastian....@amd.com> PR middle-end/47654 diff --git a/gcc/graphite.c b/gcc/graphite.c index b013447..caba926 100644 --- a/gcc/graphite.c +++ b/gcc/graphite.c @@ -191,6 +191,10 @@ graphite_initialize (void) int ppl_initialized; if (number_of_loops () <= 1 + + /* scev constant propagation is required for Graphite. */ + || !flag_tree_scev_cprop + /* FIXME: This limit on the number of basic blocks of a function should be removed when the SCOP detection is faster. */ || n_basic_blocks > PARAM_VALUE (PARAM_GRAPHITE_MAX_BBS_PER_FUNCTION)) diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index a63b647..5f9b79d 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,8 @@ +2011-07-23 Sebastian Pop <sebastian....@amd.com> + + PR middle-end/47691 + * gfortran.dg/graphite/id-pr47691.f: New. + 2011-07-21 Sebastian Pop <sebastian....@amd.com> PR middle-end/47654 diff --git a/gcc/testsuite/gfortran.dg/graphite/id-pr47691.f b/gcc/testsuite/gfortran.dg/graphite/id-pr47691.f new file mode 100644 index 0000000..0abbd55 --- /dev/null +++ b/gcc/testsuite/gfortran.dg/graphite/id-pr47691.f @@ -0,0 +1,7 @@ +! { dg-options "-O -fgraphite-identity -ffast-math -fno-tree-scev-cprop" } + dimension b(12,8) + do i=1,norb + end do + b(i,j) = 0 + call rdrsym(b) + end -- 1.7.4.1