Lines Matching +full:- +full:- +full:user
6 * Written by Sven Verdoolaege, INRIA Saclay - Ile-de-France,
46 bound->pwf = isl_pw_qpolynomial_fold_fold(bound->pwf, pwf); in isl_bound_add()
47 return isl_stat_non_null(bound->pwf); in isl_bound_add()
56 bound->pwf_tight = isl_pw_qpolynomial_fold_fold(bound->pwf_tight, pwf); in isl_bound_add_tight()
57 return isl_stat_non_null(bound->pwf); in isl_bound_add_tight()
70 pwf = isl_qpolynomial_cst_bound(bset, poly, bound->type, NULL); in add_constant_poly()
76 * store the result in bound->pwf and bound->pwf_tight.
79 * of the user.
86 __isl_take isl_qpolynomial *poly, void *user) in compressed_guarded_poly_bound() argument
88 struct isl_bound *bound = (struct isl_bound *)user; in compressed_guarded_poly_bound()
97 if (degree < -1) in compressed_guarded_poly_bound()
103 if (ctx->opt->bound == ISL_BOUND_RANGE) in compressed_guarded_poly_bound()
120 __isl_take isl_qpolynomial *poly, void *user) in unwrapped_guarded_poly_bound() argument
122 struct isl_bound *bound = (struct isl_bound *)user; in unwrapped_guarded_poly_bound()
134 if (bset->n_eq == 0) in unwrapped_guarded_poly_bound()
135 return compressed_guarded_poly_bound(bset, poly, user); in unwrapped_guarded_poly_bound()
145 top_pwf = bound->pwf; in unwrapped_guarded_poly_bound()
146 top_pwf_tight = bound->pwf_tight; in unwrapped_guarded_poly_bound()
150 bound->pwf = isl_pw_qpolynomial_fold_zero(isl_space_copy(space), in unwrapped_guarded_poly_bound()
151 bound->type); in unwrapped_guarded_poly_bound()
152 bound->pwf_tight = isl_pw_qpolynomial_fold_zero(space, bound->type); in unwrapped_guarded_poly_bound()
154 r = compressed_guarded_poly_bound(bset, poly, user); in unwrapped_guarded_poly_bound()
160 bound->pwf = isl_pw_qpolynomial_fold_morph_domain(bound->pwf, in unwrapped_guarded_poly_bound()
162 bound->pwf_tight = isl_pw_qpolynomial_fold_morph_domain( in unwrapped_guarded_poly_bound()
163 bound->pwf_tight, morph); in unwrapped_guarded_poly_bound()
175 /* Update bound->pwf and bound->pwf_tight with a bound
176 * of type bound->type on the polynomial "poly" over the domain "bset".
184 * add the results to bound->pwf and bound->pwf_tight.
194 __isl_take isl_qpolynomial *poly, void *user) in guarded_poly_bound() argument
196 struct isl_bound *bound = (struct isl_bound *)user; in guarded_poly_bound()
204 if (!bound->wrapping) in guarded_poly_bound()
205 return unwrapped_guarded_poly_bound(bset, poly, user); in guarded_poly_bound()
207 nparam = isl_space_dim(bound->dim, isl_dim_param); in guarded_poly_bound()
208 n_in = isl_space_dim(bound->dim, isl_dim_in); in guarded_poly_bound()
223 top_pwf = bound->pwf; in guarded_poly_bound()
224 top_pwf_tight = bound->pwf_tight; in guarded_poly_bound()
228 bound->pwf = isl_pw_qpolynomial_fold_zero(isl_space_copy(space), in guarded_poly_bound()
229 bound->type); in guarded_poly_bound()
230 bound->pwf_tight = isl_pw_qpolynomial_fold_zero(space, bound->type); in guarded_poly_bound()
232 r = unwrapped_guarded_poly_bound(bset, poly, user); in guarded_poly_bound()
234 bound->pwf = isl_pw_qpolynomial_fold_reset_space(bound->pwf, in guarded_poly_bound()
235 isl_space_copy(bound->dim)); in guarded_poly_bound()
236 bound->pwf_tight = isl_pw_qpolynomial_fold_reset_space(bound->pwf_tight, in guarded_poly_bound()
237 isl_space_copy(bound->dim)); in guarded_poly_bound()
249 static isl_stat guarded_qp(__isl_take isl_qpolynomial *qp, void *user) in guarded_qp() argument
251 struct isl_bound *bound = (struct isl_bound *)user; in guarded_qp()
254 r = isl_qpolynomial_as_polynomial_on_domain(qp, bound->bset, in guarded_qp()
255 &guarded_poly_bound, user); in guarded_qp()
260 static isl_stat basic_guarded_fold(__isl_take isl_basic_set *bset, void *user) in basic_guarded_fold() argument
262 struct isl_bound *bound = (struct isl_bound *)user; in basic_guarded_fold()
265 bound->bset = bset; in basic_guarded_fold()
266 r = isl_qpolynomial_fold_foreach_qpolynomial(bound->fold, in basic_guarded_fold()
267 &guarded_qp, user); in basic_guarded_fold()
273 __isl_take isl_qpolynomial_fold *fold, void *user) in guarded_fold() argument
275 struct isl_bound *bound = (struct isl_bound *)user; in guarded_fold()
282 bound->fold = fold; in guarded_fold()
283 bound->type = isl_qpolynomial_fold_get_type(fold); in guarded_fold()
327 enum isl_fold type = pwf->type; in isl_pw_qpolynomial_fold_bound()
335 pwf->type); in isl_pw_qpolynomial_fold_bound()
337 pwf->type); in isl_pw_qpolynomial_fold_bound()
386 static isl_stat bound_pw(__isl_take isl_pw_qpolynomial *pwqp, void *user) in bound_pw() argument
388 struct isl_union_bound_data *data = user; in bound_pw()
391 pwf = isl_pw_qpolynomial_bound(pwqp, data->type, in bound_pw()
392 data->tight ? &data->tight : NULL); in bound_pw()
393 data->res = isl_union_pw_qpolynomial_fold_fold_pw_qpolynomial_fold( in bound_pw()
394 data->res, pwf); in bound_pw()