projects
/
platform
/
upstream
/
isl.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (parent:
0ac9d81
)
isl_sample.c: extract out empty_sample
author
Sven Verdoolaege
<skimo@kotnet.org>
Sun, 12 Jul 2009 08:47:22 +0000
(10:47 +0200)
committer
Sven Verdoolaege
<skimo@kotnet.org>
Mon, 13 Jul 2009 21:40:12 +0000
(23:40 +0200)
isl_sample.c
patch
|
blob
|
history
diff --git
a/isl_sample.c
b/isl_sample.c
index
f66182f
..
4887ef6
100644
(file)
--- a/
isl_sample.c
+++ b/
isl_sample.c
@@
-6,6
+6,15
@@
#include "isl_map_private.h"
#include "isl_equalities.h"
#include "isl_map_private.h"
#include "isl_equalities.h"
+static struct isl_vec *empty_sample(struct isl_basic_set *bset)
+{
+ struct isl_vec *vec;
+
+ vec = isl_vec_alloc(bset->ctx, 0);
+ isl_basic_set_free(bset);
+ return vec;
+}
+
/* Construct a zero sample of the same dimension as bset.
* As a special case, if bset is zero-dimensional, this
* function creates a zero-dimensional sample point.
/* Construct a zero sample of the same dimension as bset.
* As a special case, if bset is zero-dimensional, this
* function creates a zero-dimensional sample point.
@@
-56,7
+65,7
@@
static struct isl_vec *interval_sample(struct isl_ctx *ctx,
isl_int_clear(t);
if (i < bset->n_ineq) {
isl_vec_free(sample);
isl_int_clear(t);
if (i < bset->n_ineq) {
isl_vec_free(sample);
-
sample = isl_vec_alloc(ctx, 0
);
+
return empty_sample(bset
);
}
isl_basic_set_free(bset);
}
isl_basic_set_free(bset);
@@
-153,10
+162,8
@@
struct isl_vec *isl_basic_set_sample(struct isl_basic_set *bset)
return NULL;
ctx = bset->ctx;
return NULL;
ctx = bset->ctx;
- if (ISL_F_ISSET(bset, ISL_BASIC_SET_EMPTY)) {
- isl_basic_set_free(bset);
- return isl_vec_alloc(ctx, 0);
- }
+ if (isl_basic_set_fast_is_empty(bset))
+ return empty_sample(bset);
dim = isl_basic_set_n_dim(bset);
isl_assert(ctx, isl_basic_set_n_param(bset) == 0, goto error);
dim = isl_basic_set_n_dim(bset);
isl_assert(ctx, isl_basic_set_n_param(bset) == 0, goto error);