summaryrefslogtreecommitdiff
path: root/doc
diff options
context:
space:
mode:
authorSven Verdoolaege <skimo@kotnet.org>2012-07-16 12:39:41 +0200
committerSven Verdoolaege <skimo@kotnet.org>2012-09-18 15:08:19 +0200
commitb62bd7ab74977403487a24e232aba8f121a27d85 (patch)
tree7d4b7c3927fbbd3733402ace11b7985b1cb470b3 /doc
parent73e55714e0f4331a7a90e57278275f8229f894ef (diff)
downloadisl-b62bd7ab74977403487a24e232aba8f121a27d85.tar.gz
isl-b62bd7ab74977403487a24e232aba8f121a27d85.tar.bz2
isl-b62bd7ab74977403487a24e232aba8f121a27d85.zip
add isl_multi_pw_aff
Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
Diffstat (limited to 'doc')
-rw-r--r--doc/user.pod38
1 files changed, 37 insertions, 1 deletions
diff --git a/doc/user.pod b/doc/user.pod
index 7e00955b..9823d99a 100644
--- a/doc/user.pod
+++ b/doc/user.pod
@@ -746,6 +746,10 @@ of the original object.
__isl_keep isl_pw_multi_aff *pma);
__isl_give isl_space *isl_union_pw_multi_aff_get_space(
__isl_keep isl_union_pw_multi_aff *upma);
+ __isl_give isl_space *isl_multi_pw_aff_get_domain_space(
+ __isl_keep isl_multi_pw_aff *mpa);
+ __isl_give isl_space *isl_multi_pw_aff_get_space(
+ __isl_keep isl_multi_pw_aff *mpa);
#include <isl/point.h>
__isl_give isl_space *isl_point_get_space(
@@ -3578,14 +3582,18 @@ An expression can be printed using
An C<isl_multi_aff> object represents a sequence of
zero or more affine expressions, all defined on the same domain space.
+Similarly, an C<isl_multi_pw_aff> object represents a sequence of
+zero or more piecewise affine expressions.
An C<isl_multi_aff> can be constructed from a single
C<isl_aff> or an C<isl_aff_list> using the
-following functions.
+following functions. Similarly for C<isl_multi_pw_aff>.
#include <isl/aff.h>
__isl_give isl_multi_aff *isl_multi_aff_from_aff(
__isl_take isl_aff *aff);
+ __isl_give isl_multi_pw_aff *isl_multi_pw_aff_from_pw_aff(
+ __isl_take isl_pw_aff *pa);
__isl_give isl_multi_aff *isl_multi_aff_from_aff_list(
__isl_take isl_space *space,
__isl_take isl_aff_list *list);
@@ -3604,10 +3612,14 @@ can be created using the following functions.
__isl_take isl_space *space);
__isl_give isl_multi_aff *isl_multi_aff_zero(
__isl_take isl_space *space);
+ __isl_give isl_multi_pw_aff *isl_multi_pw_aff_zero(
+ __isl_take isl_space *space);
__isl_give isl_multi_aff *isl_multi_aff_identity(
__isl_take isl_space *space);
__isl_give isl_pw_multi_aff *isl_pw_multi_aff_identity(
__isl_take isl_space *space);
+ __isl_give isl_multi_pw_aff *isl_multi_pw_aff_identity(
+ __isl_take isl_space *space);
__isl_give isl_pw_multi_aff *
isl_pw_multi_aff_from_multi_aff(
__isl_take isl_multi_aff *ma);
@@ -3655,6 +3667,11 @@ Multiple quasi affine expressions can be copied and freed using
void *isl_union_pw_multi_aff_free(
__isl_take isl_union_pw_multi_aff *upma);
+ __isl_give isl_multi_pw_aff *isl_multi_pw_aff_copy(
+ __isl_keep isl_multi_pw_aff *mpa);
+ void *isl_multi_pw_aff_free(
+ __isl_take isl_multi_pw_aff *mpa);
+
The expression can be inspected using
#include <isl/aff.h>
@@ -3664,15 +3681,22 @@ The expression can be inspected using
__isl_keep isl_pw_multi_aff *pma);
isl_ctx *isl_union_pw_multi_aff_get_ctx(
__isl_keep isl_union_pw_multi_aff *upma);
+ isl_ctx *isl_multi_pw_aff_get_ctx(
+ __isl_keep isl_multi_pw_aff *mpa);
unsigned isl_multi_aff_dim(__isl_keep isl_multi_aff *maff,
enum isl_dim_type type);
unsigned isl_pw_multi_aff_dim(
__isl_keep isl_pw_multi_aff *pma,
enum isl_dim_type type);
+ unsigned isl_multi_pw_aff_dim(
+ __isl_keep isl_multi_pw_aff *mpa,
+ enum isl_dim_type type);
__isl_give isl_aff *isl_multi_aff_get_aff(
__isl_keep isl_multi_aff *multi, int pos);
__isl_give isl_pw_aff *isl_pw_multi_aff_get_pw_aff(
__isl_keep isl_pw_multi_aff *pma, int pos);
+ __isl_give isl_pw_aff *isl_multi_pw_aff_get_pw_aff(
+ __isl_keep isl_multi_pw_aff *mpa, int pos);
const char *isl_pw_multi_aff_get_dim_name(
__isl_keep isl_pw_multi_aff *pma,
enum isl_dim_type type, unsigned pos);
@@ -3725,6 +3749,11 @@ It can be modified using
__isl_take isl_pw_multi_aff *pma,
enum isl_dim_type type, __isl_take isl_id *id);
+ __isl_give isl_multi_pw_aff *
+ isl_multi_pw_aff_set_dim_name(
+ __isl_take isl_multi_pw_aff *mpa,
+ enum isl_dim_type type, unsigned pos, const char *s);
+
__isl_give isl_multi_aff *isl_multi_aff_drop_dims(
__isl_take isl_multi_aff *maff,
enum isl_dim_type type, unsigned first, unsigned n);
@@ -3818,6 +3847,10 @@ Operations include
isl_union_pw_multi_aff_flat_range_product(
__isl_take isl_union_pw_multi_aff *upma1,
__isl_take isl_union_pw_multi_aff *upma2);
+ __isl_give isl_multi_pw_aff *
+ isl_multi_pw_aff_flat_range_product(
+ __isl_take isl_multi_pw_aff *mpa1,
+ __isl_take isl_multi_pw_aff *mpa2);
If the C<ls> argument of C<isl_multi_aff_lift> is not C<NULL>,
then it is assigned the local space that lies at the basis of
@@ -3855,6 +3888,9 @@ An expression can be printed using
__isl_give isl_printer *isl_printer_print_union_pw_multi_aff(
__isl_take isl_printer *p,
__isl_keep isl_union_pw_multi_aff *upma);
+ __isl_give isl_printer *isl_printer_print_multi_pw_aff(
+ __isl_take isl_printer *p,
+ __isl_keep isl_multi_pw_aff *mpa);
=head2 Points