diff options
author | Sebastian Pop <spop@gcc.gnu.org> | 2010-01-07 18:33:01 +0000 |
---|---|---|
committer | Sebastian Pop <spop@gcc.gnu.org> | 2010-01-07 18:33:01 +0000 |
commit | 11d6ea5e1da0876047915162678967b0cb90ec49 (patch) | |
tree | 6f83ba20e9cf8193ffdaaae85927a545b30222fe /gcc/graphite-blocking.c | |
parent | 556afcdc1107b79c8f037cc1f9dc4f5a220ff8e4 (diff) | |
download | gcc-11d6ea5e1da0876047915162678967b0cb90ec49.zip gcc-11d6ea5e1da0876047915162678967b0cb90ec49.tar.gz gcc-11d6ea5e1da0876047915162678967b0cb90ec49.tar.bz2 |
Update loop-block testcases.
2010-01-06 Sebastian Pop <sebastian.pop@amd.com>
* graphite-blocking.c (scop_do_block): Print "SCoP will be loop
blocked" only when both the strip mine and the interchange have
been applied.
* testsuite/gcc.dg/graphite/block-2.c: Removed.
* testsuite/gcc.dg/graphite/block-3.c: Add scan pattern.
* testsuite/gcc.dg/graphite/block-4.c: Same.
* testsuite/gcc.dg/graphite/block-5.c: Same.
* testsuite/gcc.dg/graphite/block-6.c: Same.
From-SVN: r155703
Diffstat (limited to 'gcc/graphite-blocking.c')
-rw-r--r-- | gcc/graphite-blocking.c | 14 |
1 files changed, 8 insertions, 6 deletions
diff --git a/gcc/graphite-blocking.c b/gcc/graphite-blocking.c index 3cf60e9..f7ddae2 100644 --- a/gcc/graphite-blocking.c +++ b/gcc/graphite-blocking.c @@ -285,25 +285,27 @@ scop_do_strip_mine (scop_p scop) bool scop_do_block (scop_p scop) { - bool transform_done = false; + bool strip_mined = false; + bool interchanged = false; store_scattering (scop); - lst_do_strip_mine (SCOP_TRANSFORMED_SCHEDULE (scop)); - transform_done = scop_do_interchange (scop); + strip_mined = lst_do_strip_mine (SCOP_TRANSFORMED_SCHEDULE (scop)); + interchanged = scop_do_interchange (scop); /* If we don't interchange loops, then the strip mine is not profitable, and the transform is not a loop blocking. */ - if (!transform_done + if (!interchanged || !graphite_legal_transform (scop)) { restore_scattering (scop); return false; } - else if (dump_file && (dump_flags & TDF_DETAILS)) + else if (strip_mined && interchanged + && dump_file && (dump_flags & TDF_DETAILS)) fprintf (dump_file, "SCoP will be loop blocked.\n"); - return transform_done; + return strip_mined || interchanged; } #endif |