add isl_pw_multi_aff_from_multi_aff
[platform/upstream/isl.git] / include / isl / space.h
index ce38f33..9b54df5 100644 (file)
@@ -40,6 +40,9 @@ __isl_give isl_space *isl_space_params_alloc(isl_ctx *ctx, unsigned nparam);
 __isl_give isl_space *isl_space_copy(__isl_keep isl_space *dim);
 void isl_space_free(__isl_take isl_space *dim);
 
+int isl_space_is_params(__isl_keep isl_space *space);
+int isl_space_is_set(__isl_keep isl_space *space);
+
 __isl_give isl_space *isl_space_set_tuple_name(__isl_take isl_space *dim,
        enum isl_dim_type type, const char *s);
 const char *isl_space_get_tuple_name(__isl_keep isl_space *dim,
@@ -61,7 +64,11 @@ __isl_give isl_id *isl_space_get_dim_id(__isl_keep isl_space *dim,
 
 int isl_space_find_dim_by_id(__isl_keep isl_space *dim, enum isl_dim_type type,
        __isl_keep isl_id *id);
+int isl_space_find_dim_by_name(__isl_keep isl_space *space,
+       enum isl_dim_type type, const char *name);
 
+int isl_space_has_dim_name(__isl_keep isl_space *space,
+       enum isl_dim_type type, unsigned pos);
 __isl_give isl_space *isl_space_set_dim_name(__isl_take isl_space *dim,
                                 enum isl_dim_type type, unsigned pos,
                                 __isl_keep const char *name);
@@ -86,6 +93,8 @@ __isl_give isl_space *isl_space_domain_product(__isl_take isl_space *left,
 __isl_give isl_space *isl_space_range_product(__isl_take isl_space *left,
        __isl_take isl_space *right);
 __isl_give isl_space *isl_space_map_from_set(__isl_take isl_space *dim);
+__isl_give isl_space *isl_space_map_from_domain_and_range(
+       __isl_take isl_space *domain, __isl_take isl_space *range);
 __isl_give isl_space *isl_space_reverse(__isl_take isl_space *dim);
 __isl_give isl_space *isl_space_drop_dims(__isl_take isl_space *dim,
        enum isl_dim_type type, unsigned first, unsigned num);
@@ -98,6 +107,7 @@ __isl_give isl_space *isl_space_from_domain(__isl_take isl_space *dim);
 __isl_give isl_space *isl_space_range(__isl_take isl_space *dim);
 __isl_give isl_space *isl_space_from_range(__isl_take isl_space *dim);
 __isl_give isl_space *isl_space_params(__isl_take isl_space *space);
+__isl_give isl_space *isl_space_set_from_params(__isl_take isl_space *space);
 
 __isl_give isl_space *isl_space_align_params(__isl_take isl_space *dim1,
        __isl_take isl_space *dim2);