summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTobias Grosser <tobias@grosser.es>2015-11-11 17:59:53 +0000
committerTobias Grosser <tobias@grosser.es>2015-11-11 17:59:53 +0000
commita52b4da0395255406c1d40a2fc203555bfd06ac1 (patch)
tree8689537bef574ae9767bafe1c9e7c398ad18bfed
parent7841efbb9255126763167b9d7d59242333c6f1bd (diff)
downloadbcm5719-llvm-a52b4da0395255406c1d40a2fc203555bfd06ac1.tar.gz
bcm5719-llvm-a52b4da0395255406c1d40a2fc203555bfd06ac1.zip
ScopInfo: Free set after compute out has been triggered
In certain cases isl will not free the return values of operations for which a computeout has been triggered. Hence, make sure we free it explicitly. No test, as I did not manage to reduce one yet. llvm-svn: 252766
-rw-r--r--polly/lib/Analysis/ScopInfo.cpp4
1 files changed, 3 insertions, 1 deletions
diff --git a/polly/lib/Analysis/ScopInfo.cpp b/polly/lib/Analysis/ScopInfo.cpp
index baa9bc1d6a6..b16bfa64788 100644
--- a/polly/lib/Analysis/ScopInfo.cpp
+++ b/polly/lib/Analysis/ScopInfo.cpp
@@ -1597,8 +1597,10 @@ void Scop::buildBoundaryContext() {
BoundaryContext = isl_set_complement(BoundaryContext);
- if (isl_ctx_last_error(getIslCtx()) == isl_error_quota)
+ if (isl_ctx_last_error(getIslCtx()) == isl_error_quota) {
+ isl_set_free(BoundaryContext);
BoundaryContext = isl_set_empty(getParamSpace());
+ }
isl_options_set_on_error(getIslCtx(), ISL_ON_ERROR_ABORT);
isl_ctx_reset_operations(getIslCtx());
OpenPOWER on IntegriCloud