summaryrefslogtreecommitdiff
path: root/gcc/graphite-scop-detection.c
diff options
context:
space:
mode:
authorAditya Kumar <aditya.k7@samsung.com>2015-11-19 23:06:18 +0000
committerSebastian Pop <spop@gcc.gnu.org>2015-11-19 23:06:18 +0000
commita378e92255a31d26d0905e72de1abd91a161f758 (patch)
tree1c5ffeb4a3d32dabd1282ae7c55fc1f8eadd0719 /gcc/graphite-scop-detection.c
parent2927ca4b24666f947b0c91c42fabc41a98593a3a (diff)
downloadgcc-a378e92255a31d26d0905e72de1abd91a161f758.tar.gz
fix PR68428: ignore bb dominated by the scop->exit
Co-Authored-By: Sebastian Pop <s.pop@samsung.com> From-SVN: r230632
Diffstat (limited to 'gcc/graphite-scop-detection.c')
-rw-r--r--gcc/graphite-scop-detection.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/gcc/graphite-scop-detection.c b/gcc/graphite-scop-detection.c
index e42b9bf9c41..84fe945e74a 100644
--- a/gcc/graphite-scop-detection.c
+++ b/gcc/graphite-scop-detection.c
@@ -1062,12 +1062,16 @@ scop_detection::harmful_stmt_in_region (sese_l scop) const
basic_block bb;
FOR_EACH_VEC_ELT (dom, i, bb)
{
- DEBUG_PRINT (dp << "\nVisiting bb_" << bb->index);
+ DEBUG_PRINT (dp << "Visiting bb_" << bb->index << "\n");
/* We don't want to analyze any bb outside sese. */
if (!dominated_by_p (CDI_POST_DOMINATORS, bb, exit_bb))
continue;
+ /* Basic blocks dominated by the scop->exit are not in the scop. */
+ if (bb != exit_bb && dominated_by_p (CDI_DOMINATORS, bb, exit_bb))
+ continue;
+
/* The basic block should not be part of an irreducible loop. */
if (bb->flags & BB_IRREDUCIBLE_LOOP)
{