rename isl_basic_map_convex_hull to isl_basic_map_remove_redundancies
[platform/upstream/isl.git] / isl_map.c
index a4d1686..e152cdc 100644 (file)
--- a/isl_map.c
+++ b/isl_map.c
@@ -116,6 +116,8 @@ static void isl_dim_map_dump(struct isl_dim_map *dim_map)
 unsigned isl_basic_map_dim(const struct isl_basic_map *bmap,
                                enum isl_dim_type type)
 {
+       if (!bmap)
+               return 0;
        switch (type) {
        case isl_dim_param:
        case isl_dim_in:
@@ -162,12 +164,12 @@ unsigned isl_basic_set_dim(const struct isl_basic_set *bset,
 
 unsigned isl_basic_set_n_dim(const struct isl_basic_set *bset)
 {
-       return bset->dim->n_out;
+       return isl_basic_set_dim(bset, isl_dim_set);
 }
 
 unsigned isl_basic_set_n_param(const struct isl_basic_set *bset)
 {
-       return bset->dim->nparam;
+       return isl_basic_set_dim(bset, isl_dim_param);
 }
 
 unsigned isl_basic_set_total_dim(const struct isl_basic_set *bset)
@@ -177,12 +179,12 @@ unsigned isl_basic_set_total_dim(const struct isl_basic_set *bset)
 
 unsigned isl_set_n_dim(const struct isl_set *set)
 {
-       return set->dim->n_out;
+       return isl_set_dim(set, isl_dim_set);
 }
 
 unsigned isl_set_n_param(const struct isl_set *set)
 {
-       return set->dim->nparam;
+       return isl_set_dim(set, isl_dim_param);
 }
 
 unsigned isl_basic_map_n_in(const struct isl_basic_map *bmap)
@@ -2396,6 +2398,8 @@ __isl_give isl_basic_map *isl_basic_map_project_out(
 
        bmap = move_last(bmap, type, first, n);
        bmap = isl_basic_map_cow(bmap);
+       if (!bmap)
+               return NULL;
 
        row_size = 1 + isl_dim_total(bmap->dim) + bmap->extra;
        old = bmap->block2.data;
@@ -5296,7 +5300,7 @@ int isl_basic_map_is_empty(struct isl_basic_map *bmap)
 
        if (ISL_F_ISSET(bmap, ISL_BASIC_MAP_RATIONAL)) {
                struct isl_basic_map *copy = isl_basic_map_copy(bmap);
-               copy = isl_basic_map_convex_hull(copy);
+               copy = isl_basic_map_remove_redundancies(copy);
                empty = ISL_F_ISSET(copy, ISL_BASIC_MAP_EMPTY);
                isl_basic_map_free(copy);
                return empty;
@@ -6024,7 +6028,7 @@ struct isl_basic_map *isl_basic_map_normalize(struct isl_basic_map *bmap)
                return NULL;
        if (ISL_F_ISSET(bmap, ISL_BASIC_MAP_NORMALIZED))
                return bmap;
-       bmap = isl_basic_map_convex_hull(bmap);
+       bmap = isl_basic_map_remove_redundancies(bmap);
        bmap = isl_basic_map_sort_constraints(bmap);
        ISL_F_SET(bmap, ISL_BASIC_MAP_NORMALIZED);
        return bmap;