#include <isl_map_private.h>
#include <isl_union_map_private.h>
#include <isl/ctx.h>
#include <isl/hash.h>
#include <isl_aff_private.h>
#include <isl/map.h>
#include <isl/set.h>
#include <isl_space_private.h>
#include <isl/union_set.h>
#include <isl_maybe_map.h>
#include <isl_id_private.h>
#include <bset_from_bmap.c>
#include <set_to_map.c>
#include <set_from_map.c>
#include <uset_to_umap.c>
#include <uset_from_umap.c>
#include <set_list_from_map_list_inl.c>
#undef TYPE
#define TYPE …
static
#include "has_single_reference_templ.c"
static
#include "check_single_reference_templ.c"
isl_size isl_union_map_dim(__isl_keep isl_union_map *umap,
enum isl_dim_type type)
{ … }
isl_size isl_union_set_dim(__isl_keep isl_union_set *uset,
enum isl_dim_type type)
{ … }
__isl_give isl_id *isl_union_map_get_dim_id(__isl_keep isl_union_map *umap,
enum isl_dim_type type, unsigned pos)
{ … }
isl_bool isl_union_set_is_params(__isl_keep isl_union_set *uset)
{ … }
isl_bool isl_union_map_is_params(__isl_keep isl_union_map *umap)
{ … }
static __isl_give isl_union_map *isl_union_map_alloc(
__isl_take isl_space *space, int size)
{ … }
__isl_give isl_union_map *isl_union_map_empty_ctx(isl_ctx *ctx)
{ … }
__isl_give isl_union_map *isl_union_map_empty_space(__isl_take isl_space *space)
{ … }
__isl_give isl_union_map *isl_union_map_empty(__isl_take isl_space *space)
{ … }
__isl_give isl_union_set *isl_union_set_empty_ctx(isl_ctx *ctx)
{ … }
__isl_give isl_union_set *isl_union_set_empty_space(__isl_take isl_space *space)
{ … }
__isl_give isl_union_set *isl_union_set_empty(__isl_take isl_space *space)
{ … }
isl_ctx *isl_union_map_get_ctx(__isl_keep isl_union_map *umap)
{ … }
isl_ctx *isl_union_set_get_ctx(__isl_keep isl_union_set *uset)
{ … }
__isl_keep isl_space *isl_union_map_peek_space(__isl_keep isl_union_map *umap)
{ … }
__isl_keep isl_space *isl_union_set_peek_space(__isl_keep isl_union_set *uset)
{ … }
__isl_give isl_space *isl_union_map_get_space(__isl_keep isl_union_map *umap)
{ … }
int isl_union_map_find_dim_by_name(__isl_keep isl_union_map *umap,
enum isl_dim_type type, const char *name)
{ … }
static int isl_union_map_find_dim_by_id(__isl_keep isl_union_map *umap,
enum isl_dim_type type, __isl_keep isl_id *id)
{ … }
__isl_give isl_space *isl_union_set_get_space(__isl_keep isl_union_set *uset)
{ … }
static isl_stat free_umap_entry(void **entry, void *user)
{ … }
static isl_stat add_map(__isl_take isl_map *map, void *user)
{ … }
__isl_give isl_union_map *isl_union_map_dup(__isl_keep isl_union_map *umap)
{ … }
__isl_give isl_union_map *isl_union_map_cow(__isl_take isl_union_map *umap)
{ … }
struct isl_union_align { … };
static isl_stat align_entry(void **entry, void *user)
{ … }
__isl_give isl_union_map *isl_union_map_align_params(
__isl_take isl_union_map *umap, __isl_take isl_space *model)
{ … }
__isl_give isl_union_set *isl_union_set_align_params(
__isl_take isl_union_set *uset, __isl_take isl_space *model)
{ … }
__isl_give isl_union_map *isl_union_map_union(__isl_take isl_union_map *umap1,
__isl_take isl_union_map *umap2)
{ … }
__isl_give isl_union_set *isl_union_set_union(__isl_take isl_union_set *uset1,
__isl_take isl_union_set *uset2)
{ … }
__isl_give isl_union_map *isl_union_map_copy(__isl_keep isl_union_map *umap)
{ … }
__isl_give isl_union_set *isl_union_set_copy(__isl_keep isl_union_set *uset)
{ … }
__isl_null isl_union_map *isl_union_map_free(__isl_take isl_union_map *umap)
{ … }
__isl_null isl_union_set *isl_union_set_free(__isl_take isl_union_set *uset)
{ … }
isl_bool isl_union_map_space_has_equal_params(__isl_keep isl_union_map *umap,
__isl_keep isl_space *space)
{ … }
isl_bool isl_union_set_space_has_equal_params(__isl_keep isl_union_set *uset,
__isl_keep isl_space *space)
{ … }
static isl_bool has_space_tuples(const void *entry, const void *val)
{ … }
static struct isl_hash_table_entry *isl_union_map_find_entry(
__isl_keep isl_union_map *umap, __isl_keep isl_space *space,
int reserve)
{ … }
struct isl_hash_table_entry *isl_union_set_find_entry(
__isl_keep isl_union_set *uset, __isl_keep isl_space *space,
int reserve)
{ … }
__isl_give isl_union_map *isl_union_map_add_map(__isl_take isl_union_map *umap,
__isl_take isl_map *map)
{ … }
__isl_give isl_union_set *isl_union_set_add_set(__isl_take isl_union_set *uset,
__isl_take isl_set *set)
{ … }
__isl_give isl_union_map *isl_union_map_from_map(__isl_take isl_map *map)
{ … }
__isl_give isl_union_map *isl_map_to_union_map(__isl_take isl_map *map)
{ … }
__isl_give isl_union_set *isl_union_set_from_set(__isl_take isl_set *set)
{ … }
__isl_give isl_union_set *isl_set_to_union_set(__isl_take isl_set *set)
{ … }
__isl_give isl_union_map *isl_union_map_from_basic_map(
__isl_take isl_basic_map *bmap)
{ … }
__isl_give isl_union_set *isl_union_set_from_basic_set(
__isl_take isl_basic_set *bset)
{ … }
struct isl_union_map_foreach_data
{ … };
static isl_stat call_on_copy(void **entry, void *user)
{ … }
isl_size isl_union_map_n_map(__isl_keep isl_union_map *umap)
{ … }
isl_size isl_union_set_n_set(__isl_keep isl_union_set *uset)
{ … }
isl_stat isl_union_map_foreach_map(__isl_keep isl_union_map *umap,
isl_stat (*fn)(__isl_take isl_map *map, void *user), void *user)
{ … }
struct isl_union_map_every_data { … };
static isl_stat call_every(void **entry, void *user)
{ … }
isl_bool isl_union_map_every_map(__isl_keep isl_union_map *umap,
isl_bool (*test)(__isl_keep isl_map *map, void *user), void *user)
{ … }
static isl_stat add_list_map(__isl_take isl_map *map, void *user)
{ … }
__isl_give isl_map_list *isl_union_map_get_map_list(
__isl_keep isl_union_map *umap)
{ … }
__isl_give isl_set_list *isl_union_set_get_set_list(
__isl_keep isl_union_set *uset)
{ … }
isl_bool isl_union_map_isa_map(__isl_keep isl_union_map *umap)
{ … }
isl_bool isl_union_set_isa_set(__isl_keep isl_union_set *uset)
{ … }
static isl_stat copy_map(void **entry, void *user)
{ … }
__isl_give isl_map *isl_map_from_union_map(__isl_take isl_union_map *umap)
{ … }
__isl_give isl_map *isl_union_map_as_map(__isl_take isl_union_map *umap)
{ … }
__isl_give isl_set *isl_set_from_union_set(__isl_take isl_union_set *uset)
{ … }
__isl_give isl_set *isl_union_set_as_set(__isl_take isl_union_set *uset)
{ … }
__isl_give isl_map *isl_union_map_extract_map(__isl_keep isl_union_map *umap,
__isl_take isl_space *space)
{ … }
__isl_give isl_set *isl_union_set_extract_set(__isl_keep isl_union_set *uset,
__isl_take isl_space *space)
{ … }
isl_bool isl_union_map_contains(__isl_keep isl_union_map *umap,
__isl_keep isl_space *space)
{ … }
isl_bool isl_union_set_contains(__isl_keep isl_union_set *uset,
__isl_keep isl_space *space)
{ … }
isl_stat isl_union_set_foreach_set(__isl_keep isl_union_set *uset,
isl_stat (*fn)(__isl_take isl_set *set, void *user), void *user)
{ … }
struct isl_test_set_from_map_data { … };
static isl_bool test_set_from_map(__isl_keep isl_map *map, void *user)
{ … }
isl_bool isl_union_set_every_set(__isl_keep isl_union_set *uset,
isl_bool (*test)(__isl_keep isl_set *set, void *user), void *user)
{ … }
struct isl_union_set_foreach_point_data { … };
static isl_stat foreach_point(__isl_take isl_set *set, void *user)
{ … }
isl_stat isl_union_set_foreach_point(__isl_keep isl_union_set *uset,
isl_stat (*fn)(__isl_take isl_point *pnt, void *user), void *user)
{ … }
struct isl_bin_op_control { … };
struct isl_union_map_gen_bin_data { … };
static __isl_give isl_union_map *bin_add_map(__isl_take isl_union_map *res,
__isl_keep isl_map *map)
{ … }
static __isl_give isl_union_map *bin_add_pair(__isl_take isl_union_map *res,
__isl_keep isl_map *map1, __isl_keep isl_map *map2,
struct isl_union_map_gen_bin_data *data)
{ … }
static __isl_give isl_space *identity(__isl_take isl_space *space)
{ … }
static __isl_keep isl_maybe_isl_map bin_try_get_match(
struct isl_union_map_gen_bin_data *data, __isl_keep isl_map *map)
{ … }
static isl_stat gen_bin_entry(void **entry, void *user)
{ … }
static __isl_give isl_union_map *gen_bin_op(__isl_take isl_union_map *umap1,
__isl_take isl_union_map *umap2, struct isl_bin_op_control *control)
{ … }
__isl_give isl_union_map *isl_union_map_subtract(
__isl_take isl_union_map *umap1, __isl_take isl_union_map *umap2)
{ … }
__isl_give isl_union_set *isl_union_set_subtract(
__isl_take isl_union_set *uset1, __isl_take isl_union_set *uset2)
{ … }
struct isl_union_map_gen_bin_set_data { … };
static isl_stat intersect_params_entry(void **entry, void *user)
{ … }
static __isl_give isl_union_map *gen_bin_set_op(__isl_take isl_union_map *umap,
__isl_take isl_set *set, isl_stat (*fn)(void **, void *))
{ … }
__isl_give isl_union_map *isl_union_map_intersect_params(
__isl_take isl_union_map *umap, __isl_take isl_set *set)
{ … }
__isl_give isl_union_set *isl_union_set_intersect_params(
__isl_take isl_union_set *uset, __isl_take isl_set *set)
{ … }
static __isl_give isl_union_map *union_map_intersect_params(
__isl_take isl_union_map *umap, __isl_take isl_union_set *uset)
{ … }
static __isl_give isl_union_map *union_map_gist_params(
__isl_take isl_union_map *umap, __isl_take isl_union_set *uset)
{ … }
struct isl_union_map_match_bin_data { … };
static isl_stat match_bin_entry(void **entry, void *user)
{ … }
static __isl_give isl_union_map *match_bin_op(__isl_take isl_union_map *umap1,
__isl_take isl_union_map *umap2,
__isl_give isl_map *(*fn)(__isl_take isl_map*, __isl_take isl_map*))
{ … }
__isl_give isl_union_map *isl_union_map_intersect(
__isl_take isl_union_map *umap1, __isl_take isl_union_map *umap2)
{ … }
__isl_give isl_union_set *isl_union_set_intersect(
__isl_take isl_union_set *uset1, __isl_take isl_union_set *uset2)
{ … }
static isl_stat gist_params_entry(void **entry, void *user)
{ … }
__isl_give isl_union_map *isl_union_map_gist_params(
__isl_take isl_union_map *umap, __isl_take isl_set *set)
{ … }
__isl_give isl_union_set *isl_union_set_gist_params(
__isl_take isl_union_set *uset, __isl_take isl_set *set)
{ … }
__isl_give isl_union_map *isl_union_map_gist(__isl_take isl_union_map *umap,
__isl_take isl_union_map *context)
{ … }
__isl_give isl_union_set *isl_union_set_gist(__isl_take isl_union_set *uset,
__isl_take isl_union_set *context)
{ … }
__isl_give isl_union_map *isl_union_map_plain_gist(
__isl_take isl_union_map *umap, __isl_take isl_union_map *context)
{ … }
__isl_give isl_union_set *isl_union_set_plain_gist(
__isl_take isl_union_set *uset, __isl_take isl_union_set *context)
{ … }
static __isl_give isl_map *lex_le_set(__isl_take isl_map *set1,
__isl_take isl_map *set2)
{ … }
static __isl_give isl_map *lex_lt_set(__isl_take isl_map *set1,
__isl_take isl_map *set2)
{ … }
__isl_give isl_union_map *isl_union_set_lex_lt_union_set(
__isl_take isl_union_set *uset1, __isl_take isl_union_set *uset2)
{ … }
__isl_give isl_union_map *isl_union_set_lex_le_union_set(
__isl_take isl_union_set *uset1, __isl_take isl_union_set *uset2)
{ … }
__isl_give isl_union_map *isl_union_set_lex_gt_union_set(
__isl_take isl_union_set *uset1, __isl_take isl_union_set *uset2)
{ … }
__isl_give isl_union_map *isl_union_set_lex_ge_union_set(
__isl_take isl_union_set *uset1, __isl_take isl_union_set *uset2)
{ … }
__isl_give isl_union_map *isl_union_map_lex_gt_union_map(
__isl_take isl_union_map *umap1, __isl_take isl_union_map *umap2)
{ … }
__isl_give isl_union_map *isl_union_map_lex_ge_union_map(
__isl_take isl_union_map *umap1, __isl_take isl_union_map *umap2)
{ … }
static __isl_give isl_union_map *union_map_intersect_domain(
__isl_take isl_union_map *umap, __isl_take isl_union_set *uset)
{ … }
__isl_give isl_union_map *isl_union_map_intersect_domain_union_set(
__isl_take isl_union_map *umap, __isl_take isl_union_set *uset)
{ … }
__isl_give isl_union_map *isl_union_map_intersect_domain(
__isl_take isl_union_map *umap, __isl_take isl_union_set *uset)
{ … }
__isl_give isl_union_map *isl_union_map_subtract_domain(
__isl_take isl_union_map *umap, __isl_take isl_union_set *dom)
{ … }
__isl_give isl_union_map *isl_union_map_subtract_range(
__isl_take isl_union_map *umap, __isl_take isl_union_set *dom)
{ … }
static __isl_give isl_union_map *union_map_gist_domain(
__isl_take isl_union_map *umap, __isl_take isl_union_set *uset)
{ … }
__isl_give isl_union_map *isl_union_map_gist_domain(
__isl_take isl_union_map *umap, __isl_take isl_union_set *uset)
{ … }
__isl_give isl_union_map *isl_union_map_gist_range(
__isl_take isl_union_map *umap, __isl_take isl_union_set *uset)
{ … }
__isl_give isl_union_map *isl_union_map_intersect_range_union_set(
__isl_take isl_union_map *umap, __isl_take isl_union_set *uset)
{ … }
__isl_give isl_union_map *isl_union_map_intersect_range(
__isl_take isl_union_map *umap, __isl_take isl_union_set *uset)
{ … }
__isl_give isl_union_map *isl_union_map_intersect_domain_factor_domain(
__isl_take isl_union_map *umap, __isl_take isl_union_map *factor)
{ … }
__isl_give isl_union_map *isl_union_map_intersect_domain_factor_range(
__isl_take isl_union_map *umap, __isl_take isl_union_map *factor)
{ … }
__isl_give isl_union_map *isl_union_map_intersect_range_factor_domain(
__isl_take isl_union_map *umap, __isl_take isl_union_map *factor)
{ … }
__isl_give isl_union_map *isl_union_map_intersect_range_factor_range(
__isl_take isl_union_map *umap, __isl_take isl_union_map *factor)
{ … }
struct isl_union_map_bin_data { … };
static isl_stat apply_range_entry(void **entry, void *user)
{ … }
static isl_stat bin_entry(void **entry, void *user)
{ … }
static __isl_give isl_union_map *bin_op(__isl_take isl_union_map *umap1,
__isl_take isl_union_map *umap2,
isl_stat (*fn)(void **entry, void *user))
{ … }
__isl_give isl_union_map *
isl_union_map_intersect_domain_wrapped_domain_union_set(
__isl_take isl_union_map *umap, __isl_take isl_union_set *domain)
{ … }
__isl_give isl_union_map *
isl_union_map_intersect_range_wrapped_domain_union_set(
__isl_take isl_union_map *umap, __isl_take isl_union_set *domain)
{ … }
__isl_give isl_union_map *isl_union_map_apply_range(
__isl_take isl_union_map *umap1, __isl_take isl_union_map *umap2)
{ … }
__isl_give isl_union_map *isl_union_map_apply_domain(
__isl_take isl_union_map *umap1, __isl_take isl_union_map *umap2)
{ … }
__isl_give isl_union_set *isl_union_set_apply(
__isl_take isl_union_set *uset, __isl_take isl_union_map *umap)
{ … }
static isl_stat map_lex_lt_entry(void **entry, void *user)
{ … }
__isl_give isl_union_map *isl_union_map_lex_lt_union_map(
__isl_take isl_union_map *umap1, __isl_take isl_union_map *umap2)
{ … }
static isl_stat map_lex_le_entry(void **entry, void *user)
{ … }
__isl_give isl_union_map *isl_union_map_lex_le_union_map(
__isl_take isl_union_map *umap1, __isl_take isl_union_map *umap2)
{ … }
static isl_stat product_entry(void **entry, void *user)
{ … }
__isl_give isl_union_map *isl_union_map_product(__isl_take isl_union_map *umap1,
__isl_take isl_union_map *umap2)
{ … }
static isl_stat set_product_entry(void **entry, void *user)
{ … }
__isl_give isl_union_set *isl_union_set_product(__isl_take isl_union_set *uset1,
__isl_take isl_union_set *uset2)
{ … }
static isl_stat domain_product_entry(void **entry, void *user)
{ … }
__isl_give isl_union_map *isl_union_map_domain_product(
__isl_take isl_union_map *umap1, __isl_take isl_union_map *umap2)
{ … }
static isl_stat range_product_entry(void **entry, void *user)
{ … }
__isl_give isl_union_map *isl_union_map_range_product(
__isl_take isl_union_map *umap1, __isl_take isl_union_map *umap2)
{ … }
static isl_stat flat_domain_product_entry(void **entry, void *user)
{ … }
__isl_give isl_union_map *isl_union_map_flat_domain_product(
__isl_take isl_union_map *umap1, __isl_take isl_union_map *umap2)
{ … }
static isl_stat flat_range_product_entry(void **entry, void *user)
{ … }
__isl_give isl_union_map *isl_union_map_flat_range_product(
__isl_take isl_union_map *umap1, __isl_take isl_union_map *umap2)
{ … }
struct isl_un_op_control { … };
struct isl_un_op_drop_user_data { … };
static isl_bool un_op_filter_drop_user(__isl_keep isl_map *map, void *user)
{ … }
struct isl_union_map_un_data { … };
static isl_stat un_entry(void **entry, void *user)
{ … }
static __isl_give isl_union_map *un_op(__isl_take isl_union_map *umap,
struct isl_un_op_control *control)
{ … }
__isl_give isl_union_map *isl_union_map_from_range(
__isl_take isl_union_set *uset)
{ … }
__isl_give isl_union_map *isl_union_map_from_domain(
__isl_take isl_union_set *uset)
{ … }
__isl_give isl_union_map *isl_union_map_from_domain_and_range(
__isl_take isl_union_set *domain, __isl_take isl_union_set *range)
{ … }
static __isl_give isl_union_map *total(__isl_take isl_union_map *umap,
__isl_give isl_map *(*fn)(__isl_take isl_map *))
{ … }
static __isl_give isl_map *isl_map_affine_hull_map(__isl_take isl_map *map)
{ … }
__isl_give isl_union_map *isl_union_map_affine_hull(
__isl_take isl_union_map *umap)
{ … }
__isl_give isl_union_set *isl_union_set_affine_hull(
__isl_take isl_union_set *uset)
{ … }
static __isl_give isl_set *combined_lineality_space(__isl_take isl_set *set)
{ … }
__isl_give isl_union_set *isl_union_set_combined_lineality_space(
__isl_take isl_union_set *uset)
{ … }
static __isl_give isl_map *isl_map_polyhedral_hull_map(__isl_take isl_map *map)
{ … }
__isl_give isl_union_map *isl_union_map_polyhedral_hull(
__isl_take isl_union_map *umap)
{ … }
__isl_give isl_union_set *isl_union_set_polyhedral_hull(
__isl_take isl_union_set *uset)
{ … }
static __isl_give isl_map *isl_map_simple_hull_map(__isl_take isl_map *map)
{ … }
__isl_give isl_union_map *isl_union_map_simple_hull(
__isl_take isl_union_map *umap)
{ … }
__isl_give isl_union_set *isl_union_set_simple_hull(
__isl_take isl_union_set *uset)
{ … }
static __isl_give isl_union_map *inplace(__isl_take isl_union_map *umap,
__isl_give isl_map *(*fn)(__isl_take isl_map *))
{ … }
__isl_give isl_union_map *isl_union_map_remove_redundancies(
__isl_take isl_union_map *umap)
{ … }
__isl_give isl_union_set *isl_union_set_remove_redundancies(
__isl_take isl_union_set *uset)
{ … }
__isl_give isl_union_map *isl_union_map_coalesce(
__isl_take isl_union_map *umap)
{ … }
__isl_give isl_union_set *isl_union_set_coalesce(
__isl_take isl_union_set *uset)
{ … }
__isl_give isl_union_map *isl_union_map_detect_equalities(
__isl_take isl_union_map *umap)
{ … }
__isl_give isl_union_set *isl_union_set_detect_equalities(
__isl_take isl_union_set *uset)
{ … }
__isl_give isl_union_map *isl_union_map_compute_divs(
__isl_take isl_union_map *umap)
{ … }
__isl_give isl_union_set *isl_union_set_compute_divs(
__isl_take isl_union_set *uset)
{ … }
__isl_give isl_union_map *isl_union_map_lexmin(
__isl_take isl_union_map *umap)
{ … }
__isl_give isl_union_set *isl_union_set_lexmin(
__isl_take isl_union_set *uset)
{ … }
__isl_give isl_union_map *isl_union_map_lexmax(
__isl_take isl_union_map *umap)
{ … }
__isl_give isl_union_set *isl_union_set_lexmax(
__isl_take isl_union_set *uset)
{ … }
static __isl_give isl_map *universe(__isl_take isl_map *map)
{ … }
__isl_give isl_union_map *isl_union_map_universe(__isl_take isl_union_map *umap)
{ … }
__isl_give isl_union_set *isl_union_set_universe(__isl_take isl_union_set *uset)
{ … }
__isl_give isl_union_map *isl_union_map_reverse(__isl_take isl_union_map *umap)
{ … }
__isl_give isl_union_map *isl_union_map_range_reverse(
__isl_take isl_union_map *umap)
{ … }
__isl_give isl_set *isl_union_map_params(__isl_take isl_union_map *umap)
{ … }
__isl_give isl_set *isl_union_set_params(__isl_take isl_union_set *uset)
{ … }
__isl_give isl_union_set *isl_union_map_domain(__isl_take isl_union_map *umap)
{ … }
__isl_give isl_union_set *isl_union_map_range(__isl_take isl_union_map *umap)
{ … }
__isl_give isl_union_map *isl_union_map_domain_map(
__isl_take isl_union_map *umap)
{ … }
static isl_stat domain_map_upma(__isl_take isl_map *map, void *user)
{ … }
__isl_give isl_union_pw_multi_aff *isl_union_map_domain_map_union_pw_multi_aff(
__isl_take isl_union_map *umap)
{ … }
__isl_give isl_union_map *isl_union_map_range_map(
__isl_take isl_union_map *umap)
{ … }
__isl_give isl_union_map *isl_union_set_wrapped_domain_map(
__isl_take isl_union_set *uset)
{ … }
static isl_bool equal_tuples(__isl_keep isl_map *map, void *user)
{ … }
__isl_give isl_union_set *isl_union_map_deltas(__isl_take isl_union_map *umap)
{ … }
__isl_give isl_union_map *isl_union_map_deltas_map(
__isl_take isl_union_map *umap)
{ … }
__isl_give isl_union_map *isl_union_set_identity(__isl_take isl_union_set *uset)
{ … }
static isl_stat identity_upma(__isl_take isl_set *set, void *user)
{ … }
__isl_give isl_union_pw_multi_aff *isl_union_set_identity_union_pw_multi_aff(
__isl_take isl_union_set *uset)
{ … }
__isl_give isl_union_map *isl_union_map_domain_factor_domain(
__isl_take isl_union_map *umap)
{ … }
__isl_give isl_union_map *isl_union_map_domain_factor_range(
__isl_take isl_union_map *umap)
{ … }
__isl_give isl_union_map *isl_union_map_range_factor_domain(
__isl_take isl_union_map *umap)
{ … }
__isl_give isl_union_map *isl_union_map_range_factor_range(
__isl_take isl_union_map *umap)
{ … }
__isl_give isl_union_map *isl_union_map_factor_domain(
__isl_take isl_union_map *umap)
{ … }
__isl_give isl_union_map *isl_union_map_factor_range(
__isl_take isl_union_map *umap)
{ … }
__isl_give isl_union_map *isl_union_set_unwrap(__isl_take isl_union_set *uset)
{ … }
__isl_give isl_union_set *isl_union_map_wrap(__isl_take isl_union_map *umap)
{ … }
struct isl_union_map_is_subset_data { … };
static isl_stat is_subset_entry(void **entry, void *user)
{ … }
isl_bool isl_union_map_is_subset(__isl_keep isl_union_map *umap1,
__isl_keep isl_union_map *umap2)
{ … }
isl_bool isl_union_set_is_subset(__isl_keep isl_union_set *uset1,
__isl_keep isl_union_set *uset2)
{ … }
isl_bool isl_union_map_is_equal(__isl_keep isl_union_map *umap1,
__isl_keep isl_union_map *umap2)
{ … }
isl_bool isl_union_set_is_equal(__isl_keep isl_union_set *uset1,
__isl_keep isl_union_set *uset2)
{ … }
isl_bool isl_union_map_is_strict_subset(__isl_keep isl_union_map *umap1,
__isl_keep isl_union_map *umap2)
{ … }
isl_bool isl_union_set_is_strict_subset(__isl_keep isl_union_set *uset1,
__isl_keep isl_union_set *uset2)
{ … }
struct isl_union_map_is_disjoint_data { … };
static isl_stat is_disjoint_entry(void **entry, void *user)
{ … }
isl_bool isl_union_map_is_disjoint(__isl_keep isl_union_map *umap1,
__isl_keep isl_union_map *umap2)
{ … }
isl_bool isl_union_set_is_disjoint(__isl_keep isl_union_set *uset1,
__isl_keep isl_union_set *uset2)
{ … }
static isl_stat sample_entry(void **entry, void *user)
{ … }
__isl_give isl_basic_map *isl_union_map_sample(__isl_take isl_union_map *umap)
{ … }
__isl_give isl_basic_set *isl_union_set_sample(__isl_take isl_union_set *uset)
{ … }
__isl_give isl_point *isl_union_set_sample_point(__isl_take isl_union_set *uset)
{ … }
struct isl_forall_data { … };
static isl_stat forall_entry(void **entry, void *user)
{ … }
static isl_bool union_map_forall(__isl_keep isl_union_map *umap,
isl_bool (*fn)(__isl_keep isl_map *map))
{ … }
struct isl_forall_user_data { … };
static isl_stat forall_user_entry(void **entry, void *user)
{ … }
static isl_bool union_map_forall_user(__isl_keep isl_union_map *umap,
isl_bool (*fn)(__isl_keep isl_map *map, void *user), void *user)
{ … }
isl_bool isl_union_map_plain_is_empty(__isl_keep isl_union_map *umap)
{ … }
isl_bool isl_union_map_is_empty(__isl_keep isl_union_map *umap)
{ … }
isl_bool isl_union_set_is_empty(__isl_keep isl_union_set *uset)
{ … }
static isl_bool is_subset_of_identity(__isl_keep isl_map *map)
{ … }
static isl_bool single_map_is_single_valued(__isl_keep isl_union_map *umap)
{ … }
struct isl_union_map_is_sv_data { … };
static isl_stat single_valued_on_domain(__isl_take isl_set *set, void *user)
{ … }
isl_bool isl_union_map_is_single_valued(__isl_keep isl_union_map *umap)
{ … }
isl_bool isl_union_map_is_injective(__isl_keep isl_union_map *umap)
{ … }
static isl_stat map_plain_is_not_identity(__isl_take isl_map *map, void *user)
{ … }
static isl_bool isl_union_map_plain_is_not_identity(
__isl_keep isl_union_map *umap)
{ … }
static isl_stat map_is_identity(__isl_take isl_map *map, void *user)
{ … }
isl_bool isl_union_map_is_identity(__isl_keep isl_union_map *umap)
{ … }
struct isl_fixed_map { … };
static struct isl_fixed_map *alloc_isl_fixed_map_array(isl_ctx *ctx,
int n)
{ … }
static void free_isl_fixed_map_array(struct isl_fixed_map *v, int n)
{ … }
static int qsort_fixed_map_cmp(const void *p1, const void *p2)
{ … }
struct isl_fixed_dim_data { … };
static isl_bool fixed_at_pos(__isl_keep isl_map *map, void *user)
{ … }
static isl_bool plain_injective_on_range(__isl_take isl_union_map *umap,
int first, int n_range);
static int separates(struct isl_fixed_map *v, int n,
__isl_take isl_space *space, int pos, int n_range)
{ … }
static isl_bool plain_injective_on_range(__isl_take isl_union_map *umap,
int first, int n_range)
{ … }
static isl_bool plain_injective_on_range_wrap(__isl_keep isl_set *ran,
void *user)
{ … }
isl_bool isl_union_map_plain_is_injective(__isl_keep isl_union_map *umap)
{ … }
isl_bool isl_union_map_is_bijective(__isl_keep isl_union_map *umap)
{ … }
__isl_give isl_union_map *isl_union_map_zip(__isl_take isl_union_map *umap)
{ … }
__isl_give isl_union_map *isl_union_map_uncurry(__isl_take isl_union_map *umap)
{ … }
__isl_give isl_union_map *isl_union_map_curry(__isl_take isl_union_map *umap)
{ … }
__isl_give isl_union_map *isl_union_map_range_curry(
__isl_take isl_union_map *umap)
{ … }
__isl_give isl_union_set *isl_union_set_lift(__isl_take isl_union_set *uset)
{ … }
static isl_stat coefficients_entry(void **entry, void *user)
{ … }
__isl_give isl_union_set *isl_union_set_coefficients(
__isl_take isl_union_set *uset)
{ … }
static isl_stat solutions_entry(void **entry, void *user)
{ … }
__isl_give isl_union_set *isl_union_set_solutions(
__isl_take isl_union_set *uset)
{ … }
static int domain_match(__isl_keep isl_map *map, __isl_keep isl_space *space)
{ … }
static int range_match(__isl_keep isl_map *map, __isl_keep isl_space *space)
{ … }
static int set_match(__isl_keep isl_map *map, __isl_keep isl_space *space)
{ … }
struct isl_union_map_preimage_data { … };
static isl_stat preimage_entry(void **entry, void *user)
{ … }
static __isl_give isl_union_map *preimage_pw_multi_aff(
__isl_take isl_union_map *umap, __isl_take isl_pw_multi_aff *pma,
int (*match)(__isl_keep isl_map *map, __isl_keep isl_space *space),
__isl_give isl_map *(*fn)(__isl_take isl_map *map,
__isl_take isl_pw_multi_aff *pma))
{ … }
__isl_give isl_union_map *isl_union_map_preimage_domain_pw_multi_aff(
__isl_take isl_union_map *umap, __isl_take isl_pw_multi_aff *pma)
{ … }
__isl_give isl_union_map *isl_union_map_preimage_range_pw_multi_aff(
__isl_take isl_union_map *umap, __isl_take isl_pw_multi_aff *pma)
{ … }
__isl_give isl_union_set *isl_union_set_preimage_pw_multi_aff(
__isl_take isl_union_set *uset, __isl_take isl_pw_multi_aff *pma)
{ … }
__isl_give isl_union_map *isl_union_map_preimage_domain_multi_aff(
__isl_take isl_union_map *umap, __isl_take isl_multi_aff *ma)
{ … }
__isl_give isl_union_map *isl_union_map_preimage_range_multi_aff(
__isl_take isl_union_map *umap, __isl_take isl_multi_aff *ma)
{ … }
__isl_give isl_union_map *isl_union_set_preimage_multi_aff(
__isl_take isl_union_set *uset, __isl_take isl_multi_aff *ma)
{ … }
struct isl_union_map_preimage_mpa_data { … };
static isl_stat preimage_mpa_entry(void **entry, void *user)
{ … }
static __isl_give isl_union_map *preimage_multi_pw_aff(
__isl_take isl_union_map *umap, __isl_take isl_multi_pw_aff *mpa,
int (*match)(__isl_keep isl_map *map, __isl_keep isl_space *space),
__isl_give isl_map *(*fn)(__isl_take isl_map *map,
__isl_take isl_multi_pw_aff *mpa))
{ … }
__isl_give isl_union_map *isl_union_map_preimage_domain_multi_pw_aff(
__isl_take isl_union_map *umap, __isl_take isl_multi_pw_aff *mpa)
{ … }
struct isl_union_map_preimage_upma_data { … };
static isl_stat preimage_upma(__isl_take isl_pw_multi_aff *pma, void *user)
{ … }
static __isl_give isl_union_map *preimage_union_pw_multi_aff(
__isl_take isl_union_map *umap,
__isl_take isl_union_pw_multi_aff *upma,
__isl_give isl_union_map *(*fn)(__isl_take isl_union_map *umap,
__isl_take isl_pw_multi_aff *pma))
{ … }
__isl_give isl_union_map *isl_union_map_preimage_domain_union_pw_multi_aff(
__isl_take isl_union_map *umap,
__isl_take isl_union_pw_multi_aff *upma)
{ … }
__isl_give isl_union_map *isl_union_map_preimage_range_union_pw_multi_aff(
__isl_take isl_union_map *umap,
__isl_take isl_union_pw_multi_aff *upma)
{ … }
__isl_give isl_union_set *isl_union_set_preimage_union_pw_multi_aff(
__isl_take isl_union_set *uset,
__isl_take isl_union_pw_multi_aff *upma)
{ … }
__isl_give isl_union_map *isl_union_map_reset_user(
__isl_take isl_union_map *umap)
{ … }
__isl_give isl_union_set *isl_union_set_reset_user(
__isl_take isl_union_set *uset)
{ … }
__isl_give isl_union_map *isl_union_map_remove_divs(
__isl_take isl_union_map *umap)
{ … }
__isl_give isl_union_set *isl_union_set_remove_divs(
__isl_take isl_union_set *uset)
{ … }
struct isl_union_map_project_out_data { … };
static isl_stat project_out(__isl_take isl_map *map, void *user)
{ … }
__isl_give isl_union_map *isl_union_map_project_out(
__isl_take isl_union_map *umap,
enum isl_dim_type type, unsigned first, unsigned n)
{ … }
#undef TYPE
#define TYPE …
#include "isl_project_out_all_params_templ.c"
#include "isl_project_out_param_templ.c"
__isl_give isl_union_set *isl_union_set_project_out(
__isl_take isl_union_set *uset,
enum isl_dim_type type, unsigned first, unsigned n)
{ … }
__isl_give isl_union_set *isl_union_set_project_out_all_params(
__isl_take isl_union_set *uset)
{ … }
struct isl_union_map_involves_dims_data { … };
static isl_bool map_excludes(__isl_keep isl_map *map, void *user)
{ … }
isl_bool isl_union_map_involves_dims(__isl_keep isl_union_map *umap,
enum isl_dim_type type, unsigned first, unsigned n)
{ … }
struct isl_union_map_reset_range_space_data { … };
static isl_stat reset_range_space(__isl_take isl_map *map, void *user)
{ … }
__isl_give isl_union_map *isl_union_map_reset_range_space(
__isl_take isl_union_map *umap, __isl_take isl_space *space)
{ … }
static isl_stat check_union_map_space_equal_dim(__isl_keep isl_union_map *umap,
__isl_keep isl_space *space)
{ … }
struct isl_union_map_reset_params_data { … };
static isl_stat reset_params(__isl_take isl_map *map, void *user)
{ … }
__isl_give isl_union_map *isl_union_map_reset_equal_dim_space(
__isl_take isl_union_map *umap, __isl_take isl_space *space)
{ … }
struct isl_union_order_at_data { … };
static isl_stat order_at(__isl_take isl_map *map, void *user)
{ … }
static __isl_give isl_union_map *intersect_explicit_domain(
__isl_take isl_union_map *umap, __isl_keep isl_multi_union_pw_aff *mupa)
{ … }
static __isl_give isl_union_map *isl_union_map_order_at_multi_union_pw_aff(
__isl_take isl_union_map *umap, __isl_take isl_multi_union_pw_aff *mupa,
__isl_give isl_map *(*order)(__isl_take isl_multi_pw_aff *mpa1,
__isl_take isl_multi_pw_aff *mpa2))
{ … }
__isl_give isl_union_map *isl_union_map_eq_at_multi_union_pw_aff(
__isl_take isl_union_map *umap,
__isl_take isl_multi_union_pw_aff *mupa)
{ … }
#undef ORDER
#define ORDER …
#include "isl_union_map_lex_templ.c"
#undef ORDER
#define ORDER …
#include "isl_union_map_lex_templ.c"
#undef ORDER
#define ORDER …
#include "isl_union_map_lex_templ.c"
#undef ORDER
#define ORDER …
#include "isl_union_map_lex_templ.c"
__isl_give isl_union_set *isl_union_set_list_union(
__isl_take isl_union_set_list *list)
{ … }
static isl_stat add_hash(__isl_take isl_map *map, void *user)
{ … }
uint32_t isl_union_map_get_hash(__isl_keep isl_union_map *umap)
{ … }
uint32_t isl_union_set_get_hash(__isl_keep isl_union_set *uset)
{ … }
static isl_stat add_n(__isl_take isl_set *set, void *user)
{ … }
int isl_union_set_n_basic_set(__isl_keep isl_union_set *uset)
{ … }
static isl_stat add_list(__isl_take isl_set *set, void *user)
{ … }
__isl_give isl_basic_set_list *isl_union_set_get_basic_set_list(
__isl_keep isl_union_set *uset)
{ … }
struct isl_union_map_remove_map_if_data { … };
static isl_bool not(__isl_keep isl_map *map, void *user)
{ … }
static __isl_give isl_map *map_id(__isl_take isl_map *map)
{ … }
__isl_give isl_union_map *isl_union_map_remove_map_if(
__isl_take isl_union_map *umap,
isl_bool (*fn)(__isl_keep isl_map *map, void *user), void *user)
{ … }
static isl_bool has_domain_space_tuples(__isl_keep isl_map *map, void *user)
{ … }
static isl_bool has_range_space_tuples(__isl_keep isl_map *map, void *user)
{ … }
static __isl_give isl_map *bind_range(__isl_take isl_map *map, void *user)
{ … }
__isl_give isl_union_set *isl_union_map_bind_range(
__isl_take isl_union_map *umap, __isl_take isl_multi_id *tuple)
{ … }
__isl_give isl_union_map *isl_union_map_intersect_domain_space(
__isl_take isl_union_map *umap, __isl_take isl_space *space)
{ … }
__isl_give isl_union_map *isl_union_map_intersect_range_space(
__isl_take isl_union_map *umap, __isl_take isl_space *space)
{ … }