From 9ed29fe1d5bfdeaf1264dd0a9805b6908063c74e Mon Sep 17 00:00:00 2001 From: Sven Verdoolaege Date: Sun, 16 Jan 2011 12:24:37 +0100 Subject: [PATCH] add isl_morph_vec Signed-off-by: Sven Verdoolaege --- isl_morph.c | 16 ++++++++++++++++ isl_morph.h | 2 ++ 2 files changed, 18 insertions(+) diff --git a/isl_morph.c b/isl_morph.c index 7e24907..d96de66 100644 --- a/isl_morph.c +++ b/isl_morph.c @@ -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; +} diff --git a/isl_morph.h b/isl_morph.h index bbffe4b..f125cdc 100644 --- a/isl_morph.h +++ b/isl_morph.h @@ -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) } -- 2.7.4