I'm trying to wrap my head around all of this and all I read is only getting me more and more confused. Comprehensive information about OpenCl and compilation of its code is rather endangered species( common for new relatively new technology I guess).

Is there any way of compiling OpenCl code with the use of llvm+clang? After all it is used by Apple/Nvidia/RapidMind for their implementations of OpenCL.
Do I really need driver for OpenCL provided by Nvidia to make use of OpenCL?
Second question comes from actual hardware I right now poses. It's 7 series which is not obviously "CUDA-enabled" thus not supported by OpenCL driver from Nvidia.

Thank is advance for shedding any light on those questions

On another note. This is rather different story, but comes to my mind. Ignore it if it there's too weak connection with questions above.
According to GPU Gems, series of n40 GPUs are actually programmable in GPGPU context ( via HSLS AFAIR right). How does this comply in the light of OpenCL?