1/*
2 * Copyright 2018 Sven Verdoolaege
3 *
4 * Use of this software is governed by the MIT license
5 *
6 * Written by Sven Verdoolaege.
7 */
8
9#define xFN(TYPE,NAME) TYPE ## _ ## NAME
10#define FN(TYPE,NAME) xFN(TYPE,NAME)
11
12/* Return the minimum of the integer piecewise affine
13 * expression "f" over its definition domain.
14 *
15 * Return negative infinity if the optimal value is unbounded and
16 * NaN if the domain of the expression is empty.
17 */
18__isl_give isl_val *FN(TYPE,min_val)(__isl_take TYPE *f)
19{
20 return FN(TYPE,opt_val)(pa: f, max: 0);
21}
22
23/* Return the maximum of the integer piecewise affine
24 * expression "f" over its definition domain.
25 *
26 * Return infinity if the optimal value is unbounded and
27 * NaN if the domain of the expression is empty.
28 */
29__isl_give isl_val *FN(TYPE,max_val)(__isl_take TYPE *f)
30{
31 return FN(TYPE,opt_val)(pa: f, max: 1);
32}
33

source code of polly/lib/External/isl/isl_ilp_opt_fn_val_templ.c