Polly 20.0.0git
|
Go to the source code of this file.
Classes | |
struct | isl_schedule_band |
Typedefs | |
typedef struct isl_schedule_band | isl_schedule_band |
typedef struct isl_schedule_band isl_schedule_band |
Definition at line 43 of file isl_schedule_band.h.
__isl_give isl_schedule_band * isl_schedule_band_align_params | ( | __isl_take isl_schedule_band * | band, |
__isl_take isl_space * | space | ||
) |
Definition at line 1242 of file isl_schedule_band.c.
References isl_schedule_band_cow(), isl_schedule_band_free(), isl_space_copy(), isl_space_free(), and isl_union_set_align_params().
Referenced by isl_schedule_tree_align_params().
__isl_give isl_schedule_band * isl_schedule_band_copy | ( | __isl_keep isl_schedule_band * | band | ) |
Definition at line 149 of file isl_schedule_band.c.
References isl_schedule_band::ref.
Referenced by isl_schedule_tree_dup().
__isl_give isl_schedule_band * isl_schedule_band_drop | ( | __isl_take isl_schedule_band * | band, |
int | pos, | ||
int | n | ||
) |
Definition at line 1187 of file isl_schedule_band.c.
References if(), isl_die, isl_dim_set, isl_error_internal, isl_schedule_band_cow(), isl_schedule_band_free(), isl_schedule_band_get_ctx(), n, and pos().
Referenced by isl_schedule_tree_band_split().
__isl_null isl_schedule_band * isl_schedule_band_free | ( | __isl_take isl_schedule_band * | band | ) |
Definition at line 161 of file isl_schedule_band.c.
References isl_union_set_free().
Referenced by isl_schedule_band_align_params(), isl_schedule_band_drop(), isl_schedule_band_dup(), isl_schedule_band_from_multi_union_pw_aff(), isl_schedule_band_gist(), isl_schedule_band_intersect_domain(), isl_schedule_band_member_set_ast_loop_type(), isl_schedule_band_member_set_coincident(), isl_schedule_band_member_set_isolate_ast_loop_type(), isl_schedule_band_mod(), isl_schedule_band_point(), isl_schedule_band_pullback_union_pw_multi_aff(), isl_schedule_band_replace_ast_build_option(), isl_schedule_band_reset_user(), isl_schedule_band_scale(), isl_schedule_band_scale_down(), isl_schedule_band_set_ast_build_options(), isl_schedule_band_set_partial_schedule(), isl_schedule_band_shift(), isl_schedule_band_tile(), isl_schedule_tree_free(), isl_schedule_tree_from_band(), and set_coincident().
__isl_give isl_schedule_band * isl_schedule_band_from_multi_union_pw_aff | ( | __isl_take isl_multi_union_pw_aff * | mupa | ) |
Definition at line 48 of file isl_schedule_band.c.
References isl_schedule_band::anchored, isl_schedule_band::ast_build_options, isl_schedule_band::coincident, isl_calloc_array, isl_multi_union_pw_aff_floor(), isl_schedule_band_alloc(), isl_schedule_band_free(), isl_space_params_alloc(), isl_union_set_empty(), isl_schedule_band::mupa, mupa, and isl_schedule_band::n.
Referenced by isl_schedule_node_insert_partial_schedule(), and read_band().
__isl_give isl_union_set * isl_schedule_band_get_ast_build_options | ( | __isl_keep isl_schedule_band * | band | ) |
Definition at line 561 of file isl_schedule_band.c.
References add_loop_types(), and isl_union_set_copy().
Referenced by isl_schedule_tree_band_get_ast_build_options(), and print_tree_band().
__isl_give isl_set * isl_schedule_band_get_ast_isolate_option | ( | __isl_keep isl_schedule_band * | band, |
int | depth | ||
) |
Definition at line 923 of file isl_schedule_band.c.
References isl_dim_in, isl_dim_set, isl_schedule_band_get_space(), isl_space_add_dims(), isl_space_from_range(), isl_space_set_tuple_name(), isl_space_wrap(), isl_union_set_extract_set(), and isolate().
Referenced by isl_schedule_tree_band_get_ast_isolate_option().
isl_ctx * isl_schedule_band_get_ctx | ( | __isl_keep isl_schedule_band * | band | ) |
Definition at line 21 of file isl_schedule_band.c.
Referenced by extract_isolate_loop_types(), extract_loop_types(), isl_schedule_band_drop(), isl_schedule_band_dup(), isl_schedule_band_member_get_ast_loop_type(), isl_schedule_band_member_get_coincident(), isl_schedule_band_member_get_isolate_ast_loop_type(), isl_schedule_band_member_set_ast_loop_type(), isl_schedule_band_member_set_coincident(), isl_schedule_band_member_set_isolate_ast_loop_type(), isl_schedule_band_point(), isl_schedule_band_shift(), and isl_schedule_tree_from_band().
__isl_give isl_multi_union_pw_aff * isl_schedule_band_get_partial_schedule | ( | __isl_keep isl_schedule_band * | band | ) |
Definition at line 339 of file isl_schedule_band.c.
Referenced by initial_domain(), isl_schedule_band_point(), isl_schedule_tree_band_get_partial_schedule(), and subtree_schedule_extend().
isl_bool isl_schedule_band_get_permutable | ( | __isl_keep isl_schedule_band * | band | ) |
Definition at line 273 of file isl_schedule_band.c.
References isl_bool_error, and isl_bool_ok().
Referenced by isl_schedule_tree_band_get_permutable(), and print_tree_band().
__isl_give isl_space * isl_schedule_band_get_space | ( | __isl_keep isl_schedule_band * | band | ) |
Definition at line 308 of file isl_schedule_band.c.
Referenced by isl_schedule_band_get_ast_isolate_option(), and isl_schedule_tree_band_get_space().
__isl_give isl_schedule_band * isl_schedule_band_gist | ( | __isl_take isl_schedule_band * | band, |
__isl_take isl_union_set * | context | ||
) |
Definition at line 1290 of file isl_schedule_band.c.
References context, isl_multi_union_pw_aff_gist(), isl_schedule_band_cow(), isl_schedule_band_free(), and isl_union_set_free().
Referenced by isl_schedule_tree_band_gist().
__isl_give isl_schedule_band * isl_schedule_band_intersect_domain | ( | __isl_take isl_schedule_band * | band, |
__isl_take isl_union_set * | domain | ||
) |
Definition at line 318 of file isl_schedule_band.c.
References domain, isl_multi_union_pw_aff_intersect_domain(), isl_schedule_band_cow(), isl_schedule_band_free(), and isl_union_set_free().
Referenced by isl_schedule_tree_band_intersect_domain().
int isl_schedule_band_is_anchored | ( | __isl_keep isl_schedule_band * | band | ) |
Definition at line 301 of file isl_schedule_band.c.
Referenced by isl_schedule_tree_from_band(), and isl_schedule_tree_is_anchored().
enum isl_ast_loop_type isl_schedule_band_member_get_ast_loop_type | ( | __isl_keep isl_schedule_band * | band, |
int | pos | ||
) |
Definition at line 368 of file isl_schedule_band.c.
References isl_ast_loop_default, isl_ast_loop_error, isl_die, isl_error_invalid, isl_schedule_band_get_ctx(), and pos().
Referenced by isl_schedule_band_member_set_ast_loop_type(), and isl_schedule_tree_band_member_get_ast_loop_type().
isl_bool isl_schedule_band_member_get_coincident | ( | __isl_keep isl_schedule_band * | band, |
int | pos | ||
) |
Definition at line 234 of file isl_schedule_band.c.
References isl_bool_error, isl_bool_ok(), isl_die, isl_error_invalid, isl_schedule_band_get_ctx(), and pos().
Referenced by any_coincident(), isl_schedule_band_member_set_coincident(), isl_schedule_tree_band_member_get_coincident(), and print_tree_band().
enum isl_ast_loop_type isl_schedule_band_member_get_isolate_ast_loop_type | ( | __isl_keep isl_schedule_band * | band, |
int | pos | ||
) |
Definition at line 423 of file isl_schedule_band.c.
References isl_ast_loop_default, isl_ast_loop_error, isl_die, isl_error_invalid, isl_schedule_band_get_ctx(), and pos().
Referenced by isl_schedule_band_member_set_isolate_ast_loop_type(), and isl_schedule_tree_band_member_get_isolate_ast_loop_type().
__isl_give isl_schedule_band * isl_schedule_band_member_set_ast_loop_type | ( | __isl_take isl_schedule_band * | band, |
int | pos, | ||
enum isl_ast_loop_type | type | ||
) |
Definition at line 387 of file isl_schedule_band.c.
References isl_calloc_array, isl_die, isl_error_invalid, isl_schedule_band_cow(), isl_schedule_band_free(), isl_schedule_band_get_ctx(), isl_schedule_band_member_get_ast_loop_type(), pos(), and type.
Referenced by isl_schedule_tree_band_member_set_ast_loop_type().
__isl_give isl_schedule_band * isl_schedule_band_member_set_coincident | ( | __isl_take isl_schedule_band * | band, |
int | pos, | ||
int | coincident | ||
) |
Definition at line 250 of file isl_schedule_band.c.
References isl_die, isl_error_invalid, isl_schedule_band_cow(), isl_schedule_band_free(), isl_schedule_band_get_ctx(), isl_schedule_band_member_get_coincident(), and pos().
Referenced by isl_schedule_tree_band_member_set_coincident(), and set_coincident().
__isl_give isl_schedule_band * isl_schedule_band_member_set_isolate_ast_loop_type | ( | __isl_take isl_schedule_band * | band, |
int | pos, | ||
enum isl_ast_loop_type | type | ||
) |
Definition at line 444 of file isl_schedule_band.c.
References isl_calloc_array, isl_die, isl_error_invalid, isl_schedule_band_cow(), isl_schedule_band_free(), isl_schedule_band_get_ctx(), isl_schedule_band_member_get_isolate_ast_loop_type(), pos(), and type.
Referenced by isl_schedule_tree_band_member_set_isolate_ast_loop_type().
__isl_give isl_schedule_band * isl_schedule_band_mod | ( | __isl_take isl_schedule_band * | band, |
__isl_take isl_multi_val * | mv | ||
) |
Definition at line 1017 of file isl_schedule_band.c.
References isl_schedule_band_cow(), and isl_schedule_band_free().
Referenced by isl_schedule_tree_band_mod().
isl_size isl_schedule_band_n_member | ( | __isl_keep isl_schedule_band * | band | ) |
Definition at line 226 of file isl_schedule_band.c.
References isl_size_error.
Referenced by any_coincident(), isl_schedule_tree_band_n_member(), print_tree_band(), and set_coincident().
isl_bool isl_schedule_band_plain_is_equal | ( | __isl_keep isl_schedule_band * | band1, |
__isl_keep isl_schedule_band * | band2 | ||
) |
Definition at line 182 of file isl_schedule_band.c.
References equal, isl_bool_error, isl_bool_false, isl_bool_true, and isl_union_set_is_equal().
Referenced by isl_schedule_tree_plain_is_equal().
__isl_give isl_schedule_band * isl_schedule_band_point | ( | __isl_take isl_schedule_band * | band, |
__isl_keep isl_schedule_band * | tile, | ||
__isl_take isl_multi_val * | sizes | ||
) |
Definition at line 1146 of file isl_schedule_band.c.
References isl_options_get_tile_scale_tile_loops(), isl_options_get_tile_shift_point_loops(), isl_schedule_band_cow(), isl_schedule_band_free(), isl_schedule_band_get_ctx(), isl_schedule_band_get_partial_schedule(), sizes, and tile.
Referenced by isl_schedule_tree_band_tile().
__isl_give isl_schedule_band * isl_schedule_band_pullback_union_pw_multi_aff | ( | __isl_take isl_schedule_band * | band, |
__isl_take isl_union_pw_multi_aff * | upma | ||
) |
Definition at line 1266 of file isl_schedule_band.c.
References isl_multi_union_pw_aff_pullback_union_pw_multi_aff(), isl_schedule_band_cow(), isl_schedule_band_free(), and isl_union_pw_multi_aff_free().
Referenced by isl_schedule_tree_pullback_union_pw_multi_aff().
__isl_give isl_schedule_band * isl_schedule_band_replace_ast_build_option | ( | __isl_take isl_schedule_band * | band, |
__isl_take isl_set * | drop, | ||
__isl_take isl_set * | add | ||
) |
Definition at line 946 of file isl_schedule_band.c.
References add(), drop(), isl_schedule_band_cow(), isl_schedule_band_free(), isl_set_free(), isl_union_set_from_set(), isl_union_set_subtract(), and isl_union_set_union().
Referenced by isl_schedule_tree_band_split().
__isl_give isl_schedule_band * isl_schedule_band_reset_user | ( | __isl_take isl_schedule_band * | band | ) |
Definition at line 1224 of file isl_schedule_band.c.
References isl_schedule_band_cow(), isl_schedule_band_free(), and isl_union_set_reset_user().
Referenced by isl_schedule_tree_reset_user().
__isl_give isl_schedule_band * isl_schedule_band_scale | ( | __isl_take isl_schedule_band * | band, |
__isl_take isl_multi_val * | mv | ||
) |
Definition at line 976 of file isl_schedule_band.c.
References isl_multi_union_pw_aff_floor(), isl_schedule_band_cow(), and isl_schedule_band_free().
Referenced by isl_schedule_tree_band_scale().
__isl_give isl_schedule_band * isl_schedule_band_scale_down | ( | __isl_take isl_schedule_band * | band, |
__isl_take isl_multi_val * | mv | ||
) |
Definition at line 997 of file isl_schedule_band.c.
References isl_multi_union_pw_aff_floor(), isl_schedule_band_cow(), and isl_schedule_band_free().
Referenced by isl_schedule_tree_band_scale_down().
__isl_give isl_schedule_band * isl_schedule_band_set_ast_build_options | ( | __isl_take isl_schedule_band * | band, |
__isl_take isl_union_set * | options | ||
) |
Definition at line 865 of file isl_schedule_band.c.
References clear_isolate_loop_types(), clear_loop_types(), extract_isolate_loop_types(), extract_loop_types(), has_isolate_loop_type_options(), has_isolate_option(), has_loop_type_options(), isl_schedule_band_cow(), isl_schedule_band_free(), and isl_union_set_free().
Referenced by isl_schedule_tree_band_set_ast_build_options(), and read_band().
__isl_give isl_schedule_band * isl_schedule_band_set_partial_schedule | ( | __isl_take isl_schedule_band * | band, |
__isl_take isl_multi_union_pw_aff * | schedule | ||
) |
Definition at line 347 of file isl_schedule_band.c.
References isl_schedule_band_cow(), isl_schedule_band_free(), and schedule.
Referenced by isl_schedule_tree_band_set_partial_schedule().
__isl_give isl_schedule_band * isl_schedule_band_set_permutable | ( | __isl_take isl_schedule_band * | band, |
int | permutable | ||
) |
Definition at line 282 of file isl_schedule_band.c.
References isl_schedule_band_cow().
Referenced by isl_schedule_tree_band_set_permutable(), and read_band().
__isl_give isl_schedule_band * isl_schedule_band_shift | ( | __isl_take isl_schedule_band * | band, |
__isl_take isl_multi_union_pw_aff * | shift | ||
) |
Definition at line 1037 of file isl_schedule_band.c.
References isl_die, isl_error_invalid, isl_multi_union_pw_aff_domain(), isl_schedule_band_cow(), isl_schedule_band_free(), isl_schedule_band_get_ctx(), isl_union_set_free(), isl_union_set_is_subset(), and subset.
Referenced by isl_schedule_tree_band_shift().
__isl_give isl_schedule_band * isl_schedule_band_tile | ( | __isl_take isl_schedule_band * | band, |
__isl_take isl_multi_val * | sizes | ||
) |
Definition at line 1118 of file isl_schedule_band.c.
References isl_multi_union_pw_aff_tile(), isl_schedule_band_cow(), isl_schedule_band_free(), and sizes.
Referenced by isl_schedule_tree_band_tile().