summaryrefslogtreecommitdiffstats
path: root/polly/lib/External/isl/isl_aff.c
diff options
context:
space:
mode:
authorTobias Grosser <tobias@grosser.es>2016-10-01 19:46:51 +0000
committerTobias Grosser <tobias@grosser.es>2016-10-01 19:46:51 +0000
commit5652c9c830bfdff02c5a04f7f770a28b7fa64383 (patch)
tree80d05919cc7acdf2261c5025af94ad3f1e12e71e /polly/lib/External/isl/isl_aff.c
parent04e249b128b252de3730d0ee1f4bbd8faa3915b4 (diff)
downloadbcm5719-llvm-5652c9c830bfdff02c5a04f7f770a28b7fa64383.tar.gz
bcm5719-llvm-5652c9c830bfdff02c5a04f7f770a28b7fa64383.zip
isl: update to isl-0.17.1-233-gc911e6a
llvm-svn: 283049
Diffstat (limited to 'polly/lib/External/isl/isl_aff.c')
-rw-r--r--polly/lib/External/isl/isl_aff.c8
1 files changed, 7 insertions, 1 deletions
diff --git a/polly/lib/External/isl/isl_aff.c b/polly/lib/External/isl/isl_aff.c
index 79aed95ec0a..3be95ffece7 100644
--- a/polly/lib/External/isl/isl_aff.c
+++ b/polly/lib/External/isl/isl_aff.c
@@ -4251,6 +4251,8 @@ __isl_give isl_pw_multi_aff *isl_pw_multi_aff_product(
/* Construct a map mapping the domain of the piecewise multi-affine expression
* to its range, with each dimension in the range equated to the
* corresponding affine expression on its cell.
+ *
+ * If the domain of "pma" is rational, then so is the constructed "map".
*/
__isl_give isl_map *isl_map_from_pw_multi_aff(__isl_take isl_pw_multi_aff *pma)
{
@@ -4263,12 +4265,16 @@ __isl_give isl_map *isl_map_from_pw_multi_aff(__isl_take isl_pw_multi_aff *pma)
map = isl_map_empty(isl_pw_multi_aff_get_space(pma));
for (i = 0; i < pma->n; ++i) {
+ isl_bool rational;
isl_multi_aff *maff;
isl_basic_map *bmap;
isl_map *map_i;
+ rational = isl_set_is_rational(pma->p[i].set);
+ if (rational < 0)
+ map = isl_map_free(map);
maff = isl_multi_aff_copy(pma->p[i].maff);
- bmap = isl_basic_map_from_multi_aff(maff);
+ bmap = isl_basic_map_from_multi_aff2(maff, rational);
map_i = isl_map_from_basic_map(bmap);
map_i = isl_map_intersect_domain(map_i,
isl_set_copy(pma->p[i].set));
OpenPOWER on IntegriCloud