1 | /* |
2 | * Use of this software is governed by the MIT license |
3 | * |
4 | * Written by Sven Verdoolaege |
5 | */ |
6 | |
7 | #define xFN(TYPE,NAME) TYPE ## _ ## NAME |
8 | #define FN(TYPE,NAME) xFN(TYPE,NAME) |
9 | |
10 | /* Project out all parameters from "obj" by existentially quantifying |
11 | * over them. |
12 | */ |
13 | __isl_give TYPE *FN(TYPE,project_out_all_params)(__isl_take TYPE *obj) |
14 | { |
15 | isl_size n; |
16 | |
17 | n = FN(TYPE,dim)(map: obj, type: isl_dim_param); |
18 | if (n < 0) |
19 | return FN(TYPE,free)(map: obj); |
20 | return FN(TYPE,project_out)(map: obj, type: isl_dim_param, first: 0, n); |
21 | } |
22 | |