add isl_pw_multi_aff_from_multi_aff
[platform/upstream/isl.git] / include / isl / aff.h
index 2f4d6be..4ef0078 100644 (file)
@@ -112,6 +112,8 @@ __isl_give isl_pw_aff *isl_pw_aff_empty(__isl_take isl_space *dim);
 __isl_give isl_pw_aff *isl_pw_aff_alloc(__isl_take isl_set *set,
        __isl_take isl_aff *aff);
 
+__isl_give isl_pw_aff *isl_set_indicator_function(__isl_take isl_set *set);
+
 const char *isl_pw_aff_get_dim_name(__isl_keep isl_pw_aff *pa,
        enum isl_dim_type type, unsigned pos);
 int isl_pw_aff_has_dim_id(__isl_keep isl_pw_aff *pa,
@@ -170,7 +172,7 @@ __isl_give isl_pw_aff *isl_pw_aff_intersect_params(__isl_take isl_pw_aff *pa,
 __isl_give isl_pw_aff *isl_pw_aff_intersect_domain(__isl_take isl_pw_aff *pa,
        __isl_take isl_set *set);
 
-__isl_give isl_pw_aff *isl_pw_aff_cond(__isl_take isl_set *cond,
+__isl_give isl_pw_aff *isl_pw_aff_cond(__isl_take isl_pw_aff *cond,
        __isl_take isl_pw_aff *pwaff_true, __isl_take isl_pw_aff *pwaff_false);
 
 __isl_give isl_pw_aff *isl_pw_aff_scale(__isl_take isl_pw_aff *pwaff,
@@ -191,6 +193,7 @@ __isl_give isl_pw_aff *isl_pw_aff_gist(__isl_take isl_pw_aff *pwaff,
 __isl_give isl_pw_aff *isl_pw_aff_gist_params(__isl_take isl_pw_aff *pwaff,
        __isl_take isl_set *context);
 
+int isl_pw_aff_n_piece(__isl_keep isl_pw_aff *pwaff);
 int isl_pw_aff_foreach_piece(__isl_keep isl_pw_aff *pwaff,
        int (*fn)(__isl_take isl_set *set, __isl_take isl_aff *aff,
                    void *user), void *user);
@@ -236,6 +239,8 @@ __isl_give isl_set *isl_pw_aff_list_ge_set(__isl_take isl_pw_aff_list *list1,
 __isl_give isl_set *isl_pw_aff_list_gt_set(__isl_take isl_pw_aff_list *list1,
        __isl_take isl_pw_aff_list *list2);
 
+__isl_give isl_multi_aff *isl_multi_aff_zero(__isl_take isl_space *space);
+
 isl_ctx *isl_multi_aff_get_ctx(__isl_keep isl_multi_aff *maff);
 __isl_give isl_space *isl_multi_aff_get_space(__isl_keep isl_multi_aff *maff);
 __isl_give isl_multi_aff *isl_multi_aff_set_tuple_id(
@@ -281,6 +286,8 @@ __isl_give isl_multi_aff *isl_multi_aff_read_from_str(isl_ctx *ctx,
                const char *str);
 void isl_multi_aff_dump(__isl_keep isl_multi_aff *maff);
 
+__isl_give isl_pw_multi_aff *isl_pw_multi_aff_from_multi_aff(
+       __isl_take isl_multi_aff *ma);
 __isl_give isl_pw_multi_aff *isl_pw_multi_aff_alloc(__isl_take isl_set *set,
        __isl_take isl_multi_aff *maff);
 __isl_give isl_pw_multi_aff *isl_pw_multi_aff_copy(
@@ -307,6 +314,8 @@ __isl_give isl_pw_multi_aff *isl_pw_multi_aff_set_tuple_id(
        __isl_take isl_pw_multi_aff *pma,
        enum isl_dim_type type, __isl_take isl_id *id);
 
+__isl_give isl_set *isl_pw_multi_aff_domain(__isl_take isl_pw_multi_aff *pma);
+
 __isl_give isl_pw_multi_aff *isl_pw_multi_aff_empty(__isl_take isl_space *space);
 
 const char *isl_pw_multi_aff_get_dim_name(__isl_keep isl_pw_multi_aff *pma,
@@ -332,6 +341,8 @@ __isl_give isl_pw_multi_aff *isl_pw_multi_aff_intersect_params(
 __isl_give isl_pw_multi_aff *isl_pw_multi_aff_intersect_domain(
        __isl_take isl_pw_multi_aff *pma, __isl_take isl_set *set);
 
+__isl_give isl_pw_multi_aff *isl_pw_multi_aff_coalesce(
+       __isl_take isl_pw_multi_aff *pma);
 __isl_give isl_pw_multi_aff *isl_pw_multi_aff_gist_params(
        __isl_take isl_pw_multi_aff *pma, __isl_take isl_set *set);
 __isl_give isl_pw_multi_aff *isl_pw_multi_aff_gist(