From: Sven Verdoolaege Date: Thu, 16 Sep 2010 01:53:30 +0000 (+0200) Subject: add isl_qpolynomial_one X-Git-Tag: isl-0.05~164 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=a9e9221ccbbb4811fdcf12146af8a461ff0e3951;p=platform%2Fupstream%2Fisl.git add isl_qpolynomial_one Signed-off-by: Sven Verdoolaege --- diff --git a/doc/user.pod b/doc/user.pod index cbe08e3..8a3265d 100644 --- a/doc/user.pod +++ b/doc/user.pod @@ -1589,6 +1589,8 @@ on the resulting quasipolynomials __isl_give isl_qpolynomial *isl_qpolynomial_zero( __isl_take isl_dim *dim); + __isl_give isl_qpolynomial *isl_qpolynomial_one( + __isl_take isl_dim *dim); __isl_give isl_qpolynomial *isl_qpolynomial_infty( __isl_take isl_dim *dim); __isl_give isl_qpolynomial *isl_qpolynomial_neginfty( diff --git a/include/isl_polynomial.h b/include/isl_polynomial.h index 0e4fc91..d777eaa 100644 --- a/include/isl_polynomial.h +++ b/include/isl_polynomial.h @@ -27,6 +27,7 @@ int isl_qpolynomial_involves_dims(__isl_keep isl_qpolynomial *qp, enum isl_dim_type type, unsigned first, unsigned n); __isl_give isl_qpolynomial *isl_qpolynomial_zero(__isl_take isl_dim *dim); +__isl_give isl_qpolynomial *isl_qpolynomial_one(__isl_take isl_dim *dim); __isl_give isl_qpolynomial *isl_qpolynomial_infty(__isl_take isl_dim *dim); __isl_give isl_qpolynomial *isl_qpolynomial_neginfty(__isl_take isl_dim *dim); __isl_give isl_qpolynomial *isl_qpolynomial_nan(__isl_take isl_dim *dim); diff --git a/isl_polynomial.c b/isl_polynomial.c index 2d52894..dc00f0f 100644 --- a/isl_polynomial.c +++ b/isl_polynomial.c @@ -240,6 +240,20 @@ __isl_give struct isl_upoly *isl_upoly_zero(struct isl_ctx *ctx) return &cst->up; } +__isl_give struct isl_upoly *isl_upoly_one(struct isl_ctx *ctx) +{ + struct isl_upoly_cst *cst; + + cst = isl_upoly_cst_alloc(ctx); + if (!cst) + return NULL; + + isl_int_set_si(cst->n, 1); + isl_int_set_si(cst->d, 1); + + return &cst->up; +} + __isl_give struct isl_upoly *isl_upoly_infty(struct isl_ctx *ctx) { struct isl_upoly_cst *cst; @@ -1378,6 +1392,11 @@ __isl_give isl_qpolynomial *isl_qpolynomial_zero(__isl_take isl_dim *dim) return isl_qpolynomial_alloc(dim, 0, isl_upoly_zero(dim->ctx)); } +__isl_give isl_qpolynomial *isl_qpolynomial_one(__isl_take isl_dim *dim) +{ + return isl_qpolynomial_alloc(dim, 0, isl_upoly_one(dim->ctx)); +} + __isl_give isl_qpolynomial *isl_qpolynomial_infty(__isl_take isl_dim *dim) { return isl_qpolynomial_alloc(dim, 0, isl_upoly_infty(dim->ctx));