isl_tab_make_equalities_explicit: support undo
[isl.git] / isl_local.h
blob03e4a539709d87f2c5276160b348ea7d3da782f9
1 #ifndef ISL_LOCAL_H
2 #define ISL_LOCAL_H
4 #include <isl/mat.h>
5 #include <isl_reordering.h>
7 typedef isl_mat isl_local;
9 __isl_give isl_local *isl_local_copy(__isl_keep isl_local *local);
10 __isl_null isl_local *isl_local_free(__isl_take isl_local *local);
12 isl_bool isl_local_div_is_marked_unknown(__isl_keep isl_local *local, int pos);
13 isl_bool isl_local_div_is_known(__isl_keep isl_local *local, int pos);
14 isl_bool isl_local_divs_known(__isl_keep isl_local *local);
16 int isl_local_cmp(__isl_keep isl_local *local1, __isl_keep isl_local *local2);
18 isl_size isl_local_var_offset(__isl_keep isl_local *local,
19 enum isl_dim_type type);
21 __isl_give isl_local *isl_local_reorder(__isl_take isl_local *local,
22 __isl_take isl_reordering *r);
24 __isl_give isl_local *isl_local_move_vars(__isl_take isl_local *local,
25 unsigned dst_pos, unsigned src_pos, unsigned n);
27 isl_bool isl_local_involves_vars(__isl_keep isl_local *local,
28 unsigned first, unsigned n);
30 __isl_give isl_vec *isl_local_extend_point_vec(__isl_keep isl_local *local,
31 __isl_take isl_vec *v);
33 #endif