summaryrefslogtreecommitdiffstats
path: root/polly/lib/External/isl/isl_vec.c
diff options
context:
space:
mode:
authorTobias Grosser <tobias@grosser.es>2016-06-12 04:30:40 +0000
committerTobias Grosser <tobias@grosser.es>2016-06-12 04:30:40 +0000
commit07b209523403d6c0d68c328cb20a8eaf6b51369c (patch)
tree8be8684e3bb7f859f925276864978daabc8b90e2 /polly/lib/External/isl/isl_vec.c
parent8620679eb5f30246c6d9f8d5813936ffed2502d6 (diff)
downloadbcm5719-llvm-07b209523403d6c0d68c328cb20a8eaf6b51369c.tar.gz
bcm5719-llvm-07b209523403d6c0d68c328cb20a8eaf6b51369c.zip
Update isl to isl-0.17.1-57-g1879898
With this update the isl AST generation extracts disjunctive constraints early on. As a result, code that previously resulted in two branches with (close-to) identical code within them: if (P <= -1) { for (int c0 = 0; c0 < N; c0 += 1) Stmt_store(c0); } else if (P >= 1) for (int c0 = 0; c0 < N; c0 += 1) Stmt_store(c0); results now in only a single branch body: if (P <= -1 || P >= 1) for (int c0 = 0; c0 < N; c0 += 1) Stmt_store(c0); This resolves http://llvm.org/PR27559 Besides the above change, this isl update brings better simplification of sets/maps containing existentially quantified dimensions and fixes a bug in isl's coalescing. llvm-svn: 272500
Diffstat (limited to 'polly/lib/External/isl/isl_vec.c')
-rw-r--r--polly/lib/External/isl/isl_vec.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/polly/lib/External/isl/isl_vec.c b/polly/lib/External/isl/isl_vec.c
index 29b9d43573e..2b49a8106ad 100644
--- a/polly/lib/External/isl/isl_vec.c
+++ b/polly/lib/External/isl/isl_vec.c
@@ -51,6 +51,7 @@ struct isl_vec *isl_vec_alloc(struct isl_ctx *ctx, unsigned size)
return vec;
error:
isl_blk_free(ctx, vec->block);
+ free(vec);
return NULL;
}
OpenPOWER on IntegriCloud