while adding a suggestion to Intel OCL forums one think come into mind:
now with SPIR support coming and multiple IHVs offering support for inline propietary assembly in OpenCL stack seems OCL should need to be extended to expose multiple binary formats in platforms that support it..
Could be extended similar as OGL supports see ARB_get_program_binary
extend APIs providing thinks querying avaiable formats,selecting a binary format, or getting current binary format:
NUM_PROGRAM_BINARY_FORMATS 0x87FE PROGRAM_BINARY_FORMATS 0x87FF
and then each vendor can have
each one provides utility for a diferent reason:
*one would be SPIR for portable binaries
*another propietary binary for fastest building (i.e. pure device binaries)
*last one vendor text assembly format (for tweaking and using advanced ISA of each arch while functionality gets standarized in OCL) (NV:PTX AMD:AMDIL Intel:IGIL)
Hope we could be have that in OCL 2.0..