summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--polly/lib/CodeGen/IslAst.cpp8
1 files changed, 8 insertions, 0 deletions
diff --git a/polly/lib/CodeGen/IslAst.cpp b/polly/lib/CodeGen/IslAst.cpp
index c60cd68e547..e8ce6b4dc0b 100644
--- a/polly/lib/CodeGen/IslAst.cpp
+++ b/polly/lib/CodeGen/IslAst.cpp
@@ -400,6 +400,14 @@ void IslAst::init(const Dependences &D) {
bool PerformParallelTest = PollyParallel || DetectParallel ||
PollyVectorizerChoice != VECTORIZER_NONE;
+ // We can not perform the dependence analysis and, consequently,
+ // the parallel code generation in case the schedule tree contains
+ // extension nodes.
+ auto *ScheduleTree = S->getScheduleTree();
+ PerformParallelTest =
+ PerformParallelTest && !S->containsExtensionNode(ScheduleTree);
+ isl_schedule_free(ScheduleTree);
+
// Skip AST and code generation if there was no benefit achieved.
if (!benefitsFromPolly(S, PerformParallelTest))
return;
OpenPOWER on IntegriCloud