206 if (nparam < 0 || nvar < 0)
214 for (i = 0; i < nparam; ++i) {
215 if (data->
signs[i] > 0)
223 for (i = 0; i < nvar; ++i) {
224 if (data->
signs[nparam + i] > 0)
315 if (infty >= 0 && !infty)
357 int save_tight = data->
tight;
364 if (nvar < 0 || nparam < 0)
410 data->
tight = save_tight;
434 if (d < 0 || is_cst < 0)
461 data->
poly = save_poly;
468 data->
poly = save_poly;
484 if (nparam < 0 || dim < 0 ||
total < 0)
491 data->
signs + nparam) < 0)
516 if (nparam < 0 || nvar < 0)
polly print import Polly Print Scop import result
__isl_null isl_constraint * isl_constraint_free(__isl_take isl_constraint *c)
isl_stat isl_basic_set_foreach_bound_pair(__isl_keep isl_basic_set *bset, enum isl_dim_type type, unsigned pos, isl_stat(*fn)(__isl_take isl_constraint *lower, __isl_take isl_constraint *upper, __isl_take isl_basic_set *bset, void *user), void *user)
#define isl_assert(ctx, test, code)
isl_bool isl_bool_ok(int b)
#define isl_alloc_array(ctx, type, n)
isl_stat isl_stat(*) void user)
void GMPZAPI() neg(mp_int rop, mp_int op)
void GMPZAPI() sub(mp_int rop, mp_int op1, mp_int op2)
void isl_constraint_get_coefficient(__isl_keep isl_constraint *constraint, enum isl_dim_type type, int pos, isl_int *v)
#define isl_int_is_one(i)
#define isl_int_is_negone(i)
static unsigned pos(__isl_keep isl_space *space, enum isl_dim_type type)
static struct isl_arg_choice bound[]
__isl_give isl_qpolynomial * isl_qpolynomial_rat_cst_on_domain(__isl_take isl_space *domain, const isl_int n, const isl_int d)
isl_bool isl_qpolynomial_is_cst(__isl_keep isl_qpolynomial *qp, isl_int *n, isl_int *d)
void isl_term_get_num(__isl_keep isl_term *term, isl_int *n)
__isl_give isl_qpolynomial * isl_qpolynomial_terms_of_sign(__isl_keep isl_qpolynomial *poly, int *signs, int sign)
static isl_stat qpolynomial_bound_on_domain_range(__isl_take isl_basic_set *bset, __isl_take isl_qpolynomial *poly, struct range_data *data)
isl_stat isl_qpolynomial_bound_on_domain_range(__isl_take isl_basic_set *bset, __isl_take isl_qpolynomial *poly, struct isl_bound *bound)
static isl_stat propagate_on_domain(__isl_take isl_basic_set *bset, __isl_take isl_qpolynomial *poly, struct range_data *data)
static __isl_give isl_qpolynomial * signed_infty(__isl_take isl_space *space, int sign)
static isl_stat basic_guarded_poly_bound(__isl_take isl_basic_set *bset, void *user)
static __isl_give isl_qpolynomial * bound2poly(__isl_take isl_constraint *bound, __isl_take isl_space *space, unsigned pos, int sign)
static isl_stat collect_fixed_sign_terms(__isl_take isl_term *term, void *user)
static int bound_is_integer(__isl_keep isl_constraint *bound, unsigned pos)
static __isl_give isl_qpolynomial * plug_in_at_pos(__isl_take isl_qpolynomial *poly, int pos, __isl_take isl_qpolynomial *sub, struct range_data *data)
static isl_bool has_sign(__isl_keep isl_basic_set *bset, __isl_keep isl_qpolynomial *poly, int sign, int *signs)
static int monotonicity(__isl_keep isl_basic_set *bset, __isl_keep isl_qpolynomial *poly, struct range_data *data)
static isl_stat add_guarded_poly(__isl_take isl_basic_set *bset, __isl_take isl_qpolynomial *poly, struct range_data *data)
static isl_stat propagate_on_bound_pair(__isl_take isl_constraint *lower, __isl_take isl_constraint *upper, __isl_take isl_basic_set *bset, void *user)
static __isl_give isl_union_map * total(__isl_take isl_union_map *umap, __isl_give isl_map *(*fn)(__isl_take isl_map *))
struct isl_basic_set isl_basic_set
isl_bool isl_qpolynomial_involves_dims(__isl_keep isl_qpolynomial *qp, enum isl_dim_type type, unsigned first, unsigned n)
isl_size isl_term_get_exp(__isl_keep isl_term *term, enum isl_dim_type type, unsigned pos)
__isl_give isl_val * isl_pw_qpolynomial_fold_min(__isl_take isl_pw_qpolynomial_fold *pwf)
__isl_give isl_qpolynomial * isl_qpolynomial_var_on_domain(__isl_take isl_space *domain, enum isl_dim_type type, unsigned pos)
__isl_give isl_pw_qpolynomial_fold * isl_pw_qpolynomial_fold_fold(__isl_take isl_pw_qpolynomial_fold *pwf1, __isl_take isl_pw_qpolynomial_fold *pwf2)
__isl_give isl_qpolynomial * isl_qpolynomial_infty_on_domain(__isl_take isl_space *domain)
__isl_give isl_qpolynomial * isl_qpolynomial_move_dims(__isl_take isl_qpolynomial *qp, enum isl_dim_type dst_type, unsigned dst_pos, enum isl_dim_type src_type, unsigned src_pos, unsigned n)
__isl_give isl_qpolynomial * isl_qpolynomial_from_constraint(__isl_take isl_constraint *c, enum isl_dim_type type, unsigned pos)
__isl_give isl_qpolynomial * isl_qpolynomial_sub(__isl_take isl_qpolynomial *qp1, __isl_take isl_qpolynomial *qp2)
isl_bool isl_qpolynomial_is_neginfty(__isl_keep isl_qpolynomial *qp)
__isl_give isl_qpolynomial * isl_qpolynomial_copy(__isl_keep isl_qpolynomial *qp)
__isl_give isl_space * isl_qpolynomial_get_domain_space(__isl_keep isl_qpolynomial *qp)
__isl_null isl_qpolynomial * isl_qpolynomial_free(__isl_take isl_qpolynomial *qp)
isl_stat isl_qpolynomial_foreach_term(__isl_keep isl_qpolynomial *qp, isl_stat(*fn)(__isl_take isl_term *term, void *user), void *user)
__isl_null isl_term * isl_term_free(__isl_take isl_term *term)
__isl_give isl_qpolynomial * isl_qpolynomial_project_domain_on_params(__isl_take isl_qpolynomial *qp)
__isl_give isl_qpolynomial * isl_qpolynomial_neginfty_on_domain(__isl_take isl_space *domain)
__isl_give isl_pw_qpolynomial_fold * isl_pw_qpolynomial_fold_alloc(enum isl_fold type, __isl_take isl_set *set, __isl_take isl_qpolynomial_fold *fold)
__isl_give isl_qpolynomial * isl_qpolynomial_zero_on_domain(__isl_take isl_space *domain)
__isl_give isl_qpolynomial_fold * isl_qpolynomial_fold_alloc(enum isl_fold type, __isl_take isl_qpolynomial *qp)
__isl_give isl_qpolynomial * isl_qpolynomial_add(__isl_take isl_qpolynomial *qp1, __isl_take isl_qpolynomial *qp2)
__isl_null isl_pw_qpolynomial_fold * isl_pw_qpolynomial_fold_free(__isl_take isl_pw_qpolynomial_fold *pwf)
isl_size isl_term_dim(__isl_keep isl_term *term, enum isl_dim_type type)
__isl_give isl_pw_qpolynomial_fold * isl_pw_qpolynomial_fold_zero(__isl_take isl_space *space, enum isl_fold type)
__isl_give isl_qpolynomial * isl_qpolynomial_substitute(__isl_take isl_qpolynomial *qp, enum isl_dim_type type, unsigned first, unsigned n, __isl_keep isl_qpolynomial **subs)
__isl_give isl_space * isl_qpolynomial_get_space(__isl_keep isl_qpolynomial *qp)
isl_bool isl_qpolynomial_is_infty(__isl_keep isl_qpolynomial *qp)
__isl_give isl_qpolynomial * isl_qpolynomial_from_term(__isl_take isl_term *term)
__isl_give isl_qpolynomial * isl_qpolynomial_drop_dims(__isl_take isl_qpolynomial *qp, enum isl_dim_type type, unsigned first, unsigned n)
isl_ctx * isl_qpolynomial_get_ctx(__isl_keep isl_qpolynomial *qp)
__isl_give isl_val * isl_pw_qpolynomial_fold_max(__isl_take isl_pw_qpolynomial_fold *pwf)
isl_size isl_basic_set_dim(__isl_keep isl_basic_set *bset, enum isl_dim_type type)
__isl_give isl_basic_set * isl_basic_set_project_out(__isl_take isl_basic_set *bset, enum isl_dim_type type, unsigned first, unsigned n)
__isl_export __isl_give isl_basic_set * isl_basic_set_params(__isl_take isl_basic_set *bset)
__isl_null isl_basic_set * isl_basic_set_free(__isl_take isl_basic_set *bset)
__isl_null isl_set * isl_set_free(__isl_take isl_set *set)
__isl_give isl_basic_set * isl_basic_set_move_dims(__isl_take isl_basic_set *bset, enum isl_dim_type dst_type, unsigned dst_pos, enum isl_dim_type src_type, unsigned src_pos, unsigned n)
__isl_export isl_stat isl_set_foreach_basic_set(__isl_keep isl_set *set, isl_stat(*fn)(__isl_take isl_basic_set *bset, void *user), void *user)
__isl_give isl_set * isl_set_split_dims(__isl_take isl_set *set, enum isl_dim_type type, unsigned first, unsigned n)
isl_ctx * isl_basic_set_get_ctx(__isl_keep isl_basic_set *bset)
__isl_constructor __isl_give isl_set * isl_set_from_basic_set(__isl_take isl_basic_set *bset)
__isl_give isl_basic_set * isl_basic_set_copy(__isl_keep isl_basic_set *bset)
isl_stat isl_basic_set_dims_get_sign(__isl_keep isl_basic_set *bset, enum isl_dim_type type, unsigned pos, unsigned n, int *signs)
__isl_null isl_space * isl_space_free(__isl_take isl_space *space)
__isl_give isl_space * isl_space_from_domain(__isl_take isl_space *space)
__isl_export __isl_give isl_space * isl_space_params(__isl_take isl_space *space)
__isl_give isl_space * isl_space_copy(__isl_keep isl_space *space)
__isl_give isl_space * isl_space_add_dims(__isl_take isl_space *space, enum isl_dim_type type, unsigned n)
isl_pw_qpolynomial_fold * pwf
isl_pw_qpolynomial_fold * pwf_tight
__isl_export isl_bool isl_val_is_nan(__isl_keep isl_val *v)
__isl_export isl_bool isl_val_is_neginfty(__isl_keep isl_val *v)
__isl_export isl_bool isl_val_is_infty(__isl_keep isl_val *v)
__isl_export int isl_val_sgn(__isl_keep isl_val *v)
__isl_null isl_val * isl_val_free(__isl_take isl_val *v)