From 11f69926d8d309c3eaa888a336ec61894d6acb6e Mon Sep 17 00:00:00 2001 From: Sven Verdoolaege Date: Fri, 24 Sep 2010 07:38:50 +0200 Subject: [PATCH] add isl_union_map_apply_domain Signed-off-by: Sven Verdoolaege --- doc/user.pod | 3 +++ include/isl_union_map.h | 2 ++ isl_union_map.c | 8 ++++++++ 3 files changed, 13 insertions(+) diff --git a/doc/user.pod b/doc/user.pod index 045a0be..1356ca8 100644 --- a/doc/user.pod +++ b/doc/user.pod @@ -1356,6 +1356,9 @@ the same (number of) parameters. __isl_give isl_map *isl_map_apply_domain( __isl_take isl_map *map1, __isl_take isl_map *map2); + __isl_give isl_union_map *isl_union_map_apply_domain( + __isl_take isl_union_map *umap1, + __isl_take isl_union_map *umap2); __isl_give isl_map *isl_map_apply_range( __isl_take isl_map *map1, __isl_take isl_map *map2); diff --git a/include/isl_union_map.h b/include/isl_union_map.h index d62f3f1..708adab 100644 --- a/include/isl_union_map.h +++ b/include/isl_union_map.h @@ -52,6 +52,8 @@ __isl_give isl_union_map *isl_union_map_gist(__isl_take isl_union_map *umap, __isl_give isl_union_map *isl_union_map_intersect_domain( __isl_take isl_union_map *umap, __isl_take isl_union_set *uset); +__isl_give isl_union_map *isl_union_map_apply_domain( + __isl_take isl_union_map *umap1, __isl_take isl_union_map *umap2); __isl_give isl_union_map *isl_union_map_apply_range( __isl_take isl_union_map *umap1, __isl_take isl_union_map *umap2); __isl_give isl_union_map *isl_union_map_reverse(__isl_take isl_union_map *umap); diff --git a/isl_union_map.c b/isl_union_map.c index 747594e..46a95a5 100644 --- a/isl_union_map.c +++ b/isl_union_map.c @@ -716,6 +716,14 @@ __isl_give isl_union_map *isl_union_map_apply_range( return bin_op(umap1, umap2, &apply_range_entry); } +__isl_give isl_union_map *isl_union_map_apply_domain( + __isl_take isl_union_map *umap1, __isl_take isl_union_map *umap2) +{ + umap1 = isl_union_map_reverse(umap1); + umap1 = isl_union_map_apply_range(umap1, umap2); + return isl_union_map_reverse(umap1); +} + __isl_give isl_union_set *isl_union_set_apply( __isl_take isl_union_set *uset, __isl_take isl_union_map *umap) { -- 2.7.4