export isl_qpolynomial_fold_gist
[platform/upstream/isl.git] / doc / user.pod
index 3b83443..2abe0c7 100644 (file)
@@ -1725,6 +1725,10 @@ i.e., whether both domain and range are nested relations.
                __isl_take isl_map *bmap);
        __isl_give isl_set *isl_map_range(
                __isl_take isl_map *map);
+       __isl_give isl_set *isl_union_set_params(
+               __isl_take isl_union_set *uset);
+       __isl_give isl_set *isl_union_map_params(
+               __isl_take isl_union_map *umap);
        __isl_give isl_union_set *isl_union_map_domain(
                __isl_take isl_union_map *umap);
        __isl_give isl_union_set *isl_union_map_range(
@@ -2183,6 +2187,9 @@ the same (number of) parameters.
 
 =item * Intersection
 
+       __isl_give isl_basic_set *isl_basic_set_intersect_params(
+               __isl_take isl_basic_set *bset1,
+               __isl_take isl_basic_set *bset2);
        __isl_give isl_basic_set *isl_basic_set_intersect(
                __isl_take isl_basic_set *bset1,
                __isl_take isl_basic_set *bset2);
@@ -2383,12 +2390,18 @@ instead.
        __isl_give isl_map *isl_map_gist_params(
                __isl_take isl_map *map,
                __isl_take isl_set *context);
+       __isl_give isl_map *isl_map_gist_domain(
+               __isl_take isl_map *map,
+               __isl_take isl_set *context);
        __isl_give isl_union_map *isl_union_map_gist(
                __isl_take isl_union_map *umap,
                __isl_take isl_union_map *context);
        __isl_give isl_union_map *isl_union_map_gist_params(
                __isl_take isl_union_map *umap,
                __isl_take isl_set *set);
+       __isl_give isl_union_map *isl_union_map_gist_domain(
+               __isl_take isl_union_map *umap,
+               __isl_take isl_union_set *uset);
 
 The gist operation returns a set or relation that has the
 same intersection with the context as the input set or relation.
@@ -2838,6 +2851,9 @@ Operations include
                __isl_take isl_pw_aff *pwaff,
                __isl_take isl_space *model);
 
+       __isl_give isl_aff *isl_aff_gist_params(
+               __isl_take isl_aff *aff,
+               __isl_take isl_set *context);
        __isl_give isl_aff *isl_aff_gist(__isl_take isl_aff *aff,
                __isl_take isl_set *context);
        __isl_give isl_pw_aff *isl_pw_aff_gist(
@@ -2849,6 +2865,9 @@ Operations include
        __isl_give isl_pw_aff *isl_pw_aff_intersect_domain(
                __isl_take isl_pw_aff *pa,
                __isl_take isl_set *set);
+       __isl_give isl_pw_aff *isl_pw_aff_intersect_params(
+               __isl_take isl_pw_aff *pa,
+               __isl_take isl_set *set);
 
        __isl_give isl_aff *isl_aff_mul(__isl_take isl_aff *aff1,
                __isl_take isl_aff *aff2);
@@ -3088,6 +3107,9 @@ Operations include
        __isl_give isl_multi_aff *isl_multi_aff_scale(
                __isl_take isl_multi_aff *maff,
                isl_int f);
+       __isl_give isl_pw_multi_aff *isl_pw_multi_aff_intersect_params(
+               __isl_take isl_pw_multi_aff *pma,
+               __isl_take isl_set *set);
        __isl_give isl_pw_multi_aff *isl_pw_multi_aff_intersect_domain(
                __isl_take isl_pw_multi_aff *pma,
                __isl_take isl_set *set);
@@ -3491,12 +3513,19 @@ obviously equal, use
        __isl_give isl_pw_qpolynomial *isl_pw_qpolynomial_intersect_domain(
                __isl_take isl_pw_qpolynomial *pwpq,
                __isl_take isl_set *set);
+       __isl_give isl_pw_qpolynomial *isl_pw_qpolynomial_intersect_params(
+               __isl_take isl_pw_qpolynomial *pwpq,
+               __isl_take isl_set *set);
 
        __isl_give isl_union_set *isl_union_pw_qpolynomial_domain(
                __isl_take isl_union_pw_qpolynomial *upwqp);
        __isl_give isl_union_pw_qpolynomial *isl_union_pw_qpolynomial_intersect_domain(
                __isl_take isl_union_pw_qpolynomial *upwpq,
                __isl_take isl_union_set *uset);
+       __isl_give isl_union_pw_qpolynomial *
+       isl_union_pw_qpolynomial_intersect_params(
+               __isl_take isl_union_pw_qpolynomial *upwpq,
+               __isl_take isl_set *set);
 
        __isl_give isl_qpolynomial *isl_qpolynomial_align_params(
                __isl_take isl_qpolynomial *qp,
@@ -3677,11 +3706,20 @@ obviously equal, use
                __isl_take isl_union_pw_qpolynomial_fold *upwf,
                __isl_take isl_point *pnt);
 
+       __isl_give isl_pw_qpolynomial_fold *
+       sl_pw_qpolynomial_fold_intersect_params(
+               __isl_take isl_pw_qpolynomial_fold *pwf,
+               __isl_take isl_set *set);
+
        __isl_give isl_union_set *isl_union_pw_qpolynomial_fold_domain(
                __isl_take isl_union_pw_qpolynomial_fold *upwf);
        __isl_give isl_union_pw_qpolynomial_fold *isl_union_pw_qpolynomial_fold_intersect_domain(
                __isl_take isl_union_pw_qpolynomial_fold *upwf,
                __isl_take isl_union_set *uset);
+       __isl_give isl_union_pw_qpolynomial_fold *
+       isl_union_pw_qpolynomial_fold_intersect_params(
+               __isl_take isl_union_pw_qpolynomial_fold *upwf,
+               __isl_take isl_set *set);
 
        __isl_give isl_pw_qpolynomial_fold *isl_pw_qpolynomial_fold_project_domain_on_params(
                __isl_take isl_pw_qpolynomial_fold *pwf);
@@ -3692,6 +3730,10 @@ obviously equal, use
        __isl_give isl_union_pw_qpolynomial_fold *isl_union_pw_qpolynomial_fold_coalesce(
                __isl_take isl_union_pw_qpolynomial_fold *upwf);
 
+       __isl_give isl_qpolynomial_fold *isl_qpolynomial_fold_gist(
+               __isl_take isl_qpolynomial_fold *fold,
+               __isl_take isl_set *context);
+
        __isl_give isl_pw_qpolynomial_fold *isl_pw_qpolynomial_fold_gist(
                __isl_take isl_pw_qpolynomial_fold *pwf,
                __isl_take isl_set *context);
@@ -3746,11 +3788,13 @@ for each iteration of the sink access, which iteration
 of which of the source access relations was the last
 to access the same data element before the given iteration
 of the sink access.
+The resulting dependence relations map source iterations
+to the corresponding sink iterations.
 To compute standard flow dependences, the sink should be
 a read, while the sources should be writes.
 If any of the source accesses are marked as being I<may>
-accesses, then there will be a dependence to the last
-I<must> access B<and> to any I<may> access that follows
+accesses, then there will be a dependence from the last
+I<must> access B<and> from any I<may> access that follows
 this last I<must> access.
 In particular, if I<all> sources are I<may> accesses,
 then memory based dependence analysis is performed.