Polly 22.0.0git
val.h File Reference
#include <isl/stdint.h>
#include <isl/ctx.h>
#include <isl/list.h>
#include <isl/multi.h>
#include <isl/printer.h>
#include <isl/val_type.h>

Go to the source code of this file.

Functions

__isl_export __isl_give isl_valisl_val_zero (isl_ctx *ctx)
__isl_export __isl_give isl_valisl_val_one (isl_ctx *ctx)
__isl_export __isl_give isl_valisl_val_negone (isl_ctx *ctx)
__isl_export __isl_give isl_valisl_val_nan (isl_ctx *ctx)
__isl_export __isl_give isl_valisl_val_infty (isl_ctx *ctx)
__isl_export __isl_give isl_valisl_val_neginfty (isl_ctx *ctx)
__isl_constructor __isl_give isl_valisl_val_int_from_si (isl_ctx *ctx, long i)
__isl_give isl_valisl_val_int_from_ui (isl_ctx *ctx, unsigned long u)
__isl_give isl_valisl_val_int_from_chunks (isl_ctx *ctx, size_t n, size_t size, const void *chunks)
__isl_give isl_valisl_val_copy (__isl_keep isl_val *v)
__isl_null isl_valisl_val_free (__isl_take isl_val *v)
isl_ctxisl_val_get_ctx (__isl_keep isl_val *val)
uint32_t isl_val_get_hash (__isl_keep isl_val *val)
__isl_export long isl_val_get_num_si (__isl_keep isl_val *v)
__isl_export long isl_val_get_den_si (__isl_keep isl_val *v)
__isl_give isl_valisl_val_get_den_val (__isl_keep isl_val *v)
double isl_val_get_d (__isl_keep isl_val *v)
isl_size isl_val_n_abs_num_chunks (__isl_keep isl_val *v, size_t size)
isl_stat isl_val_get_abs_num_chunks (__isl_keep isl_val *v, size_t size, void *chunks)
__isl_give isl_valisl_val_set_si (__isl_take isl_val *v, long i)
__isl_export __isl_give isl_valisl_val_abs (__isl_take isl_val *v)
__isl_export __isl_give isl_valisl_val_neg (__isl_take isl_val *v)
__isl_export __isl_give isl_valisl_val_inv (__isl_take isl_val *v)
__isl_export __isl_give isl_valisl_val_floor (__isl_take isl_val *v)
__isl_export __isl_give isl_valisl_val_ceil (__isl_take isl_val *v)
__isl_export __isl_give isl_valisl_val_trunc (__isl_take isl_val *v)
__isl_give isl_valisl_val_2exp (__isl_take isl_val *v)
__isl_export __isl_give isl_valisl_val_pow2 (__isl_take isl_val *v)
__isl_export __isl_give isl_valisl_val_min (__isl_take isl_val *v1, __isl_take isl_val *v2)
__isl_export __isl_give isl_valisl_val_max (__isl_take isl_val *v1, __isl_take isl_val *v2)
__isl_export __isl_give isl_valisl_val_add (__isl_take isl_val *v1, __isl_take isl_val *v2)
__isl_give isl_valisl_val_add_ui (__isl_take isl_val *v1, unsigned long v2)
__isl_export __isl_give isl_valisl_val_sub (__isl_take isl_val *v1, __isl_take isl_val *v2)
__isl_give isl_valisl_val_sub_ui (__isl_take isl_val *v1, unsigned long v2)
__isl_export __isl_give isl_valisl_val_mul (__isl_take isl_val *v1, __isl_take isl_val *v2)
__isl_give isl_valisl_val_mul_ui (__isl_take isl_val *v1, unsigned long v2)
__isl_export __isl_give isl_valisl_val_div (__isl_take isl_val *v1, __isl_take isl_val *v2)
__isl_give isl_valisl_val_div_ui (__isl_take isl_val *v1, unsigned long v2)
__isl_export __isl_give isl_valisl_val_mod (__isl_take isl_val *v1, __isl_take isl_val *v2)
__isl_export __isl_give isl_valisl_val_gcd (__isl_take isl_val *v1, __isl_take isl_val *v2)
__isl_give isl_valisl_val_gcdext (__isl_take isl_val *v1, __isl_take isl_val *v2, __isl_give isl_val **x, __isl_give isl_val **y)
__isl_export int isl_val_sgn (__isl_keep isl_val *v)
__isl_export isl_bool isl_val_is_zero (__isl_keep isl_val *v)
__isl_export isl_bool isl_val_is_one (__isl_keep isl_val *v)
__isl_export isl_bool isl_val_is_negone (__isl_keep isl_val *v)
__isl_export isl_bool isl_val_is_nonneg (__isl_keep isl_val *v)
__isl_export isl_bool isl_val_is_nonpos (__isl_keep isl_val *v)
__isl_export isl_bool isl_val_is_pos (__isl_keep isl_val *v)
__isl_export isl_bool isl_val_is_neg (__isl_keep isl_val *v)
__isl_export isl_bool isl_val_is_int (__isl_keep isl_val *v)
__isl_export isl_bool isl_val_is_rat (__isl_keep isl_val *v)
__isl_export isl_bool isl_val_is_nan (__isl_keep isl_val *v)
__isl_export isl_bool isl_val_is_infty (__isl_keep isl_val *v)
__isl_export isl_bool isl_val_is_neginfty (__isl_keep isl_val *v)
__isl_export int isl_val_cmp_si (__isl_keep isl_val *v, long i)
__isl_export isl_bool isl_val_lt (__isl_keep isl_val *v1, __isl_keep isl_val *v2)
__isl_export isl_bool isl_val_le (__isl_keep isl_val *v1, __isl_keep isl_val *v2)
__isl_export isl_bool isl_val_gt (__isl_keep isl_val *v1, __isl_keep isl_val *v2)
isl_bool isl_val_gt_si (__isl_keep isl_val *v, long i)
__isl_export isl_bool isl_val_ge (__isl_keep isl_val *v1, __isl_keep isl_val *v2)
__isl_export isl_bool isl_val_eq (__isl_keep isl_val *v1, __isl_keep isl_val *v2)
isl_bool isl_val_eq_si (__isl_keep isl_val *v, long i)
__isl_export isl_bool isl_val_ne (__isl_keep isl_val *v1, __isl_keep isl_val *v2)
__isl_export isl_bool isl_val_abs_eq (__isl_keep isl_val *v1, __isl_keep isl_val *v2)
__isl_export isl_bool isl_val_is_divisible_by (__isl_keep isl_val *v1, __isl_keep isl_val *v2)
__isl_constructor __isl_give isl_valisl_val_read_from_str (isl_ctx *ctx, const char *str)
__isl_give isl_printerisl_printer_print_val (__isl_take isl_printer *p, __isl_keep isl_val *v)
void isl_val_dump (__isl_keep isl_val *v)
__isl_give char * isl_val_to_str (__isl_keep isl_val *v)
isl_bool isl_multi_val_is_zero (__isl_keep isl_multi_val *mv)
__isl_overload __isl_give isl_multi_valisl_multi_val_add_val (__isl_take isl_multi_val *mv, __isl_take isl_val *v)
__isl_give isl_multi_valisl_multi_val_mod_val (__isl_take isl_multi_val *mv, __isl_take isl_val *v)
__isl_constructor __isl_give isl_multi_valisl_multi_val_read_from_str (isl_ctx *ctx, const char *str)
__isl_give isl_printerisl_printer_print_multi_val (__isl_take isl_printer *p, __isl_keep isl_multi_val *mv)
void isl_multi_val_dump (__isl_keep isl_multi_val *mv)
__isl_give char * isl_multi_val_to_str (__isl_keep isl_multi_val *mv)

Function Documentation

◆ isl_multi_val_add_val()

◆ isl_multi_val_dump()

void isl_multi_val_dump ( __isl_keep isl_multi_val * mv)

References __isl_keep.

◆ isl_multi_val_is_zero()

isl_bool isl_multi_val_is_zero ( __isl_keep isl_multi_val * mv)

Definition at line 1594 of file isl_val.c.

References __isl_keep, and isl_val_is_zero().

◆ isl_multi_val_mod_val()

__isl_give isl_multi_val * isl_multi_val_mod_val ( __isl_take isl_multi_val * mv,
__isl_take isl_val * v )

Definition at line 1615 of file isl_val.c.

References __isl_give, __isl_take, and isl_val_mod().

Referenced by generate_shift_component().

◆ isl_multi_val_read_from_str()

__isl_constructor __isl_give isl_multi_val * isl_multi_val_read_from_str ( isl_ctx * ctx,
const char * str )

◆ isl_multi_val_to_str()

__isl_give char * isl_multi_val_to_str ( __isl_keep isl_multi_val * mv)

References __isl_give, __isl_keep, and val.

Referenced by isl::operator<<().

◆ isl_printer_print_multi_val()

◆ isl_printer_print_val()

◆ isl_val_2exp()

__isl_give isl_val * isl_val_2exp ( __isl_take isl_val * v)

Definition at line 563 of file isl_val.c.

References __isl_give, __isl_take, and isl_val_pow2().

Referenced by getWidthExpValOnDomain().

◆ isl_val_abs()

◆ isl_val_abs_eq()

◆ isl_val_add()

◆ isl_val_add_ui()

__isl_give isl_val * isl_val_add_ui ( __isl_take isl_val * v1,
unsigned long v2 )

◆ isl_val_ceil()

◆ isl_val_cmp_si()

◆ isl_val_copy()

◆ isl_val_div()

◆ isl_val_div_ui()

◆ isl_val_dump()

void isl_val_dump ( __isl_keep isl_val * v)

References __isl_keep.

◆ isl_val_eq()

◆ isl_val_eq_si()

isl_bool isl_val_eq_si ( __isl_keep isl_val * v,
long i )

Definition at line 1434 of file isl_val.c.

References __isl_keep, isl_bool_error, isl_bool_false, isl_bool_ok(), isl_int_cmp_si, and isl_val_is_int().

Referenced by is_even_test().

◆ isl_val_floor()

◆ isl_val_free()

__isl_null isl_val * isl_val_free ( __isl_take isl_val * v)

Definition at line 263 of file isl_val.c.

References __isl_null, __isl_take, isl_ctx_deref(), and isl_int_clear.

Referenced by add_rational(), aff_constant_is_negative(), aff_is_rational(), polly::APIntFromVal(), basic_set_opt_lp(), check_parallel_or_opposite(), clear_opposite_sign(), compute_max_coefficient(), compute_size_in_direction(), convert_lp_result(), create_node(), detect_stride(), dim_is_fixed(), every_non_zero_coefficient(), extract_modulo(), extract_modulos(), extract_rational(), find_node_coalescing(), FN(), FN(), FN(), FN(), FN(), FN(), FN(), generate_component(), get_size_bounds(), has_sign(), is_even_test(), is_non_neg_after_stealing(), is_stride_constraint(), isl_aff_add_coefficient_val(), isl_aff_add_constant_val(), isl_aff_add_rat_constant_val(), isl_aff_mod_val(), isl_aff_scale_down_val(), isl_aff_scale_val(), isl_aff_set_coefficient_val(), isl_aff_set_constant_val(), isl_aff_val_on_domain(), isl_ast_build_detect_strides(), isl_ast_build_has_stride(), isl_ast_build_scale_down(), isl_ast_expr_add_int(), isl_ast_expr_free(), isl_ast_expr_from_val(), isl_basic_map_fix_val(), isl_basic_map_plain_get_val_if_fixed(), isl_basic_set_bound_val(), isl_constraint_set_coefficient_val(), isl_constraint_set_constant_val(), isl_fixed_box_invalidate(), isl_map_fix_val(), isl_map_floordiv_val(), isl_map_get_range_lattice_tile(), isl_map_lower_bound_val(), isl_map_plain_get_val_if_fixed(), isl_map_upper_bound_val(), isl_mat_set_element_val(), isl_multi_union_pw_aff_tile(), isl_multi_val_add_val(), isl_obj_val_free(), isl_point_set_coordinate_val(), isl_poly_eval(), isl_pw_aff_mod_val(), isl_pw_aff_opt_val(), isl_qpolynomial_fold_scale_down_val(), isl_qpolynomial_fold_scale_val(), isl_qpolynomial_get_den(), isl_qpolynomial_opt_on_domain(), isl_qpolynomial_scale_down_val(), isl_qpolynomial_scale_val(), isl_qpolynomial_val_on_domain(), isl_set_count_val(), isl_set_dim_residue_class_val(), isl_stride_info_alloc(), isl_stride_info_free(), isl_union_pw_aff_mod_val(), isl_union_pw_aff_opt_val(), isl_union_pw_aff_val_on_domain(), isl_val_add(), isl_val_div(), isl_val_gcd(), isl_val_gcdext(), isl_val_gt_si(), isl_val_inv(), isl_val_max(), isl_val_min(), isl_val_mod(), isl_val_mul(), isl_val_pow2(), isl_val_sub(), isl_vec_set_element_val(), isl_vec_set_val(), mod_constraint_is_simpler(), MULTI(), MULTI(), pick_free(), print_aff_num_mod(), print_ast_expr_isl(), print_mod_term(), print_qpolynomial_c(), read_band(), scale(), sched_info_alloc(), set_coincident(), set_detect_stride(), set_dim_extent(), set_nan(), set_nan_free_val(), set_stride(), set_stride(), shift_if_cst_int(), subtree_schedule_extend_from_children(), test_bin_val(), test_eval_1(), test_eval_2(), test_eval_3(), test_eval_aff(), test_min(), test_min_special(), test_min_special2(), test_pwqp_max(), test_un_val(), try_extract_mod(), update_unrolling_lower_bound(), val_check_equal(), val_opt(), verify_point(), and isl::val::~val().

◆ isl_val_gcd()

◆ isl_val_gcdext()

◆ isl_val_ge()

Definition at line 1383 of file isl_val.c.

References __isl_keep, and isl_val_le().

Referenced by isl::val::ge(), and isl_val_max().

◆ isl_val_get_abs_num_chunks()

isl_stat isl_val_get_abs_num_chunks ( __isl_keep isl_val * v,
size_t size,
void * chunks )

◆ isl_val_get_ctx()

◆ isl_val_get_d()

double isl_val_get_d ( __isl_keep isl_val * v)

◆ isl_val_get_den_si()

__isl_export long isl_val_get_den_si ( __isl_keep isl_val * v)

◆ isl_val_get_den_val()

◆ isl_val_get_hash()

uint32_t isl_val_get_hash ( __isl_keep isl_val * val)

Definition at line 362 of file isl_val.c.

References __isl_keep, isl_hash_init, isl_int_hash, and val.

◆ isl_val_get_num_si()

◆ isl_val_gt()

Definition at line 1318 of file isl_val.c.

References __isl_keep, and isl_val_lt().

Referenced by isl::val::gt(), and isl_val_gt_si().

◆ isl_val_gt_si()

◆ isl_val_infty()

◆ isl_val_int_from_chunks()

__isl_give isl_val * isl_val_int_from_chunks ( isl_ctx * ctx,
size_t n,
size_t size,
const void * chunks )

◆ isl_val_int_from_si()

◆ isl_val_int_from_ui()

__isl_give isl_val * isl_val_int_from_ui ( isl_ctx * ctx,
unsigned long u )

◆ isl_val_inv()

◆ isl_val_is_divisible_by()

◆ isl_val_is_infty()

◆ isl_val_is_int()

◆ isl_val_is_nan()

◆ isl_val_is_neg()

◆ isl_val_is_neginfty()

◆ isl_val_is_negone()

__isl_export isl_bool isl_val_is_negone ( __isl_keep isl_val * v)

◆ isl_val_is_nonneg()

◆ isl_val_is_nonpos()

◆ isl_val_is_one()

◆ isl_val_is_pos()

◆ isl_val_is_rat()

◆ isl_val_is_zero()

◆ isl_val_le()

◆ isl_val_lt()

◆ isl_val_max()

◆ isl_val_min()

◆ isl_val_mod()

◆ isl_val_mul()

◆ isl_val_mul_ui()

__isl_give isl_val * isl_val_mul_ui ( __isl_take isl_val * v1,
unsigned long v2 )

◆ isl_val_n_abs_num_chunks()

isl_size isl_val_n_abs_num_chunks ( __isl_keep isl_val * v,
size_t size )

◆ isl_val_nan()

◆ isl_val_ne()

◆ isl_val_neg()

◆ isl_val_neginfty()

◆ isl_val_negone()

__isl_export __isl_give isl_val * isl_val_negone ( isl_ctx * ctx)

Definition at line 55 of file isl_val.c.

References __isl_give, and isl_val_int_from_si().

Referenced by isl::val::negone().

◆ isl_val_one()

__isl_export __isl_give isl_val * isl_val_one ( isl_ctx * ctx)

Definition at line 48 of file isl_val.c.

References __isl_give, and isl_val_int_from_si().

Referenced by isl_qpolynomial_get_den(), isl::val::one(), set_detect_stride(), and test_pwqp().

◆ isl_val_pow2()

◆ isl_val_read_from_str()

__isl_constructor __isl_give isl_val * isl_val_read_from_str ( isl_ctx * ctx,
const char * str )

◆ isl_val_set_si()

__isl_give isl_val * isl_val_set_si ( __isl_take isl_val * v,
long i )

Definition at line 144 of file isl_val.c.

References __isl_give, __isl_take, isl_int_cmp_si, isl_int_set_si, isl_val_cow(), and isl_val_is_int().

Referenced by create_node(), and isl_val_set_zero().

◆ isl_val_sgn()

◆ isl_val_sub()

◆ isl_val_sub_ui()

__isl_give isl_val * isl_val_sub_ui ( __isl_take isl_val * v1,
unsigned long v2 )

Definition at line 763 of file isl_val.c.

References __isl_give, __isl_take, isl_int_submul_ui, isl_val_cow(), and isl_val_is_rat().

Referenced by aff_pos_basic_set(), and try_extract_mod().

◆ isl_val_to_str()

__isl_give char * isl_val_to_str ( __isl_keep isl_val * v)

◆ isl_val_trunc()

◆ isl_val_zero()