cl12 Fix incoming errors overwritten by exit block (#249) (#454)

* Fix for Khronos https://github.com/KhronosGroup/OpenCL-CTS/issues/249 where incoming errors are overwritten by exit block

* Fix build: move declaration out of exit block
This commit is contained in:
Jim Lewis
2019-09-23 15:01:53 -05:00
committed by Kévin Petit
parent 6b54819efa
commit 9d3d5ca412

View File

@@ -384,6 +384,7 @@ static cl_int TestFloat( cl_uint job_id, cl_uint thread_id, void *data )
int ftz = job->ftz;
cl_uint j, k;
cl_int error = CL_SUCCESS;
cl_int ret = CL_SUCCESS;
const char *name = job->f->name;
int signbit_test = 0;
@@ -552,6 +553,7 @@ static cl_int TestFloat( cl_uint job_id, cl_uint thread_id, void *data )
}
exit:
ret = error;
for( j = gMinVectorSizeIndex; j < gMaxVectorSizeIndex; j++ )
{
if( (error = clEnqueueUnmapMemObject( tinfo->tQueue, tinfo->outBuf[j], out[j], 0, NULL, NULL)) )
@@ -562,7 +564,10 @@ exit:
}
if( (error = clFlush(tinfo->tQueue) ))
{
vlog( "clFlush 3 failed\n" );
return error;
}
if( 0 == ( base & 0x0fffffff) )
@@ -571,7 +576,7 @@ exit:
fflush(stdout);
}
return error;
return ret;
}
static cl_int TestDouble( cl_uint job_id, cl_uint thread_id, void *data );