Lines Matching refs:tree
27 __isl_take isl_schedule *schedule, __isl_take isl_schedule_tree *tree, in isl_schedule_node_alloc() argument
36 if (!schedule || !tree || n < 0) in isl_schedule_node_alloc()
46 node->tree = tree; in isl_schedule_node_alloc()
57 isl_schedule_tree_free(tree); in isl_schedule_node_alloc()
86 isl_schedule_tree *tree; in isl_schedule_node_from_extension() local
93 tree = isl_schedule_tree_from_extension(extension); in isl_schedule_node_from_extension()
94 schedule = isl_schedule_from_schedule_tree(ctx, tree); in isl_schedule_node_from_extension()
129 return node ? isl_schedule_tree_get_type(node->tree) in isl_schedule_node_get_type()
172 return isl_schedule_tree_copy(node->tree); in isl_schedule_node_get_tree()
194 isl_schedule_tree_copy(node->tree), in isl_schedule_node_dup()
238 isl_schedule_tree_free(node->tree); in isl_schedule_node_free()
293 isl_schedule_tree *tree; in isl_schedule_node_get_schedule_depth() local
296 tree = isl_schedule_tree_list_get_schedule_tree( in isl_schedule_node_get_schedule_depth()
298 if (!tree) in isl_schedule_node_get_schedule_depth()
301 if (tree->type == isl_schedule_node_band) in isl_schedule_node_get_schedule_depth()
302 n = isl_schedule_tree_band_n_member(tree); in isl_schedule_node_get_schedule_depth()
304 isl_schedule_tree_free(tree); in isl_schedule_node_get_schedule_depth()
346 __isl_take isl_schedule_tree *tree, in collect_filter_prefix_expansion() argument
355 c = isl_schedule_tree_expansion_get_contraction(tree); in collect_filter_prefix_expansion()
356 exp = isl_schedule_tree_expansion_get_expansion(tree); in collect_filter_prefix_expansion()
397 isl_schedule_tree_free(tree); in collect_filter_prefix_expansion()
411 __isl_take isl_schedule_tree *tree, in collect_universe_domain_extension() argument
429 extension = isl_schedule_tree_extension_get_extension(tree); in collect_universe_domain_extension()
439 isl_schedule_tree_free(tree); in collect_universe_domain_extension()
459 static isl_stat collect_filter_prefix_init(__isl_keep isl_schedule_tree *tree, in collect_filter_prefix_init() argument
467 type = isl_schedule_tree_get_type(tree); in collect_filter_prefix_init()
472 isl_die(isl_schedule_tree_get_ctx(tree), isl_error_internal, in collect_filter_prefix_init()
475 isl_die(isl_schedule_tree_get_ctx(tree), isl_error_invalid, in collect_filter_prefix_init()
485 filter = isl_schedule_tree_domain_get_domain(tree); in collect_filter_prefix_init()
491 n = isl_schedule_tree_band_n_member(tree); in collect_filter_prefix_init()
496 mupa = isl_schedule_tree_band_get_partial_schedule(tree); in collect_filter_prefix_init()
508 filter = isl_schedule_tree_filter_get_filter(tree); in collect_filter_prefix_init()
537 static isl_stat collect_filter_prefix_update(__isl_keep isl_schedule_tree *tree, in collect_filter_prefix_update() argument
547 type = isl_schedule_tree_get_type(tree); in collect_filter_prefix_update()
552 isl_die(isl_schedule_tree_get_ctx(tree), isl_error_internal, in collect_filter_prefix_update()
555 extension = isl_schedule_tree_extension_get_extension(tree); in collect_filter_prefix_update()
564 isl_die(isl_schedule_tree_get_ctx(tree), isl_error_invalid, in collect_filter_prefix_update()
576 filter = isl_schedule_tree_domain_get_domain(tree); in collect_filter_prefix_update()
580 n = isl_schedule_tree_band_n_member(tree); in collect_filter_prefix_update()
587 mupa = isl_schedule_tree_band_get_partial_schedule(tree); in collect_filter_prefix_update()
594 filter = isl_schedule_tree_filter_get_filter(tree); in collect_filter_prefix_update()
641 isl_schedule_tree *tree; in collect_filter_prefix() local
645 tree = isl_schedule_tree_list_get_schedule_tree(list, i); in collect_filter_prefix()
646 if (!tree) in collect_filter_prefix()
648 type = isl_schedule_tree_get_type(tree); in collect_filter_prefix()
650 return collect_filter_prefix_expansion(tree, list, i, in collect_filter_prefix()
654 return collect_universe_domain_extension(tree, list, i, in collect_filter_prefix()
657 r = collect_filter_prefix_init(tree, data); in collect_filter_prefix()
659 r = collect_filter_prefix_update(tree, data); in collect_filter_prefix()
660 isl_schedule_tree_free(tree); in collect_filter_prefix()
695 if (node->tree == node->schedule->root) in isl_schedule_node_get_prefix_schedule_multi_union_pw_aff()
747 if (node->tree == node->schedule->root) in isl_schedule_node_get_prefix_schedule_union_pw_multi_aff()
814 if (node->tree == node->schedule->root) in isl_schedule_node_get_prefix_schedule_relation()
864 if (node->tree == node->schedule->root) { in isl_schedule_node_get_domain()
903 if (node->tree == node->schedule->root) { in isl_schedule_node_get_universe_domain()
938 isl_schedule_tree *tree, *leaf; in isl_schedule_node_get_subtree_schedule_union_map() local
941 tree = isl_schedule_node_get_tree(node); in isl_schedule_node_get_subtree_schedule_union_map()
943 tree = isl_schedule_tree_first_schedule_descendant(tree, leaf); in isl_schedule_node_get_subtree_schedule_union_map()
944 if (!tree) in isl_schedule_node_get_subtree_schedule_union_map()
946 if (tree == leaf) { in isl_schedule_node_get_subtree_schedule_union_map()
949 isl_schedule_tree_free(tree); in isl_schedule_node_get_subtree_schedule_union_map()
953 umap = isl_schedule_tree_get_subtree_schedule_union_map(tree); in isl_schedule_node_get_subtree_schedule_union_map()
954 isl_schedule_tree_free(tree); in isl_schedule_node_get_subtree_schedule_union_map()
1031 isl_schedule_tree *tree; in isl_schedule_node_has_next_sibling() local
1042 tree = isl_schedule_tree_list_get_schedule_tree(node->ancestors, n - 1); in isl_schedule_node_has_next_sibling()
1043 n_child = isl_schedule_tree_n_children(tree); in isl_schedule_node_has_next_sibling()
1044 isl_schedule_tree_free(tree); in isl_schedule_node_has_next_sibling()
1061 return isl_bool_ok(!isl_schedule_tree_is_leaf(node->tree)); in isl_schedule_node_has_children()
1081 if (isl_schedule_tree_is_leaf(node->tree)) in isl_schedule_node_n_children()
1084 n = isl_schedule_tree_n_children(node->tree); in isl_schedule_node_n_children()
1101 isl_schedule_tree *tree; in isl_schedule_node_ancestor() local
1118 tree = isl_schedule_tree_list_get_schedule_tree(node->ancestors, in isl_schedule_node_ancestor()
1120 isl_schedule_tree_free(node->tree); in isl_schedule_node_ancestor()
1121 node->tree = tree; in isl_schedule_node_ancestor()
1124 if (!node->ancestors || !node->tree) in isl_schedule_node_ancestor()
1167 isl_schedule_tree *tree; in isl_schedule_node_child() local
1189 isl_schedule_tree_copy(node->tree)); in isl_schedule_node_child()
1190 tree = node->tree; in isl_schedule_node_child()
1191 if (isl_schedule_tree_has_children(tree)) in isl_schedule_node_child()
1192 tree = isl_schedule_tree_get_child(tree, pos); in isl_schedule_node_child()
1194 tree = isl_schedule_node_get_leaf(node); in isl_schedule_node_child()
1195 isl_schedule_tree_free(node->tree); in isl_schedule_node_child()
1196 node->tree = tree; in isl_schedule_node_child()
1198 if (!node->tree || !node->ancestors) in isl_schedule_node_child()
1220 isl_schedule_tree *parent, *tree; in isl_schedule_node_previous_sibling() local
1238 tree = isl_schedule_tree_list_get_schedule_tree(parent->children, in isl_schedule_node_previous_sibling()
1241 if (!tree) in isl_schedule_node_previous_sibling()
1243 isl_schedule_tree_free(node->tree); in isl_schedule_node_previous_sibling()
1244 node->tree = tree; in isl_schedule_node_previous_sibling()
1256 isl_schedule_tree *parent, *tree; in isl_schedule_node_next_sibling() local
1274 tree = isl_schedule_tree_list_get_schedule_tree(parent->children, in isl_schedule_node_next_sibling()
1277 if (!tree) in isl_schedule_node_next_sibling()
1279 isl_schedule_tree_free(node->tree); in isl_schedule_node_next_sibling()
1280 node->tree = tree; in isl_schedule_node_next_sibling()
1559 return isl_schedule_tree_is_subtree_anchored(node->tree); in isl_schedule_node_is_subtree_anchored()
1568 return isl_schedule_tree_band_n_member(node->tree); in isl_schedule_node_band_n_member()
1579 return isl_schedule_tree_band_member_get_coincident(node->tree, pos); in isl_schedule_node_band_member_get_coincident()
1589 isl_schedule_tree *tree; in isl_schedule_node_band_member_set_coincident() local
1597 tree = isl_schedule_tree_copy(node->tree); in isl_schedule_node_band_member_set_coincident()
1598 tree = isl_schedule_tree_band_member_set_coincident(tree, pos, in isl_schedule_node_band_member_set_coincident()
1600 node = isl_schedule_node_graft_tree(node, tree); in isl_schedule_node_band_member_set_coincident()
1613 return isl_schedule_tree_band_get_permutable(node->tree); in isl_schedule_node_band_get_permutable()
1621 isl_schedule_tree *tree; in isl_schedule_node_band_set_permutable() local
1628 tree = isl_schedule_tree_copy(node->tree); in isl_schedule_node_band_set_permutable()
1629 tree = isl_schedule_tree_band_set_permutable(tree, permutable); in isl_schedule_node_band_set_permutable()
1630 node = isl_schedule_node_graft_tree(node, tree); in isl_schedule_node_band_set_permutable()
1643 return isl_schedule_tree_band_get_space(node->tree); in isl_schedule_node_band_get_space()
1654 return isl_schedule_tree_band_get_partial_schedule(node->tree); in isl_schedule_node_band_get_partial_schedule()
1700 return isl_schedule_tree_band_member_get_ast_loop_type(node->tree, pos); in isl_schedule_node_band_member_get_ast_loop_type()
1710 isl_schedule_tree *tree; in isl_schedule_node_band_member_set_ast_loop_type() local
1715 tree = isl_schedule_tree_copy(node->tree); in isl_schedule_node_band_member_set_ast_loop_type()
1716 tree = isl_schedule_tree_band_member_set_ast_loop_type(tree, pos, type); in isl_schedule_node_band_member_set_ast_loop_type()
1717 return isl_schedule_node_graft_tree(node, tree); in isl_schedule_node_band_member_set_ast_loop_type()
1730 node->tree, pos); in isl_schedule_node_band_member_get_isolate_ast_loop_type()
1741 isl_schedule_tree *tree; in isl_schedule_node_band_member_set_isolate_ast_loop_type() local
1746 tree = isl_schedule_tree_copy(node->tree); in isl_schedule_node_band_member_set_isolate_ast_loop_type()
1747 tree = isl_schedule_tree_band_member_set_isolate_ast_loop_type(tree, in isl_schedule_node_band_member_set_isolate_ast_loop_type()
1749 return isl_schedule_node_graft_tree(node, tree); in isl_schedule_node_band_member_set_isolate_ast_loop_type()
1760 return isl_schedule_tree_band_get_ast_build_options(node->tree); in isl_schedule_node_band_get_ast_build_options()
1768 isl_schedule_tree *tree; in isl_schedule_node_band_set_ast_build_options() local
1773 tree = isl_schedule_tree_copy(node->tree); in isl_schedule_node_band_set_ast_build_options()
1774 tree = isl_schedule_tree_band_set_ast_build_options(tree, options); in isl_schedule_node_band_set_ast_build_options()
1775 return isl_schedule_node_graft_tree(node, tree); in isl_schedule_node_band_set_ast_build_options()
1793 return isl_schedule_tree_band_get_ast_isolate_option(node->tree, depth); in isl_schedule_node_band_get_ast_isolate_option()
1826 isl_schedule_tree *tree; in isl_schedule_node_band_scale() local
1841 tree = isl_schedule_node_get_tree(node); in isl_schedule_node_band_scale()
1842 tree = isl_schedule_tree_band_scale(tree, mv); in isl_schedule_node_band_scale()
1843 return isl_schedule_node_graft_tree(node, tree); in isl_schedule_node_band_scale()
1856 isl_schedule_tree *tree; in isl_schedule_node_band_scale_down() local
1871 tree = isl_schedule_node_get_tree(node); in isl_schedule_node_band_scale_down()
1872 tree = isl_schedule_tree_band_scale_down(tree, mv); in isl_schedule_node_band_scale_down()
1873 return isl_schedule_node_graft_tree(node, tree); in isl_schedule_node_band_scale_down()
1886 isl_schedule_tree *tree; in isl_schedule_node_band_mod() local
1901 tree = isl_schedule_node_get_tree(node); in isl_schedule_node_band_mod()
1902 tree = isl_schedule_tree_band_mod(tree, mv); in isl_schedule_node_band_mod()
1903 return isl_schedule_node_graft_tree(node, tree); in isl_schedule_node_band_mod()
1941 isl_schedule_tree *tree; in isl_schedule_node_band_shift() local
1956 tree = isl_schedule_node_get_tree(node); in isl_schedule_node_band_shift()
1957 tree = isl_schedule_tree_band_shift(tree, shift); in isl_schedule_node_band_shift()
1958 return isl_schedule_node_graft_tree(node, tree); in isl_schedule_node_band_shift()
1991 isl_schedule_tree *tree; in isl_schedule_node_band_tile() local
2007 tree = isl_schedule_node_get_tree(node); in isl_schedule_node_band_tile()
2008 tree = isl_schedule_tree_band_tile(tree, sizes); in isl_schedule_node_band_tile()
2009 return isl_schedule_node_graft_tree(node, tree); in isl_schedule_node_band_tile()
2036 isl_schedule_tree *tree, *child; in isl_schedule_node_band_sink() local
2055 n = isl_schedule_tree_n_children(node->tree); in isl_schedule_node_band_sink()
2063 tree = isl_schedule_node_get_tree(node); in isl_schedule_node_band_sink()
2064 child = isl_schedule_tree_get_child(tree, 0); in isl_schedule_node_band_sink()
2065 tree = isl_schedule_tree_reset_children(tree); in isl_schedule_node_band_sink()
2066 tree = isl_schedule_tree_pullback_union_pw_multi_aff(tree, contraction); in isl_schedule_node_band_sink()
2067 tree = isl_schedule_tree_append_to_leaves(child, tree); in isl_schedule_node_band_sink()
2069 return isl_schedule_node_graft_tree(node, tree); in isl_schedule_node_band_sink()
2082 isl_schedule_tree *tree; in isl_schedule_node_band_split() local
2087 tree = isl_schedule_node_get_tree(node); in isl_schedule_node_band_split()
2088 tree = isl_schedule_tree_band_split(tree, pos, depth); in isl_schedule_node_band_split()
2089 return isl_schedule_node_graft_tree(node, tree); in isl_schedule_node_band_split()
2100 return isl_schedule_tree_context_get_context(node->tree); in isl_schedule_node_context_get_context()
2111 return isl_schedule_tree_domain_get_domain(node->tree); in isl_schedule_node_domain_get_domain()
2122 return isl_schedule_tree_expansion_get_expansion(node->tree); in isl_schedule_node_expansion_get_expansion()
2133 return isl_schedule_tree_expansion_get_contraction(node->tree); in isl_schedule_node_expansion_get_contraction()
2145 isl_schedule_tree *tree; in isl_schedule_node_expansion_set_contraction_and_expansion() local
2150 tree = isl_schedule_tree_copy(node->tree); in isl_schedule_node_expansion_set_contraction_and_expansion()
2151 tree = isl_schedule_tree_expansion_set_contraction_and_expansion(tree, in isl_schedule_node_expansion_set_contraction_and_expansion()
2153 return isl_schedule_node_graft_tree(node, tree); in isl_schedule_node_expansion_set_contraction_and_expansion()
2169 return isl_schedule_tree_extension_get_extension(node->tree); in isl_schedule_node_extension_get_extension()
2177 isl_schedule_tree *tree; in isl_schedule_node_extension_set_extension() local
2182 tree = isl_schedule_tree_copy(node->tree); in isl_schedule_node_extension_set_extension()
2183 tree = isl_schedule_tree_extension_set_extension(tree, extension); in isl_schedule_node_extension_set_extension()
2184 return isl_schedule_node_graft_tree(node, tree); in isl_schedule_node_extension_set_extension()
2199 return isl_schedule_tree_filter_get_filter(node->tree); in isl_schedule_node_filter_get_filter()
2207 isl_schedule_tree *tree; in isl_schedule_node_filter_set_filter() local
2212 tree = isl_schedule_tree_copy(node->tree); in isl_schedule_node_filter_set_filter()
2213 tree = isl_schedule_tree_filter_set_filter(tree, filter); in isl_schedule_node_filter_set_filter()
2214 return isl_schedule_node_graft_tree(node, tree); in isl_schedule_node_filter_set_filter()
2262 return isl_schedule_tree_guard_get_guard(node->tree); in isl_schedule_node_guard_get_guard()
2273 return isl_schedule_tree_mark_get_id(node->tree); in isl_schedule_node_mark_get_id()
2281 __isl_take isl_schedule_tree *tree) in isl_schedule_node_sequence_splice() argument
2285 if (!node || !tree) in isl_schedule_node_sequence_splice()
2290 if (isl_schedule_tree_get_type(tree) != isl_schedule_node_sequence) in isl_schedule_node_sequence_splice()
2294 node_tree = isl_schedule_tree_sequence_splice(node_tree, pos, tree); in isl_schedule_node_sequence_splice()
2300 isl_schedule_tree_free(tree); in isl_schedule_node_sequence_splice()
2318 isl_schedule_tree *tree; in isl_schedule_node_sequence_splice_child() local
2345 tree = isl_schedule_node_get_tree(child); in isl_schedule_node_sequence_splice_child()
2348 node = isl_schedule_node_sequence_splice(node, pos, tree); in isl_schedule_node_sequence_splice_child()
2370 __isl_give isl_schedule_tree *(*fn)(__isl_take isl_schedule_tree *tree, in update_ancestors() argument
2376 isl_schedule_tree *tree; in update_ancestors() local
2389 tree = isl_schedule_tree_copy(node->tree); in update_ancestors()
2397 node->child_pos[i], tree); in update_ancestors()
2405 tree = parent; in update_ancestors()
2411 is_leaf = isl_schedule_tree_is_leaf(node->tree); in update_ancestors()
2412 node->schedule = isl_schedule_set_root(node->schedule, tree); in update_ancestors()
2414 isl_schedule_tree_free(node->tree); in update_ancestors()
2415 node->tree = isl_schedule_node_get_leaf(node); in update_ancestors()
2428 __isl_take isl_schedule_node *pos, __isl_take isl_schedule_tree *tree) in isl_schedule_node_graft_tree() argument
2430 if (!tree || !pos) in isl_schedule_node_graft_tree()
2432 if (pos->tree == tree) { in isl_schedule_node_graft_tree()
2433 isl_schedule_tree_free(tree); in isl_schedule_node_graft_tree()
2441 isl_schedule_tree_free(pos->tree); in isl_schedule_node_graft_tree()
2442 pos->tree = tree; in isl_schedule_node_graft_tree()
2447 isl_schedule_tree_free(tree); in isl_schedule_node_graft_tree()
2490 isl_schedule_tree *tree; in isl_schedule_node_insert_partial_schedule() local
2502 tree = isl_schedule_node_get_tree(node); in isl_schedule_node_insert_partial_schedule()
2504 tree = isl_schedule_tree_insert_band(tree, band); in isl_schedule_node_insert_partial_schedule()
2505 node = isl_schedule_node_graft_tree(node, tree); in isl_schedule_node_insert_partial_schedule()
2520 isl_schedule_tree *tree; in isl_schedule_node_insert_context() local
2525 tree = isl_schedule_node_get_tree(node); in isl_schedule_node_insert_context()
2526 tree = isl_schedule_tree_insert_context(tree, context); in isl_schedule_node_insert_context()
2527 node = isl_schedule_node_graft_tree(node, tree); in isl_schedule_node_insert_context()
2546 isl_schedule_tree *tree; in isl_schedule_node_insert_expansion() local
2551 tree = isl_schedule_node_get_tree(node); in isl_schedule_node_insert_expansion()
2552 tree = isl_schedule_tree_insert_expansion(tree, contraction, expansion); in isl_schedule_node_insert_expansion()
2553 node = isl_schedule_node_graft_tree(node, tree); in isl_schedule_node_insert_expansion()
2566 isl_schedule_tree *tree; in isl_schedule_node_insert_extension() local
2568 tree = isl_schedule_node_get_tree(node); in isl_schedule_node_insert_extension()
2569 tree = isl_schedule_tree_insert_extension(tree, extension); in isl_schedule_node_insert_extension()
2570 node = isl_schedule_node_graft_tree(node, tree); in isl_schedule_node_insert_extension()
2581 isl_schedule_tree *tree; in isl_schedule_node_insert_filter() local
2586 tree = isl_schedule_node_get_tree(node); in isl_schedule_node_insert_filter()
2587 tree = isl_schedule_tree_insert_filter(tree, filter); in isl_schedule_node_insert_filter()
2588 node = isl_schedule_node_graft_tree(node, tree); in isl_schedule_node_insert_filter()
2599 isl_schedule_tree *tree; in isl_schedule_node_insert_guard() local
2604 tree = isl_schedule_node_get_tree(node); in isl_schedule_node_insert_guard()
2605 tree = isl_schedule_tree_insert_guard(tree, guard); in isl_schedule_node_insert_guard()
2606 node = isl_schedule_node_graft_tree(node, tree); in isl_schedule_node_insert_guard()
2618 isl_schedule_tree *tree; in isl_schedule_node_insert_mark() local
2623 tree = isl_schedule_node_get_tree(node); in isl_schedule_node_insert_mark()
2624 tree = isl_schedule_tree_insert_mark(tree, mark); in isl_schedule_node_insert_mark()
2625 node = isl_schedule_node_graft_tree(node, tree); in isl_schedule_node_insert_mark()
2645 isl_schedule_tree *tree; in isl_schedule_node_insert_children() local
2659 isl_schedule_tree *tree; in isl_schedule_node_insert_children() local
2666 tree = isl_schedule_node_get_tree(node_i); in isl_schedule_node_insert_children()
2668 tree = isl_schedule_tree_insert_filter(tree, filter); in isl_schedule_node_insert_children()
2669 list = isl_schedule_tree_list_add(list, tree); in isl_schedule_node_insert_children()
2671 tree = isl_schedule_tree_from_children(type, list); in isl_schedule_node_insert_children()
2672 node = isl_schedule_node_graft_tree(node, tree); in isl_schedule_node_insert_children()
2749 isl_schedule_tree *tree; in isl_schedule_node_delete() local
2783 tree = isl_schedule_node_get_tree(node); in isl_schedule_node_delete()
2784 if (!tree || isl_schedule_tree_has_children(tree)) { in isl_schedule_node_delete()
2785 tree = isl_schedule_tree_child(tree, 0); in isl_schedule_node_delete()
2787 isl_schedule_tree_free(tree); in isl_schedule_node_delete()
2788 tree = isl_schedule_node_get_leaf(node); in isl_schedule_node_delete()
2790 node = isl_schedule_node_graft_tree(node, tree); in isl_schedule_node_delete()
2860 __isl_take isl_schedule_tree *tree, __isl_keep isl_schedule_node *pos, in group_band() argument
2876 tree = isl_schedule_tree_band_intersect_domain(tree, domain); in group_band()
2880 return isl_schedule_tree_free(tree); in group_band()
2882 n = isl_schedule_tree_band_n_member(tree); in group_band()
2884 return isl_schedule_tree_free(tree); in group_band()
2889 partial = isl_schedule_tree_band_get_partial_schedule(tree); in group_band()
2900 tree = isl_schedule_tree_band_set_partial_schedule(tree, partial); in group_band()
2902 return tree; in group_band()
2932 __isl_take isl_schedule_tree *tree, __isl_keep isl_schedule_node *pos, in group_context() argument
2943 return isl_schedule_tree_free(tree); in group_context()
2945 return tree; in group_context()
2956 return isl_schedule_tree_free(tree); in group_context()
2958 return tree; in group_context()
2963 return isl_schedule_tree_free(tree); in group_context()
2967 return isl_schedule_tree_free(tree)); in group_context()
2999 return tree; in group_context()
3012 __isl_take isl_schedule_tree *tree, __isl_keep isl_schedule_node *pos, in group_domain() argument
3018 domain = isl_schedule_tree_domain_get_domain(tree); in group_domain()
3022 return isl_schedule_tree_free(tree); in group_domain()
3024 isl_die(isl_schedule_tree_get_ctx(tree), isl_error_internal, in group_domain()
3026 return isl_schedule_tree_free(tree)); in group_domain()
3027 domain = isl_schedule_tree_domain_get_domain(tree); in group_domain()
3031 tree = isl_schedule_tree_domain_set_domain(tree, domain); in group_domain()
3033 return tree; in group_domain()
3051 __isl_take isl_schedule_tree *tree, __isl_keep isl_schedule_node *pos, in group_expansion() argument
3059 expansion = isl_schedule_tree_expansion_get_expansion(tree); in group_expansion()
3064 return isl_schedule_tree_free(tree); in group_expansion()
3066 isl_die(isl_schedule_tree_get_ctx(tree), isl_error_internal, in group_expansion()
3069 return isl_schedule_tree_free(tree)); in group_expansion()
3070 expansion = isl_schedule_tree_expansion_get_expansion(tree); in group_expansion()
3074 expansion = isl_schedule_tree_expansion_get_expansion(tree); in group_expansion()
3080 contraction = isl_schedule_tree_expansion_get_contraction(tree); in group_expansion()
3085 contraction = isl_schedule_tree_expansion_get_contraction(tree); in group_expansion()
3092 tree = isl_schedule_tree_expansion_set_contraction_and_expansion(tree, in group_expansion()
3095 return tree; in group_expansion()
3114 __isl_take isl_schedule_tree *tree, __isl_keep isl_schedule_node *pos, in group_ancestor() argument
3121 if (!tree || !pos) in group_ancestor()
3122 return isl_schedule_tree_free(tree); in group_ancestor()
3125 return tree; in group_ancestor()
3127 switch (isl_schedule_tree_get_type(tree)) { in group_ancestor()
3129 return isl_schedule_tree_free(tree); in group_ancestor()
3131 isl_die(isl_schedule_tree_get_ctx(tree), isl_error_unsupported, in group_ancestor()
3133 return isl_schedule_tree_free(tree)); in group_ancestor()
3135 tree = group_band(tree, pos, data); in group_ancestor()
3138 tree = group_context(tree, pos, data); in group_ancestor()
3141 tree = group_domain(tree, pos, data); in group_ancestor()
3149 return isl_schedule_tree_free(tree); in group_ancestor()
3150 domain = isl_schedule_tree_filter_get_filter(tree); in group_ancestor()
3156 tree = isl_schedule_tree_filter_set_filter(tree, domain); in group_ancestor()
3159 tree = group_expansion(tree, pos, data); in group_ancestor()
3170 return tree; in group_ancestor()
3293 isl_schedule_tree *tree; in isl_schedule_node_band_gist() local
3295 tree = isl_schedule_node_get_tree(node); in isl_schedule_node_band_gist()
3296 tree = isl_schedule_tree_band_gist(tree, context); in isl_schedule_node_band_gist()
3297 return isl_schedule_node_graft_tree(node, tree); in isl_schedule_node_band_gist()
3560 isl_schedule_tree *tree; in gist_leave() local
3588 tree = isl_schedule_node_get_tree(node); in gist_leave()
3589 n = isl_schedule_tree_n_children(tree); in gist_leave()
3591 tree = isl_schedule_tree_free(tree); in gist_leave()
3597 child = isl_schedule_tree_get_child(tree, i); in gist_leave()
3603 tree = isl_schedule_tree_free(tree); in gist_leave()
3605 tree = isl_schedule_tree_drop_child(tree, i); in gist_leave()
3607 n = isl_schedule_tree_n_children(tree); in gist_leave()
3609 tree = isl_schedule_tree_free(tree); in gist_leave()
3610 node = isl_schedule_node_graft_tree(node, tree); in gist_leave()
3671 isl_schedule_tree *tree; in isl_schedule_node_domain_intersect_domain() local
3678 uset = isl_schedule_tree_domain_get_domain(node->tree); in isl_schedule_node_domain_intersect_domain()
3688 tree = isl_schedule_tree_copy(node->tree); in isl_schedule_node_domain_intersect_domain()
3689 uset = isl_schedule_tree_domain_get_domain(tree); in isl_schedule_node_domain_intersect_domain()
3691 tree = isl_schedule_tree_domain_set_domain(tree, in isl_schedule_node_domain_intersect_domain()
3693 node = isl_schedule_node_graft_tree(node, tree); in isl_schedule_node_domain_intersect_domain()
3713 isl_schedule_tree *tree; in isl_schedule_node_domain_gist_params() local
3718 tree = isl_schedule_tree_copy(node->tree); in isl_schedule_node_domain_gist_params()
3719 domain = isl_schedule_tree_domain_get_domain(node->tree); in isl_schedule_node_domain_gist_params()
3721 tree = isl_schedule_tree_domain_set_domain(tree, domain); in isl_schedule_node_domain_gist_params()
3722 node = isl_schedule_node_graft_tree(node, tree); in isl_schedule_node_domain_gist_params()
4132 isl_schedule_tree *tree; in has_ancestors() local
4135 tree = isl_schedule_tree_list_get_schedule_tree(node->ancestors, in has_ancestors()
4137 if (!tree) in has_ancestors()
4139 correct_type = isl_schedule_tree_get_type(tree) == types[i]; in has_ancestors()
4140 isl_schedule_tree_free(tree); in has_ancestors()
4314 __isl_take isl_schedule_node *node, __isl_take isl_schedule_tree *tree, in graft_or_splice() argument
4325 node = isl_schedule_node_sequence_splice(node, pos, tree); in graft_or_splice()
4328 node = isl_schedule_node_graft_tree(node, tree); in graft_or_splice()
4359 isl_schedule_tree *tree, *tree_graft; in graft_extension() local
4370 tree = isl_schedule_node_get_tree(node); in graft_extension()
4380 tree = isl_schedule_tree_sequence_pair(tree_graft, tree); in graft_extension()
4382 tree = isl_schedule_tree_sequence_pair(tree, tree_graft); in graft_extension()
4383 node = graft_or_splice(node, tree, before); in graft_extension()
4406 isl_schedule_tree *tree; in extension_from_domain() local
4427 if (!isl_schedule_tree_is_leaf(node->tree)) { in extension_from_domain()
4428 tree = isl_schedule_node_get_tree(node); in extension_from_domain()
4430 res = isl_schedule_node_graft_tree(res, tree); in extension_from_domain()
4642 isl_schedule_tree *tree; in isl_schedule_node_reset_user() local
4644 tree = isl_schedule_node_get_tree(node); in isl_schedule_node_reset_user()
4645 tree = isl_schedule_tree_reset_user(tree); in isl_schedule_node_reset_user()
4646 node = isl_schedule_node_graft_tree(node, tree); in isl_schedule_node_reset_user()
4656 isl_schedule_tree *tree; in isl_schedule_node_align_params() local
4658 tree = isl_schedule_node_get_tree(node); in isl_schedule_node_align_params()
4659 tree = isl_schedule_tree_align_params(tree, space); in isl_schedule_node_align_params()
4660 node = isl_schedule_node_graft_tree(node, tree); in isl_schedule_node_align_params()
4680 isl_schedule_tree *tree; in isl_schedule_node_pullback_union_pw_multi_aff() local
4682 tree = isl_schedule_node_get_tree(node); in isl_schedule_node_pullback_union_pw_multi_aff()
4683 tree = isl_schedule_tree_pullback_union_pw_multi_aff(tree, upma); in isl_schedule_node_pullback_union_pw_multi_aff()
4684 node = isl_schedule_node_graft_tree(node, tree); in isl_schedule_node_pullback_union_pw_multi_aff()
4695 isl_schedule_tree *tree; member
4712 isl_schedule_tree *tree, *leaf; in expand() local
4720 tree = isl_schedule_tree_copy(data->tree); in expand()
4729 tree = isl_schedule_tree_insert_filter(tree, left); in expand()
4730 tree = isl_schedule_tree_set_pair(tree, leaf); in expand()
4737 node = isl_schedule_node_graft_tree(node, tree); in expand()
4757 __isl_take isl_schedule_tree *tree) in isl_schedule_node_expand() argument
4763 if (!node || !contraction || !tree) in isl_schedule_node_expand()
4772 tree = isl_schedule_tree_insert_expansion(tree, contraction, expansion); in isl_schedule_node_expand()
4773 data.tree = tree; in isl_schedule_node_expand()
4777 isl_schedule_tree_free(data.tree); in isl_schedule_node_expand()
4792 isl_schedule_tree *tree; in isl_schedule_node_get_ancestor_child_position() local
4806 tree = isl_schedule_tree_list_get_schedule_tree(node->ancestors, n1); in isl_schedule_node_get_ancestor_child_position()
4807 isl_schedule_tree_free(tree); in isl_schedule_node_get_ancestor_child_position()
4808 if (tree != ancestor->tree) in isl_schedule_node_get_ancestor_child_position()