add isl_multi_aff_sub
authorSven Verdoolaege <skimo@kotnet.org>
Thu, 14 Mar 2013 08:11:28 +0000 (09:11 +0100)
committerSven Verdoolaege <skimo@kotnet.org>
Thu, 14 Mar 2013 16:14:09 +0000 (17:14 +0100)
Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
doc/user.pod
include/isl/aff.h
isl_aff.c

index e118873..222239d 100644 (file)
@@ -3884,6 +3884,12 @@ Operations include
        __isl_give isl_pw_multi_aff *isl_pw_multi_aff_union_add(
                __isl_take isl_pw_multi_aff *pma1,
                __isl_take isl_pw_multi_aff *pma2);
+       __isl_give isl_multi_aff *isl_multi_aff_sub(
+               __isl_take isl_multi_aff *ma1,
+               __isl_take isl_multi_aff *ma2);
+
+C<isl_multi_aff_sub> subtracts the second argument from the first.
+
        __isl_give isl_multi_aff *isl_multi_aff_scale(
                __isl_take isl_multi_aff *maff,
                isl_int f);
index 448066f..b450c95 100644 (file)
@@ -310,6 +310,8 @@ int isl_multi_aff_plain_is_equal(__isl_keep isl_multi_aff *maff1,
 
 __isl_give isl_multi_aff *isl_multi_aff_add(__isl_take isl_multi_aff *maff1,
        __isl_take isl_multi_aff *maff2);
+__isl_give isl_multi_aff *isl_multi_aff_sub(__isl_take isl_multi_aff *ma1,
+       __isl_take isl_multi_aff *ma2);
 
 __isl_give isl_multi_aff *isl_multi_aff_scale(__isl_take isl_multi_aff *maff,
        isl_int f);
index dadc332..2ad424d 100644 (file)
--- a/isl_aff.c
+++ b/isl_aff.c
@@ -2680,6 +2680,14 @@ __isl_give isl_multi_aff *isl_multi_aff_add(__isl_take isl_multi_aff *maff1,
        return isl_multi_aff_bin_op(maff1, maff2, &isl_aff_add);
 }
 
+/* Subtract "ma2" from "ma1" and return the result.
+ */
+__isl_give isl_multi_aff *isl_multi_aff_sub(__isl_take isl_multi_aff *ma1,
+       __isl_take isl_multi_aff *ma2)
+{
+       return isl_multi_aff_bin_op(ma1, ma2, &isl_aff_sub);
+}
+
 /* Given two multi-affine expressions A -> B and C -> D,
  * construct a multi-affine expression [A -> C] -> [B -> D].
  */