add isl_aff_mod_val
[platform/upstream/isl.git] / isl_local_space_private.h
index 85ecfe1..d54c3e3 100644 (file)
@@ -1,7 +1,6 @@
 #ifndef ISL_LOCAL_SPACE_PRIVATE_H
 #define ISL_LOCAL_SPACE_PRIVATE_H
 
-#include <isl/div.h>
 #include <isl/mat.h>
 #include <isl/set.h>
 #include <isl/local_space.h>
@@ -15,10 +14,15 @@ struct isl_local_space {
 
 __isl_give isl_local_space *isl_local_space_alloc(__isl_take isl_space *dim,
        unsigned n_div);
+__isl_give isl_local_space *isl_local_space_alloc_div(__isl_take isl_space *dim,
+       __isl_take isl_mat *div);
 
+__isl_give isl_local_space *isl_local_space_swap_div(
+       __isl_take isl_local_space *ls, int a, int b);
 __isl_give isl_local_space *isl_local_space_add_div(
        __isl_take isl_local_space *ls, __isl_take isl_vec *div);
 
+int isl_mat_cmp_div(__isl_keep isl_mat *div, int i, int j);
 __isl_give isl_mat *isl_merge_divs(__isl_keep isl_mat *div1,
        __isl_keep isl_mat *div2, int *exp1, int *exp2);
 
@@ -45,4 +49,18 @@ int isl_local_space_is_div_constraint(__isl_keep isl_local_space *ls,
 
 int *isl_local_space_get_active(__isl_keep isl_local_space *ls, isl_int *l);
 
+__isl_give isl_local_space *isl_local_space_substitute_seq(
+       __isl_take isl_local_space *ls,
+       enum isl_dim_type type, unsigned pos, isl_int *subs, int subs_len,
+       int first, int n);
+__isl_give isl_local_space *isl_local_space_substitute(
+       __isl_take isl_local_space *ls,
+       enum isl_dim_type type, unsigned pos, __isl_keep isl_aff *subs);
+
+__isl_give isl_local_space *isl_local_space_lift(
+       __isl_take isl_local_space *ls);
+
+__isl_give isl_local_space *isl_local_space_preimage_multi_aff(
+       __isl_take isl_local_space *ls, __isl_take isl_multi_aff *ma);
+
 #endif