Is there any way of bypassing the C frontend of the OpenCL compiler and compiling directly from LLVM IR? This would give us a practical means of writing our own compilers...
Nvidia offers this capability through their NVVM compiler SDK as of the CUDA 5.0 preview, and it obviously works on CPUs, so AMD GPUs would be the odd one out.
Create an OpenCL binary and place the IR in the .llvmir section and then pass that binary to OpenCL. While not officially supported, it should work without issue.