From: Yang Rong Date: Mon, 28 Oct 2013 06:02:18 +0000 (+0800) Subject: Per openCL spec, set p->is_built to 1 when build fail. X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=4f79ad520a09b35e36181bf9a186f9ef3a88fbf8;p=contrib%2Fbeignet.git Per openCL spec, set p->is_built to 1 when build fail. Also correct the err code when build fail. Signed-off-by: Yang Rong Reviewed-by: Zhigang Gong Reviewed-by: "Song, Ruiling" --- diff --git a/src/cl_api.c b/src/cl_api.c index 0e562ed..f668ec6 100644 --- a/src/cl_api.c +++ b/src/cl_api.c @@ -961,7 +961,7 @@ clCreateKernel(cl_program program, cl_int err = CL_SUCCESS; CHECK_PROGRAM (program); - if (program->is_built == CL_FALSE) { + if (program->ker_n <= 0) { err = CL_INVALID_PROGRAM_EXECUTABLE; goto error; } @@ -983,7 +983,7 @@ clCreateKernelsInProgram(cl_program program, cl_int err = CL_SUCCESS; CHECK_PROGRAM (program); - if (program->is_built == CL_FALSE) { + if (program->ker_n <= 0) { err = CL_INVALID_PROGRAM_EXECUTABLE; goto error; } diff --git a/src/cl_program.c b/src/cl_program.c index ad6e098..e7d67de 100644 --- a/src/cl_program.c +++ b/src/cl_program.c @@ -326,7 +326,7 @@ cl_program_build(cl_program p, const char *options) if (p->source_type == FROM_SOURCE) { p->opaque = gbe_program_new_from_source(p->source, 0, options, NULL, NULL); if (UNLIKELY(p->opaque == NULL)) { - err = CL_INVALID_PROGRAM; + err = CL_BUILD_PROGRAM_FAILURE; goto error; } @@ -336,7 +336,7 @@ cl_program_build(cl_program p, const char *options) } else if (p->source_type == FROM_BINARY) { p->opaque = gbe_program_new_from_binary(p->binary, p->binary_sz); if (UNLIKELY(p->opaque == NULL)) { - err = CL_INVALID_PROGRAM; + err = CL_BUILD_PROGRAM_FAILURE; goto error; } @@ -359,8 +359,8 @@ cl_program_build(cl_program p, const char *options) copyed += sz; } - p->is_built = 1; error: + p->is_built = 1; return err; }