isl_map_coalesce: only tighten non-redundant constraints of potential extension
[isl.git] / isl_vec_private.h
blobc02267c7868b3c541102dc0845e78f2b8993fd5f
1 #ifndef ISL_VEC_PRIVATE_H
2 #define ISL_VEC_PRIVATE_H
4 #include <isl_blk.h>
5 #include <isl/vec.h>
7 struct isl_vec {
8 int ref;
10 struct isl_ctx *ctx;
12 unsigned size;
13 isl_int *el;
15 struct isl_blk block;
18 uint32_t isl_vec_get_hash(__isl_keep isl_vec *vec);
20 __isl_give isl_vec *isl_vec_cow(__isl_take isl_vec *vec);
22 void isl_vec_lcm(struct isl_vec *vec, isl_int *lcm);
23 int isl_vec_get_element(__isl_keep isl_vec *vec, int pos, isl_int *v);
24 __isl_give isl_vec *isl_vec_set(__isl_take isl_vec *vec, isl_int v);
26 __isl_give isl_vec *isl_vec_expand(__isl_take isl_vec *vec, int pos, int n,
27 int *exp, int expanded);
29 #endif