Polly 20.0.0git
|
#include <isl_map_private.h>
#include <isl_aff_private.h>
#include <isl_morph.h>
#include <isl_seq.h>
#include <isl_mat_private.h>
#include <isl_space_private.h>
#include <isl_equalities.h>
#include <isl_id_private.h>
#include <isl_vec_private.h>
Go to the source code of this file.
|
static |
Definition at line 202 of file isl_morph.c.
References isl_die, isl_error_invalid, isl_space_get_ctx(), isl_stat_error, isl_stat_ok, and match().
Referenced by isl_morph_check_applies().
|
static |
Definition at line 420 of file isl_morph.c.
References isl_basic_set_alloc_equality(), isl_basic_set_alloc_space(), isl_basic_set_check_no_locals(), isl_basic_set_dim(), isl_basic_set_free(), isl_basic_set_get_space(), isl_dim_all, isl_seq_cpy(), n, and total().
Referenced by isl_basic_set_variable_compression().
|
static |
Definition at line 108 of file isl_morph.c.
References isl_bool_error, isl_bool_false, isl_bool_true, isl_dim_param, isl_mat_free(), isl_mat_is_scaled_identity(), isl_mat_sub_alloc(), isl_morph_dom_dim(), isl_morph_ran_dim(), and sub().
Referenced by isl_morph_get_var_multi_aff().
__isl_give isl_morph * isl_basic_set_full_compression | ( | __isl_keep isl_basic_set * | bset | ) |
Definition at line 766 of file isl_morph.c.
References isl_basic_set_copy(), isl_basic_set_detect_equalities(), isl_basic_set_free(), isl_basic_set_parameter_compression(), isl_basic_set_variable_compression(), isl_dim_param, isl_dim_set, isl_morph_basic_set(), isl_morph_compose(), and isl_morph_copy().
Referenced by isl_basic_set_multiplicative_call(), lower_dim_vertices(), and unwrapped_guarded_poly_bound().
__isl_give isl_morph * isl_basic_set_parameter_compression | ( | __isl_keep isl_basic_set * | bset | ) |
Definition at line 564 of file isl_morph.c.
References B(), isl_basic_set_dim(), isl_basic_set_get_ctx(), isl_basic_set_plain_is_empty(), isl_basic_set_universe(), isl_die, isl_dim_div, isl_dim_param, isl_dim_set, isl_error_invalid, isl_mat_copy(), isl_mat_diagonal(), isl_mat_identity(), isl_mat_parameter_compression_ext(), isl_mat_right_inverse(), isl_mat_sub_alloc6(), isl_morph_alloc(), isl_morph_empty(), isl_morph_identity(), isl_seq_first_non_zero(), isl_space_copy(), and map.
Referenced by base_compute_divs(), and isl_basic_set_full_compression().
__isl_give isl_morph * isl_basic_set_variable_compression | ( | __isl_keep isl_basic_set * | bset, |
enum isl_dim_type | type | ||
) |
Definition at line 472 of file isl_morph.c.
References C, copy_equalities(), isl_basic_set_check_no_locals(), isl_basic_set_dim(), isl_basic_set_offset(), isl_basic_set_plain_is_empty(), isl_basic_set_universe(), isl_dim_all, isl_mat_diagonal(), isl_mat_final_variable_compression(), isl_mat_free(), isl_mat_identity(), isl_mat_sub_alloc6(), isl_morph_alloc(), isl_morph_empty(), isl_morph_identity(), isl_seq_first_non_zero(), isl_space_add_dims(), isl_space_copy(), isl_space_drop_dims(), total(), and type.
Referenced by base_compute_divs(), isl_basic_set_full_compression(), isl_basic_set_variable_compression_with_id(), and main().
__isl_give isl_morph * isl_basic_set_variable_compression_with_id | ( | __isl_keep isl_basic_set * | bset, |
__isl_keep isl_id * | id | ||
) |
Definition at line 538 of file isl_morph.c.
References isl_basic_set_variable_compression(), isl_dim_set, and isl_morph_set_ran_tuple_id().
Referenced by extract_node().
__isl_give isl_morph * isl_morph_alloc | ( | __isl_take isl_basic_set * | dom, |
__isl_take isl_basic_set * | ran, | ||
__isl_take isl_mat * | map, | ||
__isl_take isl_mat * | inv | ||
) |
Definition at line 31 of file isl_morph.c.
References isl_morph::dom, isl_morph::inv, isl_alloc_type, isl_basic_set_free(), isl_mat_free(), isl_morph::map, map, isl_morph::ran, and isl_morph::ref.
Referenced by isl_basic_set_parameter_compression(), isl_basic_set_variable_compression(), isl_factorizer_groups(), isl_morph_compose(), isl_morph_dup(), isl_morph_empty(), and isl_morph_identity().
__isl_give isl_basic_set * isl_morph_basic_set | ( | __isl_take isl_morph * | morph, |
__isl_take isl_basic_set * | bset | ||
) |
Definition at line 641 of file isl_morph.c.
References isl_basic_set_check_equal_space(), isl_basic_set_copy(), isl_basic_set_dim(), isl_basic_set_free(), isl_basic_set_get_space(), isl_basic_set_intersect(), isl_basic_set_move_dims(), isl_basic_set_preimage_multi_aff(), isl_basic_set_reset_space(), isl_dim_param, isl_dim_set, isl_mat_copy(), isl_morph_free(), isl_multi_aff_from_aff_mat_anonymous(), and ma.
Referenced by base_compute_divs(), isl_basic_set_full_compression(), isl_basic_set_multiplicative_call(), isl_factorizer_every_factor_basic_set(), isl_morph_compose(), isl_morph_vertices(), lower_dim_vertices(), main(), and unwrapped_guarded_poly_bound().
isl_stat isl_morph_check_applies | ( | __isl_keep isl_morph * | morph, |
__isl_keep isl_space * | space | ||
) |
Definition at line 215 of file isl_morph.c.
References check_space_match(), isl_morph_peek_dom_space(), and isl_space_is_equal().
Referenced by isl_qpolynomial_fold_morph_domain(), and isl_qpolynomial_morph_domain().
__isl_give isl_morph * isl_morph_compose | ( | __isl_take isl_morph * | morph1, |
__isl_take isl_morph * | morph2 | ||
) |
Definition at line 711 of file isl_morph.c.
References isl_basic_set_copy(), isl_basic_set_intersect(), isl_mat_copy(), isl_mat_product(), isl_morph_alloc(), isl_morph_basic_set(), isl_morph_copy(), isl_morph_free(), isl_morph_inverse(), and map.
Referenced by isl_basic_set_full_compression().
__isl_give isl_morph * isl_morph_copy | ( | __isl_keep isl_morph * | morph | ) |
Definition at line 59 of file isl_morph.c.
References isl_morph::ref.
Referenced by base_compute_divs(), bernstein_coefficients_factors(), factored_sample(), FN(), isl_basic_set_full_compression(), isl_basic_set_multiplicative_call(), isl_factorizer_every_factor_basic_set(), isl_morph_compose(), isl_morph_vertices(), lower_dim_vertices(), morph_domain(), and unwrapped_guarded_poly_bound().
__isl_give isl_morph * isl_morph_cow | ( | __isl_take isl_morph * | morph | ) |
Definition at line 78 of file isl_morph.c.
References isl_morph_dup(), and isl_morph::ref.
Referenced by isl_morph_dom_params(), isl_morph_inverse(), isl_morph_ran_params(), isl_morph_remove_dom_dims(), isl_morph_remove_ran_dims(), and isl_morph_set_ran_tuple_id().
isl_size isl_morph_dom_dim | ( | __isl_keep isl_morph * | morph, |
enum isl_dim_type | type | ||
) |
Definition at line 234 of file isl_morph.c.
References isl_basic_set_dim(), isl_size_error, and type.
Referenced by identity_on_parameters().
__isl_give isl_morph * isl_morph_dom_params | ( | __isl_take isl_morph * | morph | ) |
Definition at line 306 of file isl_morph.c.
References isl_basic_set_dim(), isl_basic_set_params(), isl_dim_set, isl_morph_cow(), isl_morph_free(), isl_morph_remove_dom_dims(), and n.
Referenced by isl_basic_set_multiplicative_call(), isl_morph_vertices(), and unwrapped_guarded_poly_bound().
void isl_morph_dump | ( | __isl_take isl_morph * | morph | ) |
Definition at line 375 of file isl_morph.c.
References isl_morph_print_internal().
__isl_give isl_morph * isl_morph_dup | ( | __isl_keep isl_morph * | morph | ) |
Definition at line 68 of file isl_morph.c.
References isl_basic_set_copy(), isl_mat_copy(), and isl_morph_alloc().
Referenced by isl_morph_cow().
__isl_give isl_morph * isl_morph_empty | ( | __isl_keep isl_basic_set * | bset | ) |
Definition at line 400 of file isl_morph.c.
References id, isl_basic_set_copy(), isl_basic_set_dim(), isl_basic_set_empty(), isl_dim_all, isl_mat_copy(), isl_mat_identity(), isl_morph_alloc(), isl_space_copy(), and total().
Referenced by isl_basic_set_parameter_compression(), and isl_basic_set_variable_compression().
__isl_null isl_morph * isl_morph_free | ( | __isl_take isl_morph * | morph | ) |
Definition at line 89 of file isl_morph.c.
References isl_basic_set_free(), and isl_mat_free().
Referenced by extract_node(), FN(), isl_factorizer_alloc(), isl_factorizer_free(), isl_morph_basic_set(), isl_morph_compose(), isl_morph_dom_params(), isl_morph_ran_params(), isl_morph_remove_dom_dims(), isl_morph_remove_ran_dims(), isl_morph_set(), isl_morph_set_ran_tuple_id(), isl_morph_vec(), isl_morph_vertices(), isl_qpolynomial_fold_morph_domain(), and isl_qpolynomial_morph_domain().
isl_ctx * isl_morph_get_ctx | ( | __isl_keep isl_morph * | morph | ) |
Definition at line 24 of file isl_morph.c.
References isl_basic_set_get_ctx().
Referenced by isl_morph_get_var_multi_aff().
__isl_give isl_space * isl_morph_get_dom_space | ( | __isl_keep isl_morph * | morph | ) |
Definition at line 195 of file isl_morph.c.
References isl_morph_peek_dom_space(), and isl_space_copy().
Referenced by isl_morph_get_var_multi_aff().
__isl_give isl_space * isl_morph_get_ran_space | ( | __isl_keep isl_morph * | morph | ) |
Definition at line 226 of file isl_morph.c.
References isl_space_copy().
Referenced by isl_morph_get_var_multi_aff(), isl_qpolynomial_fold_morph_domain(), and unwrapped_guarded_poly_bound().
__isl_give isl_multi_aff * isl_morph_get_var_multi_aff | ( | __isl_keep isl_morph * | morph | ) |
Definition at line 135 of file isl_morph.c.
References aff, identity_on_parameters(), isl_aff_alloc_vec(), isl_die, isl_dim_out, isl_dim_param, isl_error_invalid, isl_local_space_copy(), isl_local_space_free(), isl_local_space_from_space(), isl_mat_get_element_val(), isl_mat_get_row(), isl_morph_get_ctx(), isl_morph_get_dom_space(), isl_morph_get_ran_space(), isl_space_copy(), isl_space_map_from_domain_and_range(), isl_vec_insert_els(), isl_vec_set_element_val(), ma, and val.
Referenced by extract_node().
__isl_give isl_morph * isl_morph_identity | ( | __isl_keep isl_basic_set * | bset | ) |
Definition at line 380 of file isl_morph.c.
References id, isl_basic_set_copy(), isl_basic_set_dim(), isl_basic_set_universe(), isl_dim_all, isl_mat_copy(), isl_mat_identity(), isl_morph_alloc(), isl_space_copy(), total(), and universe().
Referenced by isl_basic_set_parameter_compression(), isl_basic_set_variable_compression(), and isl_factorizer_identity().
__isl_give isl_morph * isl_morph_inverse | ( | __isl_take isl_morph * | morph | ) |
Definition at line 739 of file isl_morph.c.
References isl_morph_cow().
Referenced by base_compute_divs(), extract_node(), factored_sample(), isl_basic_set_multiplicative_call(), isl_morph_compose(), lower_dim_vertices(), and unwrapped_guarded_poly_bound().
|
static |
Definition at line 184 of file isl_morph.c.
References isl_basic_set_peek_space().
Referenced by isl_morph_check_applies(), and isl_morph_get_dom_space().
void isl_morph_print_internal | ( | __isl_take isl_morph * | morph, |
FILE * | out | ||
) |
Definition at line 364 of file isl_morph.c.
References isl_basic_set_dump(), and isl_mat_print_internal().
Referenced by isl_factorizer_dump(), and isl_morph_dump().
isl_size isl_morph_ran_dim | ( | __isl_keep isl_morph * | morph, |
enum isl_dim_type | type | ||
) |
Definition at line 242 of file isl_morph.c.
References isl_basic_set_dim(), isl_size_error, and type.
Referenced by extract_node(), and identity_on_parameters().
__isl_give isl_morph * isl_morph_ran_params | ( | __isl_take isl_morph * | morph | ) |
Definition at line 329 of file isl_morph.c.
References isl_basic_set_dim(), isl_basic_set_params(), isl_dim_set, isl_morph_cow(), isl_morph_free(), isl_morph_remove_ran_dims(), and n.
Referenced by isl_basic_set_multiplicative_call(), isl_morph_vertices(), and unwrapped_guarded_poly_bound().
__isl_give isl_morph * isl_morph_remove_dom_dims | ( | __isl_take isl_morph * | morph, |
enum isl_dim_type | type, | ||
unsigned | first, | ||
unsigned | n | ||
) |
Definition at line 250 of file isl_morph.c.
References isl_basic_set_remove_dims(), isl_mat_drop_cols(), isl_mat_drop_rows(), isl_morph_cow(), isl_morph_free(), isl_space_offset(), n, and type.
Referenced by isl_morph_dom_params().
__isl_give isl_morph * isl_morph_remove_ran_dims | ( | __isl_take isl_morph * | morph, |
enum isl_dim_type | type, | ||
unsigned | first, | ||
unsigned | n | ||
) |
Definition at line 277 of file isl_morph.c.
References isl_basic_set_remove_dims(), isl_mat_drop_cols(), isl_mat_drop_rows(), isl_morph_cow(), isl_morph_free(), isl_space_offset(), n, and type.
Referenced by isl_morph_ran_params().
__isl_give isl_set * isl_morph_set | ( | __isl_take isl_morph * | morph, |
__isl_take isl_set * | set | ||
) |
Definition at line 678 of file isl_morph.c.
References isl_basic_set_copy(), isl_basic_set_dim(), isl_basic_set_get_space(), isl_dim_param, isl_dim_set, isl_mat_copy(), isl_morph_free(), isl_multi_aff_from_aff_mat_anonymous(), isl_set_basic_set_check_equal_space(), isl_set_free(), isl_set_from_basic_set(), isl_set_intersect(), isl_set_move_dims(), isl_set_preimage_multi_aff(), isl_set_reset_space(), ma, and set.
Referenced by base_compute_divs(), and FN().
|
static |
Definition at line 352 of file isl_morph.c.
References isl_basic_set_set_tuple_id(), isl_id_copy(), isl_morph_cow(), and isl_morph_free().
Referenced by isl_basic_set_variable_compression_with_id().
__isl_give isl_vec * isl_morph_vec | ( | __isl_take isl_morph * | morph, |
__isl_take isl_vec * | vec | ||
) |
Definition at line 790 of file isl_morph.c.
References isl_mat_copy(), isl_mat_vec_product(), isl_morph_free(), and isl_vec_free().
Referenced by factored_sample().
|
static |
Definition at line 616 of file isl_morph.c.
References isl_mat_cols(), isl_mat_get_ctx(), isl_mat_rows(), isl_multi_aff_from_aff_mat(), and isl_space_alloc().
Referenced by isl_morph_basic_set(), and isl_morph_set().