Polly 20.0.0git
|
#include <isl/ast.h>
#include <isl/ast_build.h>
#include <isl/set.h>
#include <isl/list.h>
#include <isl/printer.h>
#include <isl/stream.h>
#include <isl_list_templ.h>
Go to the source code of this file.
Classes | |
struct | isl_ast_graft |
Macros | |
#define | EL isl_ast_graft |
Typedefs | |
typedef struct isl_ast_graft | isl_ast_graft |
#define EL isl_ast_graft |
Definition at line 41 of file isl_ast_graft_private.h.
typedef struct isl_ast_graft isl_ast_graft |
Definition at line 12 of file isl_ast_graft_private.h.
__isl_give isl_ast_graft * isl_ast_graft_add_guard | ( | __isl_take isl_ast_graft * | graft, |
__isl_take isl_set * | guard, | ||
__isl_keep isl_ast_build * | build | ||
) |
Definition at line 1102 of file isl_ast_graft.c.
References isl_if_node::guard, and store_guard().
Referenced by add_domain(), call_create_leaf(), and list_add_guard().
__isl_give isl_ast_graft * isl_ast_graft_alloc | ( | __isl_take isl_ast_node * | node, |
__isl_keep isl_ast_build * | build | ||
) |
Definition at line 84 of file isl_ast_graft.c.
References graft_alloc(), isl_ast_build_get_space(), isl_basic_set_universe(), isl_set_universe(), and isl_space_copy().
Referenced by call_create_leaf(), isl_ast_graft_alloc_domain(), and isl_ast_graft_alloc_from_children().
__isl_give isl_ast_graft * isl_ast_graft_alloc_domain | ( | __isl_take isl_map * | schedule, |
__isl_keep isl_ast_build * | build | ||
) |
Definition at line 106 of file isl_ast_graft.c.
References isl_ast_build_call_from_executed(), and isl_ast_graft_alloc().
Referenced by add_domain().
__isl_give isl_ast_graft * isl_ast_graft_alloc_from_children | ( | __isl_take isl_ast_graft_list * | list, |
__isl_take isl_set * | guard, | ||
__isl_take isl_basic_set * | enforced, | ||
__isl_keep isl_ast_build * | build, | ||
__isl_keep isl_ast_build * | sub_build | ||
) |
Definition at line 895 of file isl_ast_graft.c.
References extract_node_list(), gist_guards(), isl_if_node::guard, insert_pending_guard_nodes(), isl_ast_build_copy(), isl_ast_build_free(), isl_ast_build_replace_pending_by_guard(), isl_ast_graft_alloc(), isl_ast_graft_enforce(), isl_ast_node_from_ast_node_list(), isl_set_copy(), isl_if_node::node, and store_guard().
Referenced by ast_graft_list_fuse(), build_ast_from_guard(), create_node_scaled(), and hoist_out_of_context().
__isl_give isl_ast_graft * isl_ast_graft_enforce | ( | __isl_take isl_ast_graft * | graft, |
__isl_take isl_basic_set * | enforced | ||
) |
Definition at line 1069 of file isl_ast_graft.c.
References isl_ast_graft_free(), isl_basic_set_align_params(), isl_basic_set_free(), isl_basic_set_get_space(), and isl_basic_set_intersect().
Referenced by isl_ast_graft_alloc_from_children(), set_enforced_from_list(), and set_enforced_from_set().
__isl_null isl_ast_graft * isl_ast_graft_free | ( | __isl_take isl_ast_graft * | graft | ) |
Definition at line 1050 of file isl_ast_graft.c.
References isl_ast_node_free(), isl_basic_set_free(), and isl_set_free().
Referenced by add_to_guard_list(), after_each_for(), after_each_mark(), at_each_domain(), equal_independent_guards(), extract_node_list(), gist_guards(), graft_extend_body(), insert_if_node(), insert_pending_guard_nodes(), isl_ast_graft_enforce(), isl_ast_graft_insert_for(), isl_ast_graft_insert_mark(), isl_ast_graft_list_extract_hoistable_guard(), isl_ast_graft_list_extract_shared_enforced(), isl_ast_graft_list_insert_pending_guard_nodes(), isl_ast_graft_list_merge(), isl_ast_graft_preimage_multi_aff(), isl_ast_graft_set_enforced(), isl_ast_graft_unembed(), refine_degenerate(), refine_generic(), refine_generic_bounds(), refine_generic_split(), set_enforced_from_set(), set_for_cond_from_list(), set_for_cond_from_set(), set_for_node_expressions(), and store_guard().
isl_ctx * isl_ast_graft_get_ctx | ( | __isl_keep isl_ast_graft * | graft | ) |
Definition at line 39 of file isl_ast_graft.c.
References isl_basic_set_get_ctx().
Referenced by refine_generic_bounds().
__isl_give isl_basic_set * isl_ast_graft_get_enforced | ( | __isl_keep isl_ast_graft * | graft | ) |
Definition at line 1089 of file isl_ast_graft.c.
References isl_basic_set_copy().
Referenced by isl_ast_graft_list_extract_hoistable_guard(), and update_enforced().
__isl_give isl_set * isl_ast_graft_get_guard | ( | __isl_keep isl_ast_graft * | graft | ) |
Definition at line 1095 of file isl_ast_graft.c.
References isl_set_copy().
__isl_give isl_ast_node * isl_ast_graft_get_node | ( | __isl_keep isl_ast_graft * | graft | ) |
Definition at line 46 of file isl_ast_graft.c.
References isl_ast_node_copy().
Referenced by extract_node_list().
__isl_give isl_ast_graft * isl_ast_graft_insert_for | ( | __isl_take isl_ast_graft * | graft, |
__isl_take isl_ast_node * | node | ||
) |
Definition at line 997 of file isl_ast_graft.c.
References isl_ast_graft_free(), isl_ast_node_for_set_body(), isl_ast_node_free(), isl_if_node::node, isl_ast_graft::node, and isl_ast_node::node.
Referenced by create_node_scaled().
__isl_give isl_ast_graft * isl_ast_graft_insert_mark | ( | __isl_take isl_ast_graft * | graft, |
__isl_take isl_id * | mark | ||
) |
Definition at line 1016 of file isl_ast_graft.c.
References isl_ast_graft_free(), isl_ast_node_alloc_mark(), isl_id_free(), and isl_ast_graft::node.
Referenced by build_ast_from_mark().
__isl_give isl_set * isl_ast_graft_list_extract_hoistable_guard | ( | __isl_keep isl_ast_graft_list * | list, |
__isl_keep isl_ast_build * | build | ||
) |
Definition at line 228 of file isl_ast_graft.c.
References equal, equal_independent_guards(), isl_ast_graft::guard, hoist_guard(), hull, isl_ast_build_get_ctx(), isl_ast_build_get_domain(), isl_ast_build_get_space(), isl_ast_graft_free(), isl_ast_graft_get_enforced(), isl_set_copy(), isl_set_empty(), isl_set_from_basic_set(), isl_set_intersect(), isl_set_list, isl_set_union(), isl_set_universe(), isl_set_unshifted_simple_hull_from_set_list(), and n.
Referenced by ast_graft_list_fuse(), build_ast_from_guard(), create_node_scaled(), and hoist_out_of_context().
__isl_give isl_basic_set * isl_ast_graft_list_extract_shared_enforced | ( | __isl_keep isl_ast_graft_list * | list, |
__isl_keep isl_ast_build * | build | ||
) |
Definition at line 776 of file isl_ast_graft.c.
References isl_ast_build_get_depth(), isl_ast_build_get_space(), isl_ast_graft_free(), isl_basic_set_empty(), n, and update_enforced().
Referenced by ast_graft_list_fuse(), extract_shared_enforced(), and hoist_out_of_context().
__isl_give isl_ast_graft_list * isl_ast_graft_list_fuse | ( | __isl_take isl_ast_graft_list * | children, |
__isl_keep isl_ast_build * | build | ||
) |
Definition at line 960 of file isl_ast_graft.c.
References ast_graft_list_fuse(), and n.
Referenced by build_ast_from_context(), build_ast_from_mark(), generate_sorted_domains_wrap(), and list_add_guard().
__isl_give isl_ast_graft_list * isl_ast_graft_list_gist_guards | ( | __isl_take isl_ast_graft_list * | list, |
__isl_take isl_set * | context | ||
) |
Definition at line 876 of file isl_ast_graft.c.
References context, gist_guards(), and isl_set_free().
Referenced by build_ast_from_guard(), and create_node_scaled().
__isl_give isl_ast_graft_list * isl_ast_graft_list_group_on_guard | ( | __isl_take isl_ast_graft_list * | list, |
__isl_keep isl_ast_build * | build | ||
) |
Definition at line 1443 of file isl_ast_graft.c.
References isl_split_on_guard_data::any_match, isl_split_on_guard_data::guard2list, n, reconstruct(), and split_on_guard().
Referenced by build_ast_from_leaf().
__isl_give isl_ast_graft_list * isl_ast_graft_list_insert_pending_guard_nodes | ( | __isl_take isl_ast_graft_list * | list, |
__isl_keep isl_ast_build * | build | ||
) |
Definition at line 711 of file isl_ast_graft.c.
References isl_ast_graft::guard, insert_pending_guard_nodes(), isl_ast_build_get_space(), isl_ast_graft_free(), isl_set_copy(), isl_set_free(), isl_set_universe(), n, and universe().
Referenced by build_ast_from_context().
__isl_give isl_ast_graft_list * isl_ast_graft_list_merge | ( | __isl_take isl_ast_graft_list * | list1, |
__isl_take isl_ast_graft_list * | list2, | ||
__isl_keep isl_ast_build * | build | ||
) |
Definition at line 1257 of file isl_ast_graft.c.
References cmp(), isl_ast_graft::guard, isl_ast_build_get_ctx(), isl_ast_graft_free(), isl_ast_graft_fuse(), isl_die, isl_error_internal, isl_set_is_disjoint(), isl_set_plain_cmp(), and n.
Referenced by generate_components().
__isl_give isl_ast_graft_list * isl_ast_graft_list_preimage_multi_aff | ( | __isl_take isl_ast_graft_list * | list, |
__isl_take isl_multi_aff * | ma | ||
) |
Definition at line 1197 of file isl_ast_graft.c.
References isl_ast_graft_preimage_multi_aff(), ma, and n.
Referenced by generate_shift_component().
__isl_give isl_ast_graft_list * isl_ast_graft_list_sort_guard | ( | __isl_take isl_ast_graft_list * | list | ) |
Definition at line 1229 of file isl_ast_graft.c.
References cmp_graft().
Referenced by generate_parallel_domains().
__isl_give isl_ast_graft_list * isl_ast_graft_list_unembed | ( | __isl_take isl_ast_graft_list * | list, |
int | product | ||
) |
Definition at line 1152 of file isl_ast_graft.c.
References isl_ast_graft_unembed(), and n.
Referenced by build_ast_from_band(), and generate_code_in_space().
__isl_give isl_ast_node * isl_ast_node_from_graft_list | ( | __isl_take isl_ast_graft_list * | list, |
__isl_keep isl_ast_build * | build | ||
) |
Definition at line 1037 of file isl_ast_graft.c.
References extract_node_list(), insert_pending_guard_nodes(), and isl_ast_node_from_ast_node_list().
Referenced by build_ast_from_domain(), and isl_ast_build_node_from_schedule_map().
__isl_give isl_printer * isl_printer_print_ast_graft | ( | __isl_take isl_printer * | p, |
__isl_keep isl_ast_graft * | graft | ||
) |
Definition at line 1484 of file isl_ast_graft.c.
References isl_graft_key_enforced, isl_graft_key_guard, isl_graft_key_node, isl_printer_free(), isl_printer_print_ast_node(), isl_printer_print_basic_set(), isl_printer_print_set(), isl_printer_print_str(), key_str, and p.
__isl_give isl_ast_graft_list * isl_stream_read_ast_graft_list | ( | isl_stream * | s | ) |