From: Sven Verdoolaege Date: Thu, 14 Mar 2013 08:20:01 +0000 (+0100) Subject: add isl_pw_multi_aff_sub X-Git-Tag: isl-0.12~192 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=3583c98d50104af48565edae6a4bf7752d9aa8e3;p=platform%2Fupstream%2Fisl.git add isl_pw_multi_aff_sub Signed-off-by: Sven Verdoolaege --- diff --git a/doc/user.pod b/doc/user.pod index 222239d..2174675 100644 --- a/doc/user.pod +++ b/doc/user.pod @@ -3887,6 +3887,9 @@ Operations include __isl_give isl_multi_aff *isl_multi_aff_sub( __isl_take isl_multi_aff *ma1, __isl_take isl_multi_aff *ma2); + __isl_give isl_pw_multi_aff *isl_pw_multi_aff_sub( + __isl_take isl_pw_multi_aff *pma1, + __isl_take isl_pw_multi_aff *pma2); C subtracts the second argument from the first. diff --git a/include/isl/aff.h b/include/isl/aff.h index b450c95..f7595e4 100644 --- a/include/isl/aff.h +++ b/include/isl/aff.h @@ -417,6 +417,8 @@ __isl_give isl_pw_multi_aff *isl_pw_multi_aff_union_add( __isl_give isl_pw_multi_aff *isl_pw_multi_aff_add( __isl_take isl_pw_multi_aff *pma1, __isl_take isl_pw_multi_aff *pma2); +__isl_give isl_pw_multi_aff *isl_pw_multi_aff_sub( + __isl_take isl_pw_multi_aff *pma1, __isl_take isl_pw_multi_aff *pma2); __isl_give isl_pw_multi_aff *isl_pw_multi_aff_union_lexmin( __isl_take isl_pw_multi_aff *pma1, diff --git a/isl_aff.c b/isl_aff.c index 2ad424d..a81e4d1 100644 --- a/isl_aff.c +++ b/isl_aff.c @@ -3046,6 +3046,22 @@ __isl_give isl_pw_multi_aff *isl_pw_multi_aff_add( &pw_multi_aff_add); } +static __isl_give isl_pw_multi_aff *pw_multi_aff_sub( + __isl_take isl_pw_multi_aff *pma1, __isl_take isl_pw_multi_aff *pma2) +{ + return isl_pw_multi_aff_on_shared_domain(pma1, pma2, + &isl_multi_aff_sub); +} + +/* Subtract "pma2" from "pma1" and return the result. + */ +__isl_give isl_pw_multi_aff *isl_pw_multi_aff_sub( + __isl_take isl_pw_multi_aff *pma1, __isl_take isl_pw_multi_aff *pma2) +{ + return isl_pw_multi_aff_align_params_pw_pw_and(pma1, pma2, + &pw_multi_aff_sub); +} + __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) {