isl_basic_map_overlying_set: don't add div constraints for unknown divs
authorSven Verdoolaege <skimo@kotnet.org>
Sun, 22 Feb 2009 11:22:51 +0000 (12:22 +0100)
committerSven Verdoolaege <skimo@kotnet.org>
Sun, 22 Feb 2009 17:01:11 +0000 (18:01 +0100)
Constructing div constraints as if the div were known, results in
unsatisfiable constraints.
Perhaps isl_basic_map_overlying_set shouldn't get called with a model
with unknown divs, but we currently allow it.

isl_map.c

index c7efa29..8620d6d 100644 (file)
--- a/isl_map.c
+++ b/isl_map.c
@@ -2150,9 +2150,12 @@ struct isl_basic_map *isl_basic_map_overlying_set(
                }
                bmap = isl_basic_map_extend_constraints(bmap, 
                                                        0, 2 * like->n_div);
-               for (i = 0; i < like->n_div; ++i)
+               for (i = 0; i < like->n_div; ++i) {
+                       if (isl_int_is_zero(bmap->div[i][0]))
+                               continue;
                        if (add_div_constraints(bmap, i) < 0)
                                goto error;
+               }
        }
        isl_basic_map_free(like);
        bmap = isl_basic_map_simplify(bmap);