diff --git a/test_conformance/math_brute_force/macro_unary.c b/test_conformance/math_brute_force/macro_unary.c index e71b54a8..2b101c95 100644 --- a/test_conformance/math_brute_force/macro_unary.c +++ b/test_conformance/math_brute_force/macro_unary.c @@ -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 );