clover: Add CL_PROGRAM_BINARY_TYPE support (CL1.2).
authorSerge Martin <edb+mesa@sigluy.net>
Mon, 31 Oct 2016 00:21:15 +0000 (17:21 -0700)
committerSerge Martin <edb@sigluy.net>
Sun, 6 Nov 2016 14:56:54 +0000 (15:56 +0100)
commitcc495055cdfe7e39002180d095d09fe4b6905eb9
tree0ac1320ce58a9a14f5dcefae3e62c1dfa1b37196
parent05fcc73f087fa2b8c447ec8c79c7bdab57d49faf
clover: Add CL_PROGRAM_BINARY_TYPE support (CL1.2).

v3 [Francisco Jerez]: Loosely based on Serge's v1 of this patch in
   order to avoid CL-specific enums in the clover module binary
   format.  In addition to other changes made in v2: Represent the CL
   program binary type as the section type instead of adding a CL
   API-specific enum, check that the binary types of the input objects
   are valid during clLinkProgram(), pass section type as argument to
   build_module_library() instead of using separate function.

Reviewed-by: Francisco Jerez <currojerez@riseup.net>
src/gallium/state_trackers/clover/api/program.cpp
src/gallium/state_trackers/clover/core/kernel.cpp
src/gallium/state_trackers/clover/core/module.hpp
src/gallium/state_trackers/clover/core/program.cpp
src/gallium/state_trackers/clover/core/program.hpp
src/gallium/state_trackers/clover/llvm/codegen.hpp
src/gallium/state_trackers/clover/llvm/codegen/bitcode.cpp
src/gallium/state_trackers/clover/llvm/codegen/common.cpp
src/gallium/state_trackers/clover/llvm/invocation.cpp
src/gallium/state_trackers/clover/tgsi/compiler.cpp