1 | #define xFN(TYPE,NAME) TYPE ## _ ## NAME |
2 | #define FN(TYPE,NAME) xFN(TYPE,NAME) |
3 | |
4 | /* Does the range space of "obj" match the space of "mv" (ignoring parameters)? |
5 | */ |
6 | static isl_bool FN(TYPE,match_range_multi_val)(__isl_keep TYPE *obj, |
7 | __isl_keep isl_multi_val *mv) |
8 | { |
9 | isl_space *space, *mv_space; |
10 | |
11 | space = FN(TYPE,peek_space)(multi: obj); |
12 | mv_space = isl_multi_val_peek_space(multi: mv); |
13 | return isl_space_tuple_is_equal(space1: space, type1: isl_dim_out, |
14 | space2: mv_space, type2: isl_dim_set); |
15 | } |
16 | |
17 | /* Check that the range space of "obj" matches the space of "mv" |
18 | * (ignoring parameters). |
19 | */ |
20 | static isl_stat FN(TYPE,check_match_range_multi_val)(__isl_keep TYPE *obj, |
21 | __isl_keep isl_multi_val *mv) |
22 | { |
23 | isl_bool equal; |
24 | |
25 | equal = FN(TYPE,match_range_multi_val)(obj, mv); |
26 | if (equal < 0) |
27 | return isl_stat_error; |
28 | if (!equal) |
29 | isl_die(isl_multi_val_get_ctx(mv), isl_error_invalid, |
30 | "spaces don't match" , return isl_stat_error); |
31 | return isl_stat_ok; |
32 | } |
33 | |