[Beignet] [PATCH] Utest: fix a builtin_powr_float fail when OCL_STRICT_CONFORMANCE=0.
Song, Ruiling
ruiling.song at intel.com
Wed Jul 29 19:21:12 PDT 2015
LG
> -----Original Message-----
> From: Beignet [mailto:beignet-bounces at lists.freedesktop.org] On Behalf Of
> Yang Rong
> Sent: Wednesday, July 29, 2015 2:03 PM
> To: beignet at lists.freedesktop.org
> Cc: Yang, Rong R
> Subject: [Beignet] [PATCH] Utest: fix a builtin_powr_float fail when
> OCL_STRICT_CONFORMANCE=0.
>
> Need ingore isnan and isinf when OCL_STRICT_CONFORMANCE=0.
>
> Signed-off-by: Yang Rong <rong.r.yang at intel.com>
> ---
> utests/utest_generator.py | 15 ++++++++-------
> 1 file changed, 8 insertions(+), 7 deletions(-)
>
> diff --git a/utests/utest_generator.py b/utests/utest_generator.py index
> c220575..91cc938 100644
> --- a/utests/utest_generator.py
> +++ b/utests/utest_generator.py
> @@ -110,7 +110,8 @@ def udebug(ulpSize,returnType,function):
>
> float ULPSIZE_NO_FAST_MATH = %s;
> ULPSIZE_FACTOR =
> select_ulpsize(ULPSIZE_FAST_MATH,ULPSIZE_NO_FAST_MATH);
> -
> + bool fast_math = ULPSIZE_FACTOR == ULPSIZE_FAST_MATH;
> +
> if (isinf(cpu_data[index])){
> INFORNAN="INF";
> }
> @@ -137,25 +138,25 @@ def udebug(ulpSize,returnType,function):
> }
> else if ((ULPSIZE >= 0 && diff <= ULPSIZE) || (ULPSIZE < 0 && diff == 0)){
> printf("%s expect:%s\\n", log, ULPSIZE);
> - }
> + }
> else
> printf_c("%s expect:%s\\n", log, ULPSIZE); #else
> if (isinf(cpu_data[index])){
> sprintf(log, "%s expect:%s\\n", log, INFORNAN);
> - OCL_ASSERTM(isinf(gpu_data[index]),log);
> - }
> + OCL_ASSERTM(isinf(gpu_data[index]) || fast_math,log);
> + }
> else if (isnan(cpu_data[index])){
> sprintf(log, "%s expect:%s\\n", log, INFORNAN);
> - OCL_ASSERTM(isnan(gpu_data[index]),log);
> - }
> + OCL_ASSERTM(isnan(gpu_data[index]) || fast_math,log);
> + }
> else{
> sprintf(log, "%s expect:%s\\n", log, ULPSIZE);
> if (ULPSIZE < 0)
> OCL_ASSERTM(gpu_data[index] == cpu_data[index], log);
> else
> OCL_ASSERTM(fabs(gpu_data[index]-cpu_data[index]) <= ULPSIZE, log);
> - }
> + }
> #endif
> }
> }\n'''%(returnType,Min_ulp(function),\
> --
> 1.9.1
>
> _______________________________________________
> Beignet mailing list
> Beignet at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/beignet
More information about the Beignet
mailing list