add isl_vec_set
authorSven Verdoolaege <skimo@kotnet.org>
Tue, 20 Mar 2012 15:38:04 +0000 (16:38 +0100)
committerSven Verdoolaege <skimo@kotnet.org>
Sun, 6 May 2012 12:33:03 +0000 (14:33 +0200)
Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
doc/user.pod
include/isl/vec.h
isl_vec.c

index a0c3f9f..60f9885 100644 (file)
@@ -2758,6 +2758,8 @@ The elements can be changed and inspected using the following functions.
                __isl_take isl_vec *vec, int pos, isl_int v);
        __isl_give isl_vec *isl_vec_set_element_si(
                __isl_take isl_vec *vec, int pos, int v);
+       __isl_give isl_vec *isl_vec_set(__isl_take isl_vec *vec,
+               isl_int v);
 
 C<isl_vec_get_element> will return a negative value if anything went wrong.
 In that case, the value of C<*v> is undefined.
index 0251e69..55fdf6b 100644 (file)
@@ -56,6 +56,7 @@ __isl_give isl_printer *isl_printer_print_vec(__isl_take isl_printer *printer,
 void isl_vec_lcm(struct isl_vec *vec, isl_int *lcm);
 struct isl_vec *isl_vec_ceil(struct isl_vec *vec);
 struct isl_vec *isl_vec_normalize(struct isl_vec *vec);
+__isl_give isl_vec *isl_vec_set(__isl_take isl_vec *vec, isl_int v);
 __isl_give isl_vec *isl_vec_clr(__isl_take isl_vec *vec);
 __isl_give isl_vec *isl_vec_neg(__isl_take isl_vec *vec);
 __isl_give isl_vec *isl_vec_scale(__isl_take isl_vec *vec, isl_int m);
index fb42670..fa4df06 100644 (file)
--- a/isl_vec.c
+++ b/isl_vec.c
@@ -230,6 +230,15 @@ void isl_vec_dump(struct isl_vec *vec)
        isl_printer_free(printer);
 }
 
+__isl_give isl_vec *isl_vec_set(__isl_take isl_vec *vec, isl_int v)
+{
+       vec = isl_vec_cow(vec);
+       if (!vec)
+               return NULL;
+       isl_seq_set(vec->el, v, vec->size);
+       return vec;
+}
+
 __isl_give isl_vec *isl_vec_clr(__isl_take isl_vec *vec)
 {
        vec = isl_vec_cow(vec);