summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--polly/lib/Analysis/ScopInfo.cpp9
1 files changed, 7 insertions, 2 deletions
diff --git a/polly/lib/Analysis/ScopInfo.cpp b/polly/lib/Analysis/ScopInfo.cpp
index fd694b2c7b9..49e81ef1933 100644
--- a/polly/lib/Analysis/ScopInfo.cpp
+++ b/polly/lib/Analysis/ScopInfo.cpp
@@ -2047,6 +2047,13 @@ static isl_stat buildMinMaxAccess(__isl_take isl_set *Set, void *User) {
isl_aff *OneAff;
unsigned Pos;
+ Set = isl_set_remove_divs(Set);
+
+ if (isl_set_n_basic_set(Set) >= MaxConjunctsInDomain) {
+ isl_set_free(Set);
+ return isl_stat_error;
+ }
+
// Restrict the number of parameters involved in the access as the lexmin/
// lexmax computation will take too long if this number is high.
//
@@ -2073,8 +2080,6 @@ static isl_stat buildMinMaxAccess(__isl_take isl_set *Set, void *User) {
}
}
- Set = isl_set_remove_divs(Set);
-
MinPMA = isl_set_lexmin_pw_multi_aff(isl_set_copy(Set));
MaxPMA = isl_set_lexmax_pw_multi_aff(isl_set_copy(Set));
OpenPOWER on IntegriCloud