for (i = 0; i < bmap->n_div; ++i) {
int pos;
+ if (isl_int_is_zero(bmap->div[i][0]))
+ continue;
pos = isl_seq_first_non_zero(bmap->div[i]+1+1+off+i,
bmap->n_div-i);
if (pos == -1)
return bmap;
}
+struct isl_basic_set *isl_basic_set_order_divs(struct isl_basic_set *bset)
+{
+ return (struct isl_basic_set *)order_divs((struct isl_basic_map *)bset);
+}
+
/* Look for a div in dst that corresponds to the div "div" in src.
* The divs before "div" in src and dst are assumed to be the same.
*
struct isl_basic_set *isl_basic_set_set_to_empty(struct isl_basic_set *bset);
struct isl_map *isl_basic_map_compute_divs(struct isl_basic_map *bmap);
struct isl_map *isl_map_compute_divs(struct isl_map *map);
+struct isl_basic_set *isl_basic_set_order_divs(struct isl_basic_set *bset);
void isl_basic_map_swap_div(struct isl_basic_map *bmap, int a, int b);
struct isl_basic_map *isl_basic_map_align_divs(
struct isl_basic_map *dst, struct isl_basic_map *src);