Hello,<br><br>Thanks for taking on the libclc project, it is nice to start seeing more open<br>source OpenCL pieces appear.  I would be interested in contributing.<br>Forgive me, I haven't followed all of the discussions to this point.<br>
<br>I have a couple of questions (based on what I see available now/project description) on how you would see libclc used by other OpenCL components.<br><br>In the OpenCL runtime (not part of your project, but a project which would be<br>
the consumer of your project), when someone calls clCreateKernel, what artifacts from libclc would they be using?  Meaning, inlined headers?  Already compiled .bc files for that platform to link against?  A shared/static lib for that platform to load/link into the runtime? Something else?<br>
<br>I've thought a bit/dabbled in writing something similar to libclc, and my approach was compiling a (platform specific) .bc file which was loaded by<br>the runtime to link kernels against, and then the linked kernels were JIT-ed by the runtime.  In some sense, this is close to what Clover does, except the builtins are loaded/linked to the kernels at run time, rather than linked into the runtime and made available through symbol look-up.  (One thing that I'm not sure Denis has done is symbol lookup for the overloaded functions...which involves looking up the name-mangled symbol, IIUC).<br>
<br>I'm interested in the approach you plan taking, and pitching in!<br><br>Pete<br><br>