Polly 20.0.0git
|
Go to the source code of this file.
Classes | |
struct | isl_schedule_node |
__isl_give isl_schedule_node * isl_schedule_node_alloc | ( | __isl_take isl_schedule * | schedule, |
__isl_take isl_schedule_tree * | tree, | ||
__isl_take isl_schedule_tree_list * | ancestors, | ||
int * | child_pos | ||
) |
Definition at line 26 of file isl_schedule_node.c.
References isl_schedule_node::ancestors, isl_schedule_node::child_pos, isl_alloc_array, isl_calloc_type, isl_schedule_free(), isl_schedule_get_ctx(), isl_schedule_node_free(), isl_schedule_tree_free(), n, isl_schedule_node::ref, isl_schedule_node::schedule, schedule, isl_schedule_node::tree, and tree.
Referenced by isl_schedule_get_root(), and isl_schedule_node_dup().
__isl_give isl_schedule_node * isl_schedule_node_domain_gist_params | ( | __isl_take isl_schedule_node * | node, |
__isl_take isl_set * | context | ||
) |
Definition at line 3772 of file isl_schedule_node.c.
References context, domain, isl_schedule_node_free(), isl_schedule_node_graft_tree(), isl_schedule_tree_copy(), isl_schedule_tree_domain_get_domain(), isl_schedule_tree_domain_set_domain(), isl_set_free(), isl_union_set_gist_params(), and tree.
Referenced by isl_schedule_gist_domain_params().
__isl_give isl_schedule_node * isl_schedule_node_domain_intersect_domain | ( | __isl_take isl_schedule_node * | node, |
__isl_take isl_union_set * | domain | ||
) |
Definition at line 3731 of file isl_schedule_node.c.
References domain, isl_schedule_node_child(), isl_schedule_node_free(), isl_schedule_node_gist(), isl_schedule_node_graft_tree(), isl_schedule_node_parent(), isl_schedule_tree_copy(), isl_schedule_tree_domain_get_domain(), isl_schedule_tree_domain_set_domain(), isl_union_set_copy(), isl_union_set_free(), isl_union_set_intersect(), isl_union_set_is_subset(), and tree.
Referenced by isl_schedule_intersect_domain().
__isl_give isl_schedule_node * isl_schedule_node_expand | ( | __isl_take isl_schedule_node * | node, |
__isl_take isl_union_pw_multi_aff * | contraction, | ||
__isl_take isl_union_set * | domain, | ||
__isl_take isl_schedule_tree * | tree | ||
) |
Definition at line 4811 of file isl_schedule_node.c.
References domain, isl_schedule_expand_data::domain, expand(), isl_schedule_node_free(), isl_schedule_node_map_descendant_bottom_up(), isl_schedule_tree_free(), isl_schedule_tree_insert_expansion(), isl_union_map_copy(), isl_union_map_domain(), isl_union_map_from_union_pw_multi_aff(), isl_union_map_intersect_range(), isl_union_map_reverse(), isl_union_pw_multi_aff_copy(), isl_union_set_free(), isl_schedule_expand_data::tree, and tree.
Referenced by isl_schedule_expand().
__isl_give isl_schedule_tree * isl_schedule_node_get_tree | ( | __isl_keep isl_schedule_node * | node | ) |
Definition at line 166 of file isl_schedule_node.c.
References isl_schedule_tree_copy().
Referenced by extension_from_domain(), gist_leave(), graft_extension(), isl_schedule_expand(), isl_schedule_node_align_params(), isl_schedule_node_band_gist(), isl_schedule_node_band_mod(), isl_schedule_node_band_scale(), isl_schedule_node_band_scale_down(), isl_schedule_node_band_shift(), isl_schedule_node_band_sink(), isl_schedule_node_band_split(), isl_schedule_node_band_tile(), isl_schedule_node_delete(), isl_schedule_node_get_subtree_schedule_union_map(), isl_schedule_node_insert_children(), isl_schedule_node_insert_context(), isl_schedule_node_insert_expansion(), isl_schedule_node_insert_extension(), isl_schedule_node_insert_filter(), isl_schedule_node_insert_guard(), isl_schedule_node_insert_mark(), isl_schedule_node_insert_partial_schedule(), isl_schedule_node_order_before_or_after(), isl_schedule_node_pullback_union_pw_multi_aff(), isl_schedule_node_reset_user(), isl_schedule_node_sequence_splice(), and isl_schedule_node_sequence_splice_child().
__isl_give isl_schedule_node * isl_schedule_node_gist | ( | __isl_take isl_schedule_node * | node, |
__isl_take isl_union_set * | context | ||
) |
Definition at line 3711 of file isl_schedule_node.c.
References context, isl_node_gist_data::filters, gist_enter(), gist_leave(), isl_node_gist_data::n_expansion, and traverse().
Referenced by expand(), isl_schedule_node_domain_intersect_domain(), isl_schedule_node_insert_children(), and isl_schedule_node_order_before_or_after().
__isl_give isl_schedule_node * isl_schedule_node_graft_tree | ( | __isl_take isl_schedule_node * | pos, |
__isl_take isl_schedule_tree * | tree | ||
) |
Definition at line 2490 of file isl_schedule_node.c.
References isl_schedule_node_cow(), isl_schedule_node_free(), isl_schedule_tree_free(), pos(), tree, and update_ancestors().
Referenced by expand(), extension_from_domain(), gist_leave(), graft_or_splice(), isl_schedule_node_align_params(), isl_schedule_node_band_gist(), isl_schedule_node_band_member_set_ast_loop_type(), isl_schedule_node_band_member_set_coincident(), isl_schedule_node_band_member_set_isolate_ast_loop_type(), isl_schedule_node_band_mod(), isl_schedule_node_band_scale(), isl_schedule_node_band_scale_down(), isl_schedule_node_band_set_ast_build_options(), isl_schedule_node_band_set_permutable(), isl_schedule_node_band_shift(), isl_schedule_node_band_sink(), isl_schedule_node_band_split(), isl_schedule_node_band_tile(), isl_schedule_node_cut(), isl_schedule_node_delete(), isl_schedule_node_domain_gist_params(), isl_schedule_node_domain_intersect_domain(), isl_schedule_node_expansion_set_contraction_and_expansion(), isl_schedule_node_extension_set_extension(), isl_schedule_node_filter_set_filter(), isl_schedule_node_insert_children(), isl_schedule_node_insert_context(), isl_schedule_node_insert_expansion(), isl_schedule_node_insert_extension(), isl_schedule_node_insert_filter(), isl_schedule_node_insert_guard(), isl_schedule_node_insert_mark(), isl_schedule_node_insert_partial_schedule(), isl_schedule_node_pullback_union_pw_multi_aff(), isl_schedule_node_reset_user(), and isl_schedule_node_sequence_splice().
__isl_give isl_schedule_node * isl_schedule_node_insert_expansion | ( | __isl_take isl_schedule_node * | node, |
__isl_take isl_union_pw_multi_aff * | contraction, | ||
__isl_take isl_union_map * | expansion | ||
) |
Definition at line 2604 of file isl_schedule_node.c.
References check_insert(), isl_schedule_node_free(), isl_schedule_node_get_tree(), isl_schedule_node_graft_tree(), isl_schedule_tree_insert_expansion(), and tree.
Referenced by isl_schedule_node_group().
__isl_give isl_schedule_node * isl_schedule_node_insert_extension | ( | __isl_take isl_schedule_node * | node, |
__isl_take isl_union_map * | extension | ||
) |
Definition at line 2625 of file isl_schedule_node.c.
References isl_schedule_node_get_tree(), isl_schedule_node_graft_tree(), isl_schedule_tree_insert_extension(), and tree.
Referenced by insert_extension().
__isl_give isl_schedule_node * isl_schedule_node_pullback_union_pw_multi_aff | ( | __isl_take isl_schedule_node * | node, |
__isl_take isl_union_pw_multi_aff * | upma | ||
) |
Definition at line 4734 of file isl_schedule_node.c.
References isl_schedule_node_get_tree(), isl_schedule_node_graft_tree(), isl_schedule_tree_pullback_union_pw_multi_aff(), and tree.
Referenced by pullback_upma().