add isl_morph_vec
authorSven Verdoolaege <skimo@kotnet.org>
Sun, 16 Jan 2011 11:24:37 +0000 (12:24 +0100)
committerSven Verdoolaege <skimo@kotnet.org>
Sun, 16 Jan 2011 14:04:54 +0000 (15:04 +0100)
Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
isl_morph.c
isl_morph.h

index 7e24907..d96de66 100644 (file)
@@ -757,3 +757,19 @@ __isl_give isl_morph *isl_basic_set_full_compression(
 
        return morph;
 }
+
+__isl_give isl_vec *isl_morph_vec(__isl_take isl_morph *morph,
+       __isl_take isl_vec *vec)
+{
+       if (!morph)
+               goto error;
+
+       vec = isl_mat_vec_product(isl_mat_copy(morph->map), vec);
+
+       isl_morph_free(morph);
+       return vec;
+error:
+       isl_morph_free(morph);
+       isl_vec_free(vec);
+       return NULL;
+}
index bbffe4b..f125cdc 100644 (file)
@@ -68,6 +68,8 @@ __isl_give isl_basic_set *isl_morph_basic_set(__isl_take isl_morph *morph,
        __isl_take isl_basic_set *bset);
 __isl_give isl_set *isl_morph_set(__isl_take isl_morph *morph,
        __isl_take isl_set *set);
+__isl_give isl_vec *isl_morph_vec(__isl_take isl_morph *morph,
+       __isl_take isl_vec *vec);
 
 #if defined(__cplusplus)
 }