From 49902f3996a6332fc0206d8b40d0d30e7cbb902a Mon Sep 17 00:00:00 2001 From: Sven Verdoolaege Date: Sun, 26 Dec 2010 13:12:05 +0100 Subject: add isl_union_map_range_product Signed-off-by: Sven Verdoolaege --- isl_union_map.c | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) (limited to 'isl_union_map.c') diff --git a/isl_union_map.c b/isl_union_map.c index 38e6b598..3e88c557 100644 --- a/isl_union_map.c +++ b/isl_union_map.c @@ -877,6 +877,25 @@ __isl_give isl_union_set *isl_union_set_product(__isl_take isl_union_set *uset1, return isl_union_map_product(uset1, uset2); } +static int range_product_entry(void **entry, void *user) +{ + struct isl_union_map_bin_data *data = user; + isl_map *map2 = *entry; + + map2 = isl_map_range_product(isl_map_copy(data->map), + isl_map_copy(map2)); + + data->res = isl_union_map_add_map(data->res, map2); + + return 0; +} + +__isl_give isl_union_map *isl_union_map_range_product( + __isl_take isl_union_map *umap1, __isl_take isl_union_map *umap2) +{ + return bin_op(umap1, umap2, &range_product_entry); +} + __isl_give isl_union_map *isl_union_map_from_range( __isl_take isl_union_set *uset) { -- cgit v1.2.3