Hello, This serie add the neccesary bits needed for clLinkProgram. Patches from 1 to 2 are llvm/invocation.cpp little reorganisation. Patches 3 to 5 rework our clCompileProgram implementation. Patch 6 is for returning clover smart ptr to the API side. Patch 7 finaly add clLinkProgram.
Patches from 1 to 6 are all neccesary to patch 7, but they can be commited apart from clLinKProgram addition as there are clean up and bug fixes in the current tree. Please note that patch 7 only compile with llvm/clang 3.5 for the moment. I was making it ready for 3.4 but it add lots of #ifdef and I found out that master didn't even compile it for the moment. This is because 3.5 enfore c++11 flags and that std::ofstream file(std:::string, ) is a c++11 addition. Easy to fix but it went unnoticided until now. I can come up with a 3.4 friendly v2 latter, but would appreciate your comments on this version. As I said 1 to 6 can be pushed before 7 as clean up and fixes. And I also want to be sure 7 is the right way to go. Regards EdB EdB (7): clover: move CLOVER_DEBUG stuff into anonymous ns clover: Dump the OpenCL C code earlier clover: split module::section::text clover: clCreateKernel now checks for executable clover: seperate build and compile clover: override ret_object clover: add clLinkProgram src/gallium/state_trackers/clover/api/dispatch.cpp | 2 +- src/gallium/state_trackers/clover/api/kernel.cpp | 3 + src/gallium/state_trackers/clover/api/program.cpp | 33 ++- src/gallium/state_trackers/clover/api/util.hpp | 11 + .../state_trackers/clover/core/compiler.hpp | 18 +- src/gallium/state_trackers/clover/core/error.hpp | 7 + src/gallium/state_trackers/clover/core/kernel.cpp | 2 +- src/gallium/state_trackers/clover/core/module.hpp | 6 +- src/gallium/state_trackers/clover/core/program.cpp | 115 ++++++++- src/gallium/state_trackers/clover/core/program.hpp | 10 +- .../state_trackers/clover/llvm/invocation.cpp | 277 ++++++++++++++++++--- .../state_trackers/clover/tgsi/compiler.cpp | 5 +- 12 files changed, 427 insertions(+), 62 deletions(-) -- 2.2.0 _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/mesa-dev