X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=include%2Fisl%2Fschedule.h;h=385c6c4ef7f29182d4da5a1c3409f2f3c81bc641;hb=3d9f65131f9da197bca3a30eccf3a70107f50f03;hp=20cb40b1a0a83782a22d3ebb90f3646153f77e4e;hpb=f04389cc99039a1bdeef2bcc5d0dc944db221850;p=platform%2Fupstream%2Fisl.git diff --git a/include/isl/schedule.h b/include/isl/schedule.h index 20cb40b..385c6c4 100644 --- a/include/isl/schedule.h +++ b/include/isl/schedule.h @@ -1,8 +1,9 @@ #ifndef ISL_SCHEDULE_H #define ISL_SCHEDULE_H -#include -#include +#include +#include +#include #include #if defined(__cplusplus) @@ -12,6 +13,29 @@ extern "C" { struct isl_schedule; typedef struct isl_schedule isl_schedule; +int isl_options_set_schedule_max_coefficient(isl_ctx *ctx, int val); +int isl_options_get_schedule_max_coefficient(isl_ctx *ctx); + +int isl_options_set_schedule_max_constant_term(isl_ctx *ctx, int val); +int isl_options_get_schedule_max_constant_term(isl_ctx *ctx); + +int isl_options_set_schedule_maximize_band_depth(isl_ctx *ctx, int val); +int isl_options_get_schedule_maximize_band_depth(isl_ctx *ctx); + +int isl_options_set_schedule_outer_zero_distance(isl_ctx *ctx, int val); +int isl_options_get_schedule_outer_zero_distance(isl_ctx *ctx); + +int isl_options_set_schedule_split_scaled(isl_ctx *ctx, int val); +int isl_options_get_schedule_split_scaled(isl_ctx *ctx); + +int isl_options_set_schedule_separate_components(isl_ctx *ctx, int val); +int isl_options_get_schedule_separate_components(isl_ctx *ctx); + +#define ISL_SCHEDULE_FUSE_MAX 0 +#define ISL_SCHEDULE_FUSE_MIN 1 +int isl_options_set_schedule_fuse(isl_ctx *ctx, int val); +int isl_options_get_schedule_fuse(isl_ctx *ctx); + __isl_give isl_schedule *isl_union_set_compute_schedule( __isl_take isl_union_set *domain, __isl_take isl_union_map *validity, @@ -28,6 +52,9 @@ __isl_give isl_printer *isl_printer_print_schedule(__isl_take isl_printer *p, __isl_keep isl_schedule *schedule); void isl_schedule_dump(__isl_keep isl_schedule *schedule); +int isl_schedule_foreach_band(__isl_keep isl_schedule *sched, + int (*fn)(__isl_keep isl_band *band, void *user), void *user); + #if defined(__cplusplus) } #endif