add isl_basic_set_sample_bounded
authorSven Verdoolaege <skimo@kotnet.org>
Thu, 6 Aug 2009 10:35:46 +0000 (12:35 +0200)
committerSven Verdoolaege <skimo@kotnet.org>
Fri, 7 Aug 2009 09:27:39 +0000 (11:27 +0200)
isl_sample.c
isl_sample.h

index 153b149..51eea13 100644 (file)
@@ -888,7 +888,7 @@ static struct isl_vec *pip_sample(struct isl_basic_set *bset)
        return sample;
 }
 
-struct isl_vec *isl_basic_set_sample(struct isl_basic_set *bset)
+struct isl_vec *basic_set_sample(struct isl_basic_set *bset, int bounded)
 {
        struct isl_ctx *ctx;
        unsigned dim;
@@ -927,10 +927,23 @@ struct isl_vec *isl_basic_set_sample(struct isl_basic_set *bset)
        case ISL_ILP_PIP:
                return pip_sample(bset);
        case ISL_ILP_GBR:
-               return gbr_sample(bset);
+               return bounded ? sample_bounded(bset) : gbr_sample(bset);
        }
        isl_assert(bset->ctx, 0, );
 error:
        isl_basic_set_free(bset);
        return NULL;
 }
+
+struct isl_vec *isl_basic_set_sample(struct isl_basic_set *bset)
+{
+       return basic_set_sample(bset, 0);
+}
+
+/* Compute an integer sample in "bset", where the caller guarantees
+ * that "bset" is bounded.
+ */
+struct isl_vec *isl_basic_set_sample_bounded(struct isl_basic_set *bset)
+{
+       return basic_set_sample(bset, 1);
+}
index 5a3aaea..891350a 100644 (file)
@@ -8,6 +8,7 @@ extern "C" {
 #endif
 
 struct isl_vec *isl_basic_set_sample(struct isl_basic_set *bset);
+struct isl_vec *isl_basic_set_sample_bounded(struct isl_basic_set *bset);
 
 #if defined(__cplusplus)
 }