privately export isl_basic_{set,map}_normalize_constraints
authorSven Verdoolaege <skimo@kotnet.org>
Tue, 3 Mar 2009 20:28:00 +0000 (21:28 +0100)
committerSven Verdoolaege <skimo@kotnet.org>
Fri, 20 Mar 2009 14:21:04 +0000 (15:21 +0100)
isl_map_private.h
isl_map_simplify.c

index 5b1afc6..91f966f 100644 (file)
@@ -64,6 +64,10 @@ struct isl_basic_map *isl_basic_map_gauss(
        struct isl_basic_map *bmap, int *progress);
 struct isl_basic_set *isl_basic_set_gauss(
        struct isl_basic_set *bset, int *progress);
+struct isl_basic_map *isl_basic_map_normalize_constraints(
+       struct isl_basic_map *bmap);
+struct isl_basic_set *isl_basic_set_normalize_constraints(
+       struct isl_basic_set *bset);
 struct isl_basic_map *isl_basic_map_implicit_equalities(
                                                struct isl_basic_map *bmap);
 struct isl_basic_set *isl_basic_map_underlying_set(struct isl_basic_map *bmap);
index 37ec30c..1fdb88f 100644 (file)
@@ -253,7 +253,8 @@ error:
        return NULL;
 }
 
-static struct isl_basic_map *normalize_constraints(struct isl_basic_map *bmap)
+struct isl_basic_map *isl_basic_map_normalize_constraints(
+       struct isl_basic_map *bmap)
 {
        int i;
        isl_int gcd;
@@ -303,6 +304,13 @@ static struct isl_basic_map *normalize_constraints(struct isl_basic_map *bmap)
        return bmap;
 }
 
+struct isl_basic_set *isl_basic_set_normalize_constraints(
+       struct isl_basic_set *bset)
+{
+       (struct isl_basic_set *)isl_basic_map_normalize_constraints(
+               (struct isl_basic_map *)bset);
+}
+
 static void eliminate_div(struct isl_basic_map *bmap, isl_int *eq, unsigned div)
 {
        int i;
@@ -891,7 +899,7 @@ struct isl_basic_map *isl_basic_map_simplify(struct isl_basic_map *bmap)
                return NULL;
        while (progress) {
                progress = 0;
-               bmap = normalize_constraints(bmap);
+               bmap = isl_basic_map_normalize_constraints(bmap);
                bmap = eliminate_divs_eq(bmap, &progress);
                bmap = eliminate_divs_ineq(bmap, &progress);
                bmap = isl_basic_map_gauss(bmap, &progress);
@@ -1122,7 +1130,7 @@ struct isl_basic_map *isl_basic_map_eliminate_vars(
                        i = last + 1;
                }
                if (n_lower > 0 && n_upper > 0) {
-                       bmap = normalize_constraints(bmap);
+                       bmap = isl_basic_map_normalize_constraints(bmap);
                        bmap = remove_duplicate_constraints(bmap, NULL);
                        bmap = isl_basic_map_gauss(bmap, NULL);
                        bmap = isl_basic_map_convex_hull(bmap);