add isl_space_is_map
authorSven Verdoolaege <skimo@kotnet.org>
Tue, 7 Aug 2012 13:45:43 +0000 (15:45 +0200)
committerSven Verdoolaege <skimo@kotnet.org>
Tue, 7 Aug 2012 13:46:02 +0000 (15:46 +0200)
Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
doc/user.pod
include/isl/space.h
isl_space.c

index 6e359a9..c2bfe06 100644 (file)
@@ -614,6 +614,7 @@ or whether it is a parameter space, use these functions:
        #include <isl/space.h>
        int isl_space_is_params(__isl_keep isl_space *space);
        int isl_space_is_set(__isl_keep isl_space *space);
+       int isl_space_is_map(__isl_keep isl_space *space);
 
 It is often useful to create objects that live in the
 same space as some other object.  This can be accomplished
index 45aee97..e786442 100644 (file)
@@ -42,6 +42,7 @@ void isl_space_free(__isl_take isl_space *dim);
 
 int isl_space_is_params(__isl_keep isl_space *space);
 int isl_space_is_set(__isl_keep isl_space *space);
+int isl_space_is_map(__isl_keep isl_space *space);
 
 __isl_give isl_space *isl_space_set_tuple_name(__isl_take isl_space *dim,
        enum isl_dim_type type, const char *s);
index ac4cd41..539be86 100644 (file)
@@ -73,6 +73,16 @@ int isl_space_is_set(__isl_keep isl_space *space)
        return 1;
 }
 
+/* Is the given space that of a map?
+ */
+int isl_space_is_map(__isl_keep isl_space *space)
+{
+       if (!space)
+               return -1;
+       return space->tuple_id[0] != &isl_id_none &&
+               space->tuple_id[1] != &isl_id_none;
+}
+
 __isl_give isl_space *isl_space_set_alloc(isl_ctx *ctx,
                        unsigned nparam, unsigned dim)
 {