unsigned isl_basic_map_n_param(const struct isl_basic_map *bmap);
unsigned isl_basic_map_n_div(const struct isl_basic_map *bmap);
unsigned isl_basic_map_total_dim(const struct isl_basic_map *bmap);
+unsigned isl_basic_map_dim(const struct isl_basic_map *bmap,
+ enum isl_dim_type type);
unsigned isl_map_n_in(const struct isl_map *map);
unsigned isl_map_n_out(const struct isl_map *map);
unsigned isl_basic_set_n_dim(const struct isl_basic_set *bset);
unsigned isl_basic_set_n_param(const struct isl_basic_set *bset);
unsigned isl_basic_set_total_dim(const struct isl_basic_set *bset);
+unsigned isl_basic_set_dim(const struct isl_basic_set *bset,
+ enum isl_dim_type type);
unsigned isl_set_n_dim(const struct isl_set *set);
unsigned isl_set_n_param(const struct isl_set *set);
static unsigned n(struct isl_constraint *c, enum isl_dim_type type)
{
- struct isl_dim *dim = c->bmap->dim;
- switch (type) {
- case isl_dim_param: return dim->nparam;
- case isl_dim_in: return dim->n_in;
- case isl_dim_out: return dim->n_out;
- case isl_dim_div: return c->bmap->n_div;
- case isl_dim_all: return isl_basic_map_total_dim(c->bmap);
- }
+ return isl_basic_map_dim(c->bmap, type);
}
static unsigned offset(struct isl_constraint *c, enum isl_dim_type type)
fprintf(stderr, "\n");
}
+unsigned isl_basic_map_dim(const struct isl_basic_map *bmap,
+ enum isl_dim_type type)
+{
+ struct isl_dim *dim = bmap->dim;
+ switch (type) {
+ case isl_dim_param: return dim->nparam;
+ case isl_dim_in: return dim->n_in;
+ case isl_dim_out: return dim->n_out;
+ case isl_dim_div: return bmap->n_div;
+ case isl_dim_all: return isl_basic_map_total_dim(bmap);
+ }
+}
+
+unsigned isl_basic_set_dim(const struct isl_basic_set *bset,
+ enum isl_dim_type type)
+{
+ return isl_basic_map_dim((const struct isl_basic_map*)bset, type);
+}
+
unsigned isl_basic_set_n_dim(const struct isl_basic_set *bset)
{
return bset->dim->n_out;