Module: Mesa Branch: master Commit: 1d21bd057a6b1701dd44a79e82259c0f3ded2b70 URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=1d21bd057a6b1701dd44a79e82259c0f3ded2b70
Author: Tom Stellard <[email protected]> Date: Thu Jun 28 20:05:21 2012 +0000 clover: Handle NULL devs argument in clBuildProgram If devs is NULL, then the kernel should be compiled for all devices associated with the program. --- src/gallium/state_trackers/clover/api/program.cpp | 15 ++++++++++----- 1 files changed, 10 insertions(+), 5 deletions(-) diff --git a/src/gallium/state_trackers/clover/api/program.cpp b/src/gallium/state_trackers/clover/api/program.cpp index e874c51..b167904 100644 --- a/src/gallium/state_trackers/clover/api/program.cpp +++ b/src/gallium/state_trackers/clover/api/program.cpp @@ -142,12 +142,17 @@ clBuildProgram(cl_program prog, cl_uint count, const cl_device_id *devs, (!pfn_notify && user_data)) throw error(CL_INVALID_VALUE); - if (any_of([&](const cl_device_id dev) { - return !prog->ctx.has_device(dev); - }, devs, devs + count)) - throw error(CL_INVALID_DEVICE); + if (devs) { + if (any_of([&](const cl_device_id dev) { + return !prog->ctx.has_device(dev); + }, devs, devs + count)) + throw error(CL_INVALID_DEVICE); + + prog->build({ devs, devs + count }); + } else { + prog->build(prog->ctx.devs); + } - prog->build({ devs, devs + count }); return CL_SUCCESS; } catch (error &e) { _______________________________________________ mesa-commit mailing list [email protected] http://lists.freedesktop.org/mailman/listinfo/mesa-commit
