summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--include/isl_div.h1
-rw-r--r--isl_div.c9
2 files changed, 10 insertions, 0 deletions
diff --git a/include/isl_div.h b/include/isl_div.h
index 8d21510a..f9b590f1 100644
--- a/include/isl_div.h
+++ b/include/isl_div.h
@@ -29,6 +29,7 @@ typedef struct isl_div isl_div;
struct isl_div *isl_div_alloc(struct isl_dim *dim);
struct isl_div *isl_basic_map_div(struct isl_basic_map *bmap, int pos);
struct isl_div *isl_basic_set_div(struct isl_basic_set *bset, int pos);
+__isl_give isl_div *isl_div_copy(__isl_keep isl_div *div);
void isl_div_free(struct isl_div *c);
void isl_div_get_constant(__isl_keep isl_div *div, isl_int *v);
diff --git a/isl_div.c b/isl_div.c
index 5c402dbd..3db5ad2b 100644
--- a/isl_div.c
+++ b/isl_div.c
@@ -88,6 +88,15 @@ struct isl_div *isl_div_alloc(struct isl_dim *dim)
return isl_basic_map_div(bmap, 0);
}
+__isl_give isl_div *isl_div_copy(__isl_keep isl_div *div)
+{
+ if (!div)
+ return NULL;
+
+ div->ref++;
+ return div;
+}
+
void isl_div_free(struct isl_div *c)
{
if (!c)