diff options
Diffstat (limited to 'polly/lib/External/isl/isl_pw_eval.c')
-rw-r--r-- | polly/lib/External/isl/isl_pw_eval.c | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/polly/lib/External/isl/isl_pw_eval.c b/polly/lib/External/isl/isl_pw_eval.c index f59b78726a81..40396b602ada 100644 --- a/polly/lib/External/isl/isl_pw_eval.c +++ b/polly/lib/External/isl/isl_pw_eval.c @@ -16,6 +16,16 @@ #include <isl_pw_macro.h> +#undef SUFFIX +#define SUFFIX point +#undef ARG1 +#define ARG1 PW +#undef ARG2 +#define ARG2 isl_point + +static +#include "isl_align_params_templ.c" + /* Evaluate "pw" in the void point "pnt". * In particular, return the value NaN. */ @@ -34,6 +44,9 @@ static __isl_give isl_val *FN(PW,eval_void)(__isl_take PW *pw, * If the point is void, then return NaN. * If the point lies outside the domain of "pw", then return 0 or NaN * depending on whether 0 is the default value for this type of function. + * + * Align the parameters if needed, but "pnt" should specify a value + * for all parameters in "pw". */ __isl_give isl_val *FN(PW,eval)(__isl_take PW *pw, __isl_take isl_point *pnt) { @@ -45,6 +58,8 @@ __isl_give isl_val *FN(PW,eval)(__isl_take PW *pw, __isl_take isl_point *pnt) isl_space *pnt_space, *pw_space; isl_val *v; + FN(PW,align_params_point)(&pw, &pnt); + pnt_space = isl_point_peek_space(pnt); pw_space = FN(PW,peek_space)(pw); ok = isl_space_is_domain_internal(pnt_space, pw_space); |