}
isl_basic_set_free(bset);
if (T2)
- hull = isl_basic_set_preimage(ctx, hull, T2);
+ hull = isl_basic_set_preimage(hull, T2);
return hull;
error:
isl_seq_cpy(T->row[1], facet, dim);
isl_seq_cpy(T->row[2], ridge, dim);
T = isl_mat_right_inverse(ctx, T);
- set = isl_set_preimage(ctx, set, T);
+ set = isl_set_preimage(set, T);
T = NULL;
if (!set)
goto error;
Q = isl_mat_right_inverse(ctx, isl_mat_copy(ctx, U));
U = isl_mat_drop_cols(ctx, U, 1, 1);
Q = isl_mat_drop_rows(ctx, Q, 1, 1);
- set = isl_set_preimage(ctx, set, U);
+ set = isl_set_preimage(set, U);
facet = uset_convex_hull_wrap(set);
- facet = isl_basic_set_preimage(ctx, facet, Q);
+ facet = isl_basic_set_preimage(facet, Q);
return facet;
error:
isl_set_free(set);
if (!dummy)
goto error;
isl_basic_set_free(dummy);
- set = isl_set_preimage(ctx, set, T);
+ set = isl_set_preimage(set, T);
convex_hull = uset_convex_hull(set);
- convex_hull = isl_basic_set_preimage(ctx, convex_hull, T2);
+ convex_hull = isl_basic_set_preimage(convex_hull, T2);
convex_hull = isl_basic_set_intersect(convex_hull, affine_hull);
return convex_hull;
error:
return isl_basic_set_set_to_empty(bset);
}
- bset = isl_basic_set_preimage(ctx, bset, T ? isl_mat_copy(ctx, TC) : TC);
+ bset = isl_basic_set_preimage(bset, T ? isl_mat_copy(ctx, TC) : TC);
if (T)
*T = TC;
return bset;
isl_basic_set_copy(context), &T, &T2);
if (!reduced_context)
goto error;
- bset = isl_basic_set_preimage(ctx, bset, T);
+ bset = isl_basic_set_preimage(bset, T);
bset = uset_gist(bset, reduced_context);
- bset = isl_basic_set_preimage(ctx, bset, T2);
+ bset = isl_basic_set_preimage(bset, T2);
bset = isl_basic_set_reduce_using_equalities(bset, context);
return bset;
error:
bset = isl_basic_set_remove_equalities(bset, &T, &T2);
if (!bset)
goto error;
- context = isl_basic_set_preimage(ctx, context, T);
+ context = isl_basic_set_preimage(context, T);
bset = uset_gist(bset, context);
- bset = isl_basic_set_preimage(ctx, bset, T2);
+ bset = isl_basic_set_preimage(bset, T2);
bset = isl_basic_set_intersect(bset, affine_hull);
return bset;
error:
* the div array too as the number of rows in this array is assumed
* to be equal to extra.
*/
-struct isl_basic_set *isl_basic_set_preimage(struct isl_ctx *ctx,
- struct isl_basic_set *bset, struct isl_mat *mat)
+struct isl_basic_set *isl_basic_set_preimage(struct isl_basic_set *bset,
+ struct isl_mat *mat)
{
+ struct isl_ctx *ctx;
struct isl_mat *t;
int i;
if (!bset || !mat)
goto error;
+ ctx = bset->ctx;
bset = isl_basic_set_cow(bset);
if (!bset)
goto error;
return NULL;
}
-struct isl_set *isl_set_preimage(struct isl_ctx *ctx,
- struct isl_set *set, struct isl_mat *mat)
+struct isl_set *isl_set_preimage(struct isl_set *set, struct isl_mat *mat)
{
+ struct isl_ctx *ctx;
int i;
set = isl_set_cow(set);
ctx = set->ctx;
for (i = 0; i < set->n; ++i) {
- set->p[i] = isl_basic_set_preimage(ctx, set->p[i],
+ set->p[i] = isl_basic_set_preimage(set->p[i],
isl_mat_copy(ctx, mat));
if (!set->p[i])
goto error;
void isl_mat_col_submul(struct isl_mat *mat,
int dst_col, isl_int f, int src_col);
-struct isl_basic_set *isl_basic_set_preimage(struct isl_ctx *ctx,
- struct isl_basic_set *bset, struct isl_mat *mat);
-struct isl_set *isl_set_preimage(struct isl_ctx *ctx,
- struct isl_set *set, struct isl_mat *mat);
+struct isl_basic_set *isl_basic_set_preimage(struct isl_basic_set *bset,
+ struct isl_mat *mat);
+struct isl_set *isl_set_preimage(struct isl_set *set, struct isl_mat *mat);
void isl_mat_dump(struct isl_ctx *ctx, struct isl_mat *mat,
FILE *out, int indent);
goto error;
U = isl_mat_lin_to_aff(ctx, U);
U = isl_mat_drop_cols(ctx, U, 1 + new_dim, old_dim - new_dim);
- bset = isl_basic_set_preimage(ctx, bset, isl_mat_copy(ctx, U));
+ bset = isl_basic_set_preimage(bset, isl_mat_copy(ctx, U));
if (!bset)
goto error;
*T = U;
if (!bounds)
goto error;
U = isl_mat_drop_cols(ctx, U, 1 + new_dim, old_dim - new_dim);
- bset = isl_basic_set_preimage(ctx, bset, isl_mat_copy(ctx, U));
+ bset = isl_basic_set_preimage(bset, isl_mat_copy(ctx, U));
if (!bset)
goto error;
*T = U;