Fix math tests to allow ftz in relaxed mode. (#1371)

* Fix math tests to allow ftz in relaxed mode.

In recent spec clarification, it is agreed that ftz is
a valid optimization in case of cl-fast-math-relaxed
and doesn't require cl-denorms-are-zero to be passed
explicitly to enforce ftz behavior for implementations
that already support this.

GitHub Spec Issue OpenCL-Docs#579
GitHub Spec Issue OpenCL-Docs#597
GitHub CTS Issue OpenCL-CTS#1267
This commit is contained in:
Nikhil Joshi
2022-07-05 22:28:18 +05:30
committed by GitHub
parent e3e1786761
commit 8d9d1f3e9d
24 changed files with 60 additions and 33 deletions

View File

@@ -172,6 +172,7 @@ cl_int Test(cl_uint job_id, cl_uint thread_id, void *data)
dptr func = job->f->dfunc;
cl_int error;
int ftz = job->ftz;
bool relaxedMode = job->relaxedMode;
Force64BitFPUPrecision();
@@ -305,7 +306,7 @@ cl_int Test(cl_uint job_id, cl_uint thread_id, void *data)
if (fail)
{
if (ftz)
if (ftz || relaxedMode)
{
// retry per section 6.5.3.2
if (IsDoubleResultSubnormal(correct, ulps))