> -----Original Message-----
> From: Beignet [mailto:beignet-boun...@lists.freedesktop.org] On Behalf Of
> rander
> Sent: Monday, March 27, 2017 5:40 PM
> To: beig...@freedesktop.org
> Cc: Wang, Rander <rander.w...@intel.com>
> Subject: [Beignet] [PATCH] backend: add double support to fmax
> 
> Signed-off-by: rander <rander.w...@intel.com>
> ---
>  backend/src/libocl/tmpl/ocl_math.tmpl.cl    | 15 +++++++++++++++
>  backend/src/libocl/tmpl/ocl_math.tmpl.h     |  2 ++
>  backend/src/libocl/tmpl/ocl_math_20.tmpl.cl | 11 +++++++++++
>  backend/src/libocl/tmpl/ocl_math_20.tmpl.h  |  2 ++
>  4 files changed, 30 insertions(+)
> 
> diff --git a/backend/src/libocl/tmpl/ocl_math.tmpl.cl
> b/backend/src/libocl/tmpl/ocl_math.tmpl.cl
> index d526d6c..6978c92 100644
> --- a/backend/src/libocl/tmpl/ocl_math.tmpl.cl
> +++ b/backend/src/libocl/tmpl/ocl_math.tmpl.cl
> @@ -4333,3 +4333,18 @@ OVERLOADABLE double mad(double a, double b,
> double c)
>       return __gen_ocl_mad(a, b, c);
>  }
> 
> +OVERLOADABLE double fmax(double a, double b)
> +{
> +     ulong ua = as_ulong(a);
> +     ulong ub =as_ulong(b);
> +
> +     if((ua & DF_ABS_MASK) > DF_MAX_NORMAL) return b;
> +     if((ub & DF_ABS_MASK) > DF_MAX_NORMAL) return a;
> +     if(ua == DF_POSITIVE_INF) return a;
> +     if(ub == DF_POSITIVE_INF) return b;
> +
Hardware cmp on double not conform to IEEE754?

> +     double c = a - b;
> +     return (c >= 0) ? a:b;
> +}
> +

_______________________________________________
Beignet mailing list
Beignet@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/beignet

Reply via email to