diff options
| author | Tobias Grosser <tobias@grosser.es> | 2016-10-01 19:46:51 +0000 |
|---|---|---|
| committer | Tobias Grosser <tobias@grosser.es> | 2016-10-01 19:46:51 +0000 |
| commit | 5652c9c830bfdff02c5a04f7f770a28b7fa64383 (patch) | |
| tree | 80d05919cc7acdf2261c5025af94ad3f1e12e71e /polly/lib/External/isl/isl_aff.c | |
| parent | 04e249b128b252de3730d0ee1f4bbd8faa3915b4 (diff) | |
| download | bcm5719-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.c | 8 |
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)); |

