export isl_set_unwrap
[isl.git] / isl_multi_nan_templ.c
blob6457e91bc3b581f4938663b715416e2a0eda4fcc
1 /*
2 * Copyright 2014 Ecole Normale Superieure
4 * Use of this software is governed by the MIT license
6 * Written by Sven Verdoolaege,
7 * Ecole Normale Superieure, 45 rue d'Ulm, 75230 Paris, France
8 */
10 #include <isl_multi_macro.h>
12 /* Does "multi" involve any NaNs?
14 isl_bool FN(MULTI(BASE),involves_nan)(__isl_keep MULTI(BASE) *multi)
16 int i;
18 if (!multi)
19 return isl_bool_error;
20 if (multi->n == 0)
21 return isl_bool_false;
23 for (i = 0; i < multi->n; ++i) {
24 isl_bool has_nan = FN(EL,involves_nan)(multi->u.p[i]);
25 if (has_nan < 0 || has_nan)
26 return has_nan;
29 return isl_bool_false;