continue;
*progress = 1;
bmap = isl_basic_map_eliminate_vars(bmap, (off-1)+d, 1);
- if (ISL_F_ISSET(bmap, ISL_BASIC_MAP_EMPTY))
+ if (!bmap || ISL_F_ISSET(bmap, ISL_BASIC_MAP_EMPTY))
break;
bmap = isl_basic_map_drop_div(bmap, d);
if (!bmap)
int k, l, h;
int bits;
struct isl_blk eq;
- unsigned total_var = isl_dim_total(bmap->dim);
- unsigned total = total_var + bmap->n_div;
+ unsigned total_var;
+ unsigned total;
struct isl_ctx *ctx;
- if (bmap->n_div <= 1)
+ if (!bmap || bmap->n_div <= 1)
return bmap;
+ total_var = isl_dim_total(bmap->dim);
+ total = total_var + bmap->n_div;
+
ctx = bmap->ctx;
for (k = bmap->n_div - 1; k >= 0; --k)
if (!isl_int_is_zero(bmap->div[k][0]))
unsigned total = isl_basic_map_total_dim(bmap);
isl_int sum;
- if (bmap->n_ineq <= 1)
+ if (!bmap || bmap->n_ineq <= 1)
return bmap;
size = round_up(4 * (bmap->n_ineq+1) / 3 - 1);