An empty piecewise multiple quasi affine expression (one with no cells),
the zero piecewise multiple quasi affine expression (with value zero
for each output dimension) or
-a piecewise multiple quasi affine expression with a single cell can
+a piecewise multiple quasi affine expression with a single cell (with
+either a universe or a specified domain) can
be created using the following functions.
#include <isl/aff.h>
__isl_take isl_space *space);
__isl_give isl_multi_aff *isl_multi_aff_zero(
__isl_take isl_space *space);
+ __isl_give isl_pw_multi_aff *
+ isl_pw_multi_aff_from_multi_aff(
+ __isl_take isl_multi_aff *ma);
__isl_give isl_pw_multi_aff *isl_pw_multi_aff_alloc(
__isl_take isl_set *set,
__isl_take isl_multi_aff *maff);
const char *str);
void isl_multi_aff_dump(__isl_keep isl_multi_aff *maff);
+__isl_give isl_pw_multi_aff *isl_pw_multi_aff_from_multi_aff(
+ __isl_take isl_multi_aff *ma);
__isl_give isl_pw_multi_aff *isl_pw_multi_aff_alloc(__isl_take isl_set *set,
__isl_take isl_multi_aff *maff);
__isl_give isl_pw_multi_aff *isl_pw_multi_aff_copy(
return ma;
}
+/* Create an isl_pw_multi_aff with the given isl_multi_aff on a universe
+ * domain.
+ */
+__isl_give isl_pw_multi_aff *isl_pw_multi_aff_from_multi_aff(
+ __isl_take isl_multi_aff *ma)
+{
+ isl_set *dom = isl_set_universe(isl_multi_aff_get_domain_space(ma));
+ return isl_pw_multi_aff_alloc(dom, ma);
+}
+
__isl_give isl_multi_aff *isl_multi_aff_add(__isl_take isl_multi_aff *maff1,
__isl_take isl_multi_aff *maff2)
{