<div class="gmail_quote">On Tue, Dec 6, 2011 at 10:17 PM, ³¯­³¥ô <span dir="ltr"><<a href="mailto:chenwj@iis.sinica.edu.tw">chenwj@iis.sinica.edu.tw</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">
Hi Justin,<br>
<br>
  I download llvm-ptx-samples [1] and try to build them. I found it seems lack<br>
of a complete document on how to build them with LLVM/Clang/libclc. Do you think<br>
it's a good idea to put a complete document/tutorial in _one_ place? Currently,<br>
there are your website [2], LLVM [3], Clang and libclc websites [5] over there.<br>
I feel people might get lost among those websites. ;-)<br></blockquote><div><br></div><div>I agree.  I'm just not sure how these projects fit in with LLVM as a whole.  LLVM does not really have a "samples" project, and these are very specific in their use-case.</div>
<div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">
<br>
  Here are my flows, hope it's useful to you. (At least [1] should be updated to<br>
include libclc)<br>
<br>
1. Build LLVM/Clang with PTX support.<br>
<br>
2. Download your PTX samples and libclc, then build them. I guess you want to<br>
   pull libclc under llvm-ptx-samples/libclc/, right?<br>
<br>
---<br>
$ git clone git://<a href="http://github.com/jholewinski/llvm-ptx-samples.git" target="_blank">github.com/jholewinski/llvm-ptx-samples.git</a><br>
$ cd llvm-ptx-samples; rm -rf libclc/<br>
$ git clone git://<a href="http://git.pcc.me.uk/~peter/libclc.git" target="_blank">git.pcc.me.uk/~peter/libclc.git</a><br>
# Build libclc first<br>
$ cd libclc/<br>
$ ./configure.py --with-llvm-config=/path/to/llvm-config && make<br>
# Then build your PTX samples<br>
$ cd ../; make build; cd build<br>
$ cmake ../<br>
$ make<br>
---<br>
<br></blockquote><div><br></div><div>libclc is a submodule of the llvm-ptx-samples repo.  Therefore, the flow is simple:</div><div><br></div><div>$ git clone git://<a href="http://github.com/jholewinski/llvm-ptx-samples">github.com/jholewinski/llvm-ptx-samples</a></div>
<div>$ cd llvm-ptx-samples</div><div>$ git submodule init</div><div>$ git submodule update</div><div><br></div><div>I'll update the documentation to reflect this.</div><div><br></div><div>Also, the libclc configuration is not necessary.  Only some header files are pulled in by the samples.</div>
<div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">
  O.K., I have a problem here.<br>
<br>
[ 12%] Compiling <a href="http://blur2d_kernel.cl" target="_blank">blur2d_kernel.cl</a> -> blur2d_kernel.ll<br>
clang: error: no such file or directory: 'ptx32'<br>
make[2]: *** [bin/blur2d_kernel.ll] Error 1<br>
make[1]: *** [opencl/blur2d/CMakeFiles/blur2d_kernel.ptx.dir/all] Error 2<br>
<br>
  Do you know how to fix it? Thanks.<br></blockquote><div><br></div><div>That's a new one.  I just tried a fresh clone and build, and did not experience this issue.</div><div><br></div><div>Can you run "make VERBOSE=1" and post the compiler command-line?</div>
<div><br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">
<br>
[1] <a href="https://github.com/jholewinski/llvm-ptx-samples" target="_blank">https://github.com/jholewinski/llvm-ptx-samples</a><br>
[2] <a href="http://sites.google.com/site/justinholewinski/projects/llvm-ptx-back-end" target="_blank">http://sites.google.com/site/justinholewinski/projects/llvm-ptx-back-end</a><br>
[3] <a href="http://llvm.org/docs/ReleaseNotes.html#whatsnew" target="_blank">http://llvm.org/docs/ReleaseNotes.html#whatsnew</a><br>
[4] <a href="http://clang.llvm.org/docs/ReleaseNotes.html#opencl" target="_blank">http://clang.llvm.org/docs/ReleaseNotes.html#opencl</a><br>
[5] <a href="http://www.pcc.me.uk/~peter/libclc/" target="_blank">http://www.pcc.me.uk/~peter/libclc/</a><br>
<br>
Regards,<br>
chenwj<br>
<span class="HOEnZb"><font color="#888888"><br>
--<br>
Wei-Ren Chen (³¯­³¥ô)<br>
Computer Systems Lab, Institute of Information Science,<br>
Academia Sinica, Taiwan (R.O.C.)<br>
Tel:886-2-2788-3799 #1667<br>
Homepage: <a href="http://people.cs.nctu.edu.tw/~chenwj" target="_blank">http://people.cs.nctu.edu.tw/~chenwj</a><br>
</font></span></blockquote></div><br><br clear="all"><div><br></div>-- <br><br><div>Thanks,</div><div><br></div><div>Justin Holewinski</div><br>