From 76029df919e960513c30794a14906d1754e2ec01 Mon Sep 17 00:00:00 2001 From: Sven Verdoolaege Date: Wed, 4 Feb 2009 15:47:14 +0100 Subject: [PATCH] add functions for setting isl_divs --- include/isl_div.h | 4 ++++ isl_div.c | 24 ++++++++++++++++++++++++ 2 files changed, 28 insertions(+) diff --git a/include/isl_div.h b/include/isl_div.h index 98d5762..7d699d7 100644 --- a/include/isl_div.h +++ b/include/isl_div.h @@ -23,6 +23,10 @@ void isl_div_get_constant(struct isl_div *div, isl_int *v); void isl_div_get_denominator(struct isl_div *div, isl_int *v); void isl_div_get_coefficient(struct isl_div *div, enum isl_dim_type type, int pos, isl_int *v); +void isl_div_set_constant(struct isl_div *div, isl_int v); +void isl_div_set_denominator(struct isl_div *div, isl_int v); +void isl_div_set_coefficient(struct isl_div *div, + enum isl_dim_type type, int pos, isl_int v); #if defined(__cplusplus) } diff --git a/isl_div.c b/isl_div.c index 141bec9..a15cda8 100644 --- a/isl_div.c +++ b/isl_div.c @@ -99,3 +99,27 @@ void isl_div_get_coefficient(struct isl_div *div, isl_assert(div->ctx, pos < n(div, type), return); isl_int_set(*v, div->line[0][offset(div, type) + pos]); } + +void isl_div_set_constant(struct isl_div *div, isl_int v) +{ + if (!div) + return; + isl_int_set(div->line[0][1], v); +} + +void isl_div_set_denominator(struct isl_div *div, isl_int v) +{ + if (!div) + return; + isl_int_set(div->line[0][0], v); +} + +void isl_div_set_coefficient(struct isl_div *div, + enum isl_dim_type type, int pos, isl_int v) +{ + if (!div) + return; + + isl_assert(div->ctx, pos < n(div, type), return); + isl_int_set(div->line[0][offset(div, type) + pos], v); +} -- 2.7.4