Polly 20.0.0git
|
#include <isl_ctx_private.h>
#include <isl/val.h>
#include <isl_constraint_private.h>
#include <isl/set.h>
#include <isl_polynomial_private.h>
#include <isl_morph.h>
#include <isl_range.h>
Go to the source code of this file.
Classes | |
struct | range_data |
struct | isl_fixed_sign_data |
|
static |
Definition at line 268 of file isl_range.c.
References isl_basic_set_params(), isl_fold_max, isl_fold_min, isl_pw_qpolynomial_fold_alloc(), isl_pw_qpolynomial_fold_fold(), isl_qpolynomial_fold_alloc(), isl_qpolynomial_project_domain_on_params(), isl_set_from_basic_set(), isl_stat_ok, poly, range_data::pwf, range_data::pwf_tight, set, range_data::sign, range_data::tight, and type.
Referenced by propagate_on_bound_pair(), propagate_on_domain(), and qpolynomial_bound_on_domain_range().
|
static |
Definition at line 472 of file isl_range.c.
References isl_alloc_array, isl_basic_set_dim(), isl_basic_set_dims_get_sign(), isl_basic_set_free(), isl_basic_set_get_ctx(), isl_dim_all, isl_dim_param, isl_dim_set, isl_qpolynomial_copy(), isl_stat_error, range_data::poly, propagate_on_domain(), range_data::signs, total(), and user.
Referenced by qpolynomial_bound_on_domain_range().
|
static |
Definition at line 158 of file isl_range.c.
References bound, isl_dim_set, isl_qpolynomial_from_constraint(), isl_space_free(), pos(), range_data::sign, and signed_infty().
Referenced by propagate_on_bound_pair().
|
static |
Definition at line 167 of file isl_range.c.
References bound, isl_constraint_get_coefficient(), isl_dim_set, isl_int_clear, isl_int_init, isl_int_is_negone, isl_int_is_one, and pos().
Referenced by propagate_on_bound_pair().
|
static |
Definition at line 194 of file isl_range.c.
References isl_dim_param, isl_dim_set, isl_int_clear, isl_int_init, isl_int_sgn, isl_qpolynomial_add(), isl_qpolynomial_from_term(), isl_stat_error, isl_stat_ok, isl_term_dim(), isl_term_free(), isl_term_get_exp(), isl_term_get_num(), n, isl_fixed_sign_data::poly, isl_fixed_sign_data::sign, isl_fixed_sign_data::signs, t, and user.
Referenced by isl_qpolynomial_terms_of_sign().
|
static |
Definition at line 29 of file isl_range.c.
References isl_basic_set_copy(), isl_basic_set_dim(), isl_basic_set_move_dims(), isl_bool_error, isl_bool_false, isl_bool_ok(), isl_dim_in, isl_dim_out, isl_dim_param, isl_dim_set, isl_fold_max, isl_fold_min, isl_pw_qpolynomial_fold_free(), isl_pw_qpolynomial_fold_max(), isl_pw_qpolynomial_fold_min(), isl_pw_qpolynomial_fold_zero(), isl_qpolynomial_copy(), isl_qpolynomial_get_space(), isl_qpolynomial_move_dims(), isl_space_add_dims(), isl_space_from_domain(), isl_space_params(), isl_val_free(), isl_val_is_infty(), isl_val_is_nan(), isl_val_is_neginfty(), isl_val_sgn(), poly, propagate_on_domain(), range_data::pwf, range_data::pwf_tight, range_data::sign, range_data::signs, range_data::test_monotonicity, range_data::tight, and type.
Referenced by monotonicity().
isl_stat isl_qpolynomial_bound_on_domain_range | ( | __isl_take isl_basic_set * | bset, |
__isl_take isl_qpolynomial * | poly, | ||
struct isl_bound * | bound | ||
) |
Definition at line 542 of file isl_range.c.
References bound, isl_fold_min, poly, range_data::pwf, range_data::pwf_tight, qpolynomial_bound_on_domain_range(), range_data::sign, and range_data::tight.
Referenced by compressed_guarded_poly_bound().
__isl_give isl_qpolynomial * isl_qpolynomial_terms_of_sign | ( | __isl_keep isl_qpolynomial * | poly, |
int * | signs, | ||
int | sign | ||
) |
Definition at line 247 of file isl_range.c.
References collect_fixed_sign_terms(), isl_qpolynomial_foreach_term(), isl_qpolynomial_free(), isl_qpolynomial_get_domain_space(), isl_qpolynomial_zero_on_domain(), isl_fixed_sign_data::poly, poly, isl_fixed_sign_data::sign, and isl_fixed_sign_data::signs.
Referenced by propagate_on_bound_pair(), and to_polynomial_on_orthant().
|
static |
Definition at line 96 of file isl_range.c.
References has_sign(), isl_basic_set_dim(), isl_dim_in, isl_dim_set, isl_qpolynomial_add(), isl_qpolynomial_copy(), isl_qpolynomial_free(), isl_qpolynomial_get_ctx(), isl_qpolynomial_get_domain_space(), isl_qpolynomial_rat_cst_on_domain(), isl_qpolynomial_sub(), isl_qpolynomial_substitute(), isl_qpolynomial_var_on_domain(), isl_space_copy(), isl_ctx::one, poly, result, range_data::signs, and sub().
Referenced by propagate_on_domain().
|
static |
Definition at line 300 of file isl_range.c.
References isl_dim_in, isl_qpolynomial_free(), isl_qpolynomial_get_domain_space(), isl_qpolynomial_involves_dims(), isl_qpolynomial_is_infty(), isl_qpolynomial_is_neginfty(), isl_qpolynomial_substitute(), poly, pos(), range_data::sign, signed_infty(), sub(), and range_data::tight.
Referenced by propagate_on_bound_pair().
|
static |
Definition at line 352 of file isl_range.c.
References add_guarded_poly(), bound2poly(), bound_is_integer(), isl_basic_set_dim(), isl_basic_set_free(), isl_constraint_free(), isl_dim_in, isl_dim_param, isl_dim_set, isl_qpolynomial_add(), isl_qpolynomial_copy(), isl_qpolynomial_drop_dims(), isl_qpolynomial_get_domain_space(), isl_qpolynomial_terms_of_sign(), isl_space_copy(), isl_stat_error, range_data::monotonicity, neg(), plug_in_at_pos(), range_data::poly, poly, pos(), propagate_on_domain(), range_data::sign, range_data::signs, sub(), range_data::tight, and user.
Referenced by propagate_on_domain().
|
static |
Definition at line 423 of file isl_range.c.
References add_guarded_poly(), isl_assert, isl_basic_set_dim(), isl_basic_set_foreach_bound_pair(), isl_basic_set_free(), isl_basic_set_get_ctx(), isl_basic_set_project_out(), isl_dim_in, isl_dim_set, isl_qpolynomial_drop_dims(), isl_qpolynomial_free(), isl_qpolynomial_is_cst(), isl_stat_error, isl_stat_ok, range_data::monotonicity, monotonicity(), range_data::poly, poly, propagate_on_bound_pair(), and range_data::test_monotonicity.
Referenced by basic_guarded_poly_bound(), has_sign(), and propagate_on_bound_pair().
|
static |
Definition at line 508 of file isl_range.c.
References add_guarded_poly(), basic_guarded_poly_bound(), isl_basic_set_dim(), isl_dim_param, isl_dim_set, isl_qpolynomial_free(), isl_set_foreach_basic_set(), isl_set_free(), isl_set_from_basic_set(), isl_set_split_dims(), isl_stat_error, isl_stat_ok, range_data::poly, poly, set, and range_data::test_monotonicity.
Referenced by isl_qpolynomial_bound_on_domain_range().
|
static |
Definition at line 149 of file isl_range.c.
References isl_qpolynomial_infty_on_domain(), isl_qpolynomial_neginfty_on_domain(), and range_data::sign.
Referenced by bound2poly(), and plug_in_at_pos().