Signed-off-by: rander <rander.w...@intel.com> --- backend/src/libocl/tmpl/ocl_math.tmpl.cl | 8 ++++++++ backend/src/libocl/tmpl/ocl_math.tmpl.h | 1 + backend/src/libocl/tmpl/ocl_math_20.tmpl.cl | 7 +++++++ backend/src/libocl/tmpl/ocl_math_20.tmpl.h | 2 ++ 4 files changed, 18 insertions(+)
diff --git a/backend/src/libocl/tmpl/ocl_math.tmpl.cl b/backend/src/libocl/tmpl/ocl_math.tmpl.cl index 9cded64..83af1c6 100644 --- a/backend/src/libocl/tmpl/ocl_math.tmpl.cl +++ b/backend/src/libocl/tmpl/ocl_math.tmpl.cl @@ -21,6 +21,7 @@ #include "ocl_common.h" #include "ocl_integer.h" #include "ocl_convert.h" +#include "ocl_printf.h" extern constant int __ocl_math_fastpath_flag; @@ -3923,3 +3924,10 @@ OVERLOADABLE double ceil(double x) return ret; } +OVERLOADABLE double fabs(double x) +{ + long qw = as_ulong(x); + qw &= 0x7FFFFFFFFFFFFFFF; + return as_double(qw); +} + diff --git a/backend/src/libocl/tmpl/ocl_math.tmpl.h b/backend/src/libocl/tmpl/ocl_math.tmpl.h index fb126ed..dab45ae 100644 --- a/backend/src/libocl/tmpl/ocl_math.tmpl.h +++ b/backend/src/libocl/tmpl/ocl_math.tmpl.h @@ -234,4 +234,5 @@ OVERLOADABLE float half_tan(float x); //------- double ----------- OVERLOADABLE double ceil(double x); +OVERLOADABLE double fabs(double x); diff --git a/backend/src/libocl/tmpl/ocl_math_20.tmpl.cl b/backend/src/libocl/tmpl/ocl_math_20.tmpl.cl index 25ef835..83c889a 100644 --- a/backend/src/libocl/tmpl/ocl_math_20.tmpl.cl +++ b/backend/src/libocl/tmpl/ocl_math_20.tmpl.cl @@ -3825,3 +3825,10 @@ OVERLOADABLE double ceil(double x) return ret; } +OVERLOADABLE double fabs(double x) +{ + long qw = as_ulong(x); + qw &= 0x7FFFFFFFFFFFFFFF; + return as_double(qw); +} + diff --git a/backend/src/libocl/tmpl/ocl_math_20.tmpl.h b/backend/src/libocl/tmpl/ocl_math_20.tmpl.h index 3b10595..76778dd 100644 --- a/backend/src/libocl/tmpl/ocl_math_20.tmpl.h +++ b/backend/src/libocl/tmpl/ocl_math_20.tmpl.h @@ -211,4 +211,6 @@ OVERLOADABLE float half_tan(float x); //------- double ----------- OVERLOADABLE double ceil(double x); +OVERLOADABLE double fabs(double x); + -- 2.7.4 _______________________________________________ Beignet mailing list Beignet@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/beignet